diff options
Diffstat (limited to 'arch')
| -rw-r--r-- | arch/ia64/sn/kernel/sn2/sn_hwperf.c | 9 | ||||
| -rw-r--r-- | arch/um/drivers/harddog_kern.c | 18 | ||||
| -rw-r--r-- | arch/um/drivers/hostaudio_kern.c | 8 | ||||
| -rw-r--r-- | arch/um/drivers/mmapper_kern.c | 5 |
4 files changed, 23 insertions, 17 deletions
diff --git a/arch/ia64/sn/kernel/sn2/sn_hwperf.c b/arch/ia64/sn/kernel/sn2/sn_hwperf.c index f6c1c5fd075d..fa1eceed0d23 100644 --- a/arch/ia64/sn/kernel/sn2/sn_hwperf.c +++ b/arch/ia64/sn/kernel/sn2/sn_hwperf.c | |||
| @@ -30,7 +30,6 @@ | |||
| 30 | #include <linux/miscdevice.h> | 30 | #include <linux/miscdevice.h> |
| 31 | #include <linux/utsname.h> | 31 | #include <linux/utsname.h> |
| 32 | #include <linux/cpumask.h> | 32 | #include <linux/cpumask.h> |
| 33 | #include <linux/smp_lock.h> | ||
| 34 | #include <linux/nodemask.h> | 33 | #include <linux/nodemask.h> |
| 35 | #include <linux/smp.h> | 34 | #include <linux/smp.h> |
| 36 | #include <linux/mutex.h> | 35 | #include <linux/mutex.h> |
| @@ -682,8 +681,7 @@ static int sn_hwperf_map_err(int hwperf_err) | |||
| 682 | /* | 681 | /* |
| 683 | * ioctl for "sn_hwperf" misc device | 682 | * ioctl for "sn_hwperf" misc device |
| 684 | */ | 683 | */ |
| 685 | static int | 684 | static long sn_hwperf_ioctl(struct file *fp, u32 op, unsigned long arg) |
| 686 | sn_hwperf_ioctl(struct inode *in, struct file *fp, u32 op, unsigned long arg) | ||
| 687 | { | 685 | { |
| 688 | struct sn_hwperf_ioctl_args a; | 686 | struct sn_hwperf_ioctl_args a; |
| 689 | struct cpuinfo_ia64 *cdata; | 687 | struct cpuinfo_ia64 *cdata; |
| @@ -699,8 +697,6 @@ sn_hwperf_ioctl(struct inode *in, struct file *fp, u32 op, unsigned long arg) | |||
| 699 | int i; | 697 | int i; |
| 700 | int j; | 698 | int j; |
| 701 | 699 | ||
| 702 | unlock_kernel(); | ||
| 703 | |||
| 704 | /* only user requests are allowed here */ | 700 | /* only user requests are allowed here */ |
| 705 | if ((op & SN_HWPERF_OP_MASK) < 10) { | 701 | if ((op & SN_HWPERF_OP_MASK) < 10) { |
| 706 | r = -EINVAL; | 702 | r = -EINVAL; |
| @@ -859,12 +855,11 @@ sn_hwperf_ioctl(struct inode *in, struct file *fp, u32 op, unsigned long arg) | |||
| 859 | error: | 855 | error: |
| 860 | vfree(p); | 856 | vfree(p); |
| 861 | 857 | ||
| 862 | lock_kernel(); | ||
| 863 | return r; | 858 | return r; |
| 864 | } | 859 | } |
| 865 | 860 | ||
| 866 | static const struct file_operations sn_hwperf_fops = { | 861 | static const struct file_operations sn_hwperf_fops = { |
| 867 | .ioctl = sn_hwperf_ioctl, | 862 | .unlocked_ioctl = sn_hwperf_ioctl, |
| 868 | }; | 863 | }; |
| 869 | 864 | ||
| 870 | static struct miscdevice sn_hwperf_dev = { | 865 | static struct miscdevice sn_hwperf_dev = { |
diff --git a/arch/um/drivers/harddog_kern.c b/arch/um/drivers/harddog_kern.c index d332503fa1be..cfcac1ff4cf2 100644 --- a/arch/um/drivers/harddog_kern.c +++ b/arch/um/drivers/harddog_kern.c | |||
| @@ -124,8 +124,8 @@ static ssize_t harddog_write(struct file *file, const char __user *data, size_t | |||
| 124 | return 0; | 124 | return 0; |
| 125 | } | 125 | } |
| 126 | 126 | ||
| 127 | static int harddog_ioctl(struct inode *inode, struct file *file, | 127 | static int harddog_ioctl_unlocked(struct file *file, |
| 128 | unsigned int cmd, unsigned long arg) | 128 | unsigned int cmd, unsigned long arg) |
| 129 | { | 129 | { |
| 130 | void __user *argp= (void __user *)arg; | 130 | void __user *argp= (void __user *)arg; |
| 131 | static struct watchdog_info ident = { | 131 | static struct watchdog_info ident = { |
| @@ -148,10 +148,22 @@ static int harddog_ioctl(struct inode *inode, struct file *file, | |||
| 148 | } | 148 | } |
| 149 | } | 149 | } |
| 150 | 150 | ||
| 151 | static long harddog_ioctl(struct file *file, | ||
| 152 | unsigned int cmd, unsigned long arg) | ||
| 153 | { | ||
| 154 | long ret; | ||
| 155 | |||
| 156 | lock_kernel(); | ||
| 157 | ret = harddog_ioctl_unlocked(file, cmd, arg); | ||
| 158 | unlock_kernel(); | ||
| 159 | |||
| 160 | return ret; | ||
| 161 | } | ||
| 162 | |||
| 151 | static const struct file_operations harddog_fops = { | 163 | static const struct file_operations harddog_fops = { |
| 152 | .owner = THIS_MODULE, | 164 | .owner = THIS_MODULE, |
| 153 | .write = harddog_write, | 165 | .write = harddog_write, |
| 154 | .ioctl = harddog_ioctl, | 166 | .unlocked_ioctl = harddog_ioctl, |
| 155 | .open = harddog_open, | 167 | .open = harddog_open, |
| 156 | .release = harddog_release, | 168 | .release = harddog_release, |
| 157 | }; | 169 | }; |
diff --git a/arch/um/drivers/hostaudio_kern.c b/arch/um/drivers/hostaudio_kern.c index 368219cc2366..ae42695c3597 100644 --- a/arch/um/drivers/hostaudio_kern.c +++ b/arch/um/drivers/hostaudio_kern.c | |||
| @@ -136,7 +136,7 @@ static unsigned int hostaudio_poll(struct file *file, | |||
| 136 | return mask; | 136 | return mask; |
| 137 | } | 137 | } |
| 138 | 138 | ||
| 139 | static int hostaudio_ioctl(struct inode *inode, struct file *file, | 139 | static long hostaudio_ioctl(struct file *file, |
| 140 | unsigned int cmd, unsigned long arg) | 140 | unsigned int cmd, unsigned long arg) |
| 141 | { | 141 | { |
| 142 | struct hostaudio_state *state = file->private_data; | 142 | struct hostaudio_state *state = file->private_data; |
| @@ -223,7 +223,7 @@ static int hostaudio_release(struct inode *inode, struct file *file) | |||
| 223 | 223 | ||
| 224 | /* /dev/mixer file operations */ | 224 | /* /dev/mixer file operations */ |
| 225 | 225 | ||
| 226 | static int hostmixer_ioctl_mixdev(struct inode *inode, struct file *file, | 226 | static long hostmixer_ioctl_mixdev(struct file *file, |
| 227 | unsigned int cmd, unsigned long arg) | 227 | unsigned int cmd, unsigned long arg) |
| 228 | { | 228 | { |
| 229 | struct hostmixer_state *state = file->private_data; | 229 | struct hostmixer_state *state = file->private_data; |
| @@ -289,7 +289,7 @@ static const struct file_operations hostaudio_fops = { | |||
| 289 | .read = hostaudio_read, | 289 | .read = hostaudio_read, |
| 290 | .write = hostaudio_write, | 290 | .write = hostaudio_write, |
| 291 | .poll = hostaudio_poll, | 291 | .poll = hostaudio_poll, |
| 292 | .ioctl = hostaudio_ioctl, | 292 | .unlocked_ioctl = hostaudio_ioctl, |
| 293 | .mmap = NULL, | 293 | .mmap = NULL, |
| 294 | .open = hostaudio_open, | 294 | .open = hostaudio_open, |
| 295 | .release = hostaudio_release, | 295 | .release = hostaudio_release, |
| @@ -298,7 +298,7 @@ static const struct file_operations hostaudio_fops = { | |||
| 298 | static const struct file_operations hostmixer_fops = { | 298 | static const struct file_operations hostmixer_fops = { |
| 299 | .owner = THIS_MODULE, | 299 | .owner = THIS_MODULE, |
| 300 | .llseek = no_llseek, | 300 | .llseek = no_llseek, |
| 301 | .ioctl = hostmixer_ioctl_mixdev, | 301 | .unlocked_ioctl = hostmixer_ioctl_mixdev, |
| 302 | .open = hostmixer_open_mixdev, | 302 | .open = hostmixer_open_mixdev, |
| 303 | .release = hostmixer_release, | 303 | .release = hostmixer_release, |
| 304 | }; | 304 | }; |
diff --git a/arch/um/drivers/mmapper_kern.c b/arch/um/drivers/mmapper_kern.c index d22f9e5c0eac..7158393b6793 100644 --- a/arch/um/drivers/mmapper_kern.c +++ b/arch/um/drivers/mmapper_kern.c | |||
| @@ -46,8 +46,7 @@ static ssize_t mmapper_write(struct file *file, const char __user *buf, | |||
| 46 | return count; | 46 | return count; |
| 47 | } | 47 | } |
| 48 | 48 | ||
| 49 | static int mmapper_ioctl(struct inode *inode, struct file *file, | 49 | static long mmapper_ioctl(struct file *file, unsigned int cmd, unsigned long arg) |
| 50 | unsigned int cmd, unsigned long arg) | ||
| 51 | { | 50 | { |
| 52 | return -ENOIOCTLCMD; | 51 | return -ENOIOCTLCMD; |
| 53 | } | 52 | } |
| @@ -90,7 +89,7 @@ static const struct file_operations mmapper_fops = { | |||
| 90 | .owner = THIS_MODULE, | 89 | .owner = THIS_MODULE, |
| 91 | .read = mmapper_read, | 90 | .read = mmapper_read, |
| 92 | .write = mmapper_write, | 91 | .write = mmapper_write, |
| 93 | .ioctl = mmapper_ioctl, | 92 | .unlocked_ioctl = mmapper_ioctl, |
| 94 | .mmap = mmapper_mmap, | 93 | .mmap = mmapper_mmap, |
| 95 | .open = mmapper_open, | 94 | .open = mmapper_open, |
| 96 | .release = mmapper_release, | 95 | .release = mmapper_release, |
