diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2000-07-15 03:32:22 +0000 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2000-07-15 03:32:22 +0000 |
commit | f1da2c3860e301527d56a1ef0b56c649ee7c4b1b (patch) | |
tree | 562b5d2e8b9cb62eb983d78ff6bcf9789e08fcf6 /drivers/macintosh | |
parent | 00f11569ac8ca73cbcdef8822de1583e79aee571 (diff) |
Merge with Linux 2.4.0-test5-pre1. This works again on Origin UP.
The IP22 cache bugs which are plaguing some machines are still unfixed.
Diffstat (limited to 'drivers/macintosh')
-rw-r--r-- | drivers/macintosh/adb.c | 3 | ||||
-rw-r--r-- | drivers/macintosh/via-pmu.c | 3 |
2 files changed, 6 insertions, 0 deletions
diff --git a/drivers/macintosh/adb.c b/drivers/macintosh/adb.c index ff6f18ee1..10421b00d 100644 --- a/drivers/macintosh/adb.c +++ b/drivers/macintosh/adb.c @@ -25,6 +25,7 @@ #include <linux/devfs_fs_kernel.h> #include <linux/mm.h> #include <linux/sched.h> +#include <linux/smp_lock.h> #include <linux/adb.h> #include <linux/cuda.h> #include <linux/pmu.h> @@ -516,6 +517,7 @@ static int adb_release(struct inode *inode, struct file *file) struct adbdev_state *state = file->private_data; unsigned long flags; + lock_kernel(); if (state) { file->private_data = NULL; spin_lock_irqsave(&state->lock, flags); @@ -528,6 +530,7 @@ static int adb_release(struct inode *inode, struct file *file) spin_unlock_irqrestore(&state->lock, flags); } } + unlock_kernel(); return 0; } diff --git a/drivers/macintosh/via-pmu.c b/drivers/macintosh/via-pmu.c index 9ca4a9ae8..efec54db0 100644 --- a/drivers/macintosh/via-pmu.c +++ b/drivers/macintosh/via-pmu.c @@ -31,6 +31,7 @@ #include <linux/adb.h> #include <linux/pmu.h> #include <linux/cuda.h> +#include <linux/smp_lock.h> #include <asm/prom.h> #include <asm/machdep.h> #include <asm/io.h> @@ -1539,6 +1540,7 @@ static int pmu_release(struct inode *inode, struct file *file) struct pmu_private *pp = file->private_data; unsigned long flags; + lock_kernel(); if (pp != 0) { file->private_data = 0; spin_lock_irqsave(&all_pvt_lock, flags); @@ -1546,6 +1548,7 @@ static int pmu_release(struct inode *inode, struct file *file) spin_unlock_irqrestore(&all_pvt_lock, flags); kfree(pp); } + unlock_kernel(); return 0; } |