--- vhba.c.orig 2010-10-22 23:16:21.896084497 +0200 +++ vhba.c 2010-10-22 23:17:38.150243713 +0200 @@ -672,7 +672,7 @@ static ssize_t vhba_ctl_write(struct fil return ret; } -static int vhba_ctl_ioctl (struct inode *inode, struct file *file, unsigned int cmd, unsigned long arg) +static long vhba_ctl_unlocked_ioctl (struct file *file, unsigned int cmd, unsigned long arg) { struct vhba_device *vdev = file->private_data; struct vhba_host *vhost; @@ -782,7 +782,7 @@ static struct file_operations vhba_ctl_f .read = vhba_ctl_read, .write = vhba_ctl_write, .poll = vhba_ctl_poll, - .ioctl = vhba_ctl_ioctl, + .unlocked_ioctl = vhba_ctl_unlocked_ioctl, }; static struct miscdevice vhba_miscdev = {