aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPete Zaitcev <zaitcev@redhat.com>2005-12-21 17:03:24 -0800
committerGreg Kroah-Hartman <gregkh@suse.de>2006-01-04 13:51:44 -0800
commit318e479eb7ad9a948c6da381976d258464413816 (patch)
treed73ef1b9d684ec47d9d963190b85e62df26c2fcc
parenta083dec0ed537a75fbe8f2f83d198e9e672240d8 (diff)
[PATCH] USB: ioctl compat for usblp.c
From: David Woodhouse <dwmw2> David has a G5 with a printer. I am quite surprised that nobody else noticed this before. Linus has a G5. Hackers hate printing in general, maybe. We do not use BKL anymore, because one of code paths had a sleeping call, so we had to use a semaphore. I am sure it's safe to use unlocked_ioctl. The new ioctls return long and retval is int. It looks completely fine to me. We never want these extra bits, and the sign extension ought to work right. Signed-off-by: Pete Zaitcev <zaitcev@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> --
-rw-r--r--drivers/usb/class/usblp.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/usb/class/usblp.c b/drivers/usb/class/usblp.c
index 6918037e209..708a292e5a0 100644
--- a/drivers/usb/class/usblp.c
+++ b/drivers/usb/class/usblp.c
@@ -438,7 +438,7 @@ static unsigned int usblp_poll(struct file *file, struct poll_table_struct *wait
| (!usblp->wcomplete ? 0 : POLLOUT | POLLWRNORM);
}
-static int usblp_ioctl(struct inode *inode, struct file *file, unsigned int cmd, unsigned long arg)
+static long usblp_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
{
struct usblp *usblp = file->private_data;
int length, err, i;
@@ -838,7 +838,8 @@ static struct file_operations usblp_fops = {
.read = usblp_read,
.write = usblp_write,
.poll = usblp_poll,
- .ioctl = usblp_ioctl,
+ .unlocked_ioctl = usblp_ioctl,
+ .compat_ioctl = usblp_ioctl,
.open = usblp_open,
.release = usblp_release,
};