aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/char/viotape.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2008-07-18 16:00:54 -0400
committerIngo Molnar <mingo@elte.hu>2008-07-18 16:00:54 -0400
commitbb2c018b09b681d43f5e08124b83e362647ea82b (patch)
treed794902c78f9fdd04ed88a4b8d451ed6f9292ec0 /drivers/char/viotape.c
parent82638844d9a8581bbf33201cc209a14876eca167 (diff)
parent5b664cb235e97afbf34db9c4d77f08ebd725335e (diff)
Merge branch 'linus' into cpus4096
Conflicts: drivers/acpi/processor_throttling.c Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'drivers/char/viotape.c')
-rw-r--r--drivers/char/viotape.c23
1 files changed, 17 insertions, 6 deletions
diff --git a/drivers/char/viotape.c b/drivers/char/viotape.c
index 977f7d35e769..e5da98d8f9cd 100644
--- a/drivers/char/viotape.c
+++ b/drivers/char/viotape.c
@@ -678,6 +678,17 @@ free_op:
678 return ret; 678 return ret;
679} 679}
680 680
681static long viotap_unlocked_ioctl(struct file *file,
682 unsigned int cmd, unsigned long arg)
683{
684 long rc;
685
686 lock_kernel();
687 rc = viotap_ioctl(file->f_path.dentry->d_inode, file, cmd, arg);
688 unlock_kernel();
689 return rc;
690}
691
681static int viotap_open(struct inode *inode, struct file *file) 692static int viotap_open(struct inode *inode, struct file *file)
682{ 693{
683 HvLpEvent_Rc hvrc; 694 HvLpEvent_Rc hvrc;
@@ -786,12 +797,12 @@ free_op:
786} 797}
787 798
788const struct file_operations viotap_fops = { 799const struct file_operations viotap_fops = {
789 .owner = THIS_MODULE, 800 .owner = THIS_MODULE,
790 .read = viotap_read, 801 .read = viotap_read,
791 .write = viotap_write, 802 .write = viotap_write,
792 .ioctl = viotap_ioctl, 803 .unlocked_ioctl = viotap_unlocked_ioctl,
793 .open = viotap_open, 804 .open = viotap_open,
794 .release = viotap_release, 805 .release = viotap_release,
795}; 806};
796 807
797/* Handle interrupt events for tape */ 808/* Handle interrupt events for tape */