Merge commit '85082fd7cbe3173198aac0eb5e85ab1edcc6352c' into test-build
[sfrench/cifs-2.6.git] / drivers / char / viotape.c
index 977f7d35e76916cc774ff4bf72c9f67e3ecd3eca..e5da98d8f9cd70f493ecb8c9d7521639f937e779 100644 (file)
@@ -678,6 +678,17 @@ free_op:
        return ret;
 }
 
+static long viotap_unlocked_ioctl(struct file *file,
+               unsigned int cmd, unsigned long arg)
+{
+       long rc;
+
+       lock_kernel();
+       rc = viotap_ioctl(file->f_path.dentry->d_inode, file, cmd, arg);
+       unlock_kernel();
+       return rc;
+}
+
 static int viotap_open(struct inode *inode, struct file *file)
 {
        HvLpEvent_Rc hvrc;
@@ -786,12 +797,12 @@ free_op:
 }
 
 const struct file_operations viotap_fops = {
-       .owner =        THIS_MODULE,
-       .read =         viotap_read,
-       .write =        viotap_write,
-       .ioctl =        viotap_ioctl,
-       .open =         viotap_open,
-       .release =      viotap_release,
+       .owner =                THIS_MODULE,
+       .read =                 viotap_read,
+       .write =                viotap_write,
+       .unlocked_ioctl =       viotap_unlocked_ioctl,
+       .open =                 viotap_open,
+       .release =              viotap_release,
 };
 
 /* Handle interrupt events for tape */