summaryrefslogtreecommitdiffstats
path: root/drivers/i2o
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2000-11-28 03:58:46 +0000
committerRalf Baechle <ralf@linux-mips.org>2000-11-28 03:58:46 +0000
commitb63ad0882a16a5d28003e57f2b0b81dee3fb322b (patch)
tree0a343ce219e2b8b38a5d702d66032c57b83d9720 /drivers/i2o
parenta9d7bff9a84dba79609a0002e5321b74c4d64c64 (diff)
Merge with 2.4.0-test11.
Diffstat (limited to 'drivers/i2o')
-rw-r--r--drivers/i2o/i2o_block.c2
-rw-r--r--drivers/i2o/i2o_core.c2
-rw-r--r--drivers/i2o/i2o_proc.c6
3 files changed, 4 insertions, 6 deletions
diff --git a/drivers/i2o/i2o_block.c b/drivers/i2o/i2o_block.c
index 76ddf7c38..8389039d6 100644
--- a/drivers/i2o/i2o_block.c
+++ b/drivers/i2o/i2o_block.c
@@ -584,7 +584,6 @@ static int i2ob_evt(void *dummy)
int i;
lock_kernel();
- exit_files(current);
daemonize();
unlock_kernel();
@@ -593,6 +592,7 @@ static int i2ob_evt(void *dummy)
while(1)
{
+#warning "RACE"
interruptible_sleep_on(&i2ob_evt_wait);
if(signal_pending(current)) {
evt_running = 0;
diff --git a/drivers/i2o/i2o_core.c b/drivers/i2o/i2o_core.c
index 87871fa15..e9942c614 100644
--- a/drivers/i2o/i2o_core.c
+++ b/drivers/i2o/i2o_core.c
@@ -842,7 +842,6 @@ static int i2o_core_evt(void *reply_data)
int flags;
lock_kernel();
- exit_files(current);
daemonize();
unlock_kernel();
@@ -1005,7 +1004,6 @@ static int i2o_dyn_lct(void *foo)
char name[16];
lock_kernel();
- exit_files(current);
daemonize();
unlock_kernel();
diff --git a/drivers/i2o/i2o_proc.c b/drivers/i2o/i2o_proc.c
index 4c92ff09d..dc70e7322 100644
--- a/drivers/i2o/i2o_proc.c
+++ b/drivers/i2o/i2o_proc.c
@@ -3237,7 +3237,7 @@ static void i2o_proc_remove_controller(struct i2o_controller *pctrl,
for(dev=pctrl->devices; dev; dev=dev->next)
i2o_proc_remove_device(dev);
- if(!pctrl->proc_entry->count)
+ if(!atomic_read(&pctrl->proc_entry->count))
{
sprintf(buff, "iop%d", pctrl->unit);
@@ -3257,7 +3257,7 @@ void i2o_proc_remove_device(struct i2o_device *dev)
i2o_device_notify_off(dev, &i2o_proc_handler);
/* Would it be safe to remove _files_ even if they are in use? */
- if((de) && (!de->count))
+ if((de) && (!atomic_read(&de->count)))
{
i2o_proc_remove_entries(generic_dev_entries, de);
switch(dev->lct_data.class_id)
@@ -3334,7 +3334,7 @@ static int __exit destroy_i2o_procfs(void)
}
}
- if(!i2o_proc_dir_root->count)
+ if(!atomic_read(&i2o_proc_dir_root->count))
remove_proc_entry("i2o", 0);
else
return -1;