- patches.arch/x86_mce_intel_decode_physical_address.patch:
[linux-flexiantxendom0-3.2.10.git] / drivers / scsi / aacraid / linit.c
index e9373a2..33898b6 100644 (file)
@@ -705,12 +705,17 @@ static int aac_cfg_open(struct inode *inode, struct file *file)
  *     Bugs: Needs to handle hot plugging
  */
 
-static int aac_cfg_ioctl(struct inode *inode, struct file *file,
+static long aac_cfg_ioctl(struct file *file,
                unsigned int cmd, unsigned long arg)
 {
+       int ret;
        if (!capable(CAP_SYS_RAWIO))
                return -EPERM;
-       return aac_do_ioctl(file->private_data, cmd, (void __user *)arg);
+       lock_kernel();
+       ret = aac_do_ioctl(file->private_data, cmd, (void __user *)arg);
+       unlock_kernel();
+
+       return ret;
 }
 
 #ifdef CONFIG_COMPAT
@@ -1029,7 +1034,7 @@ ssize_t aac_get_serial_number(struct device *device, char *buf)
 
 static const struct file_operations aac_cfg_fops = {
        .owner          = THIS_MODULE,
-       .ioctl          = aac_cfg_ioctl,
+       .unlocked_ioctl = aac_cfg_ioctl,
 #ifdef CONFIG_COMPAT
        .compat_ioctl   = aac_compat_cfg_ioctl,
 #endif