diff options
| author | Oliver Neukum <[email protected]> | 2014-08-01 07:55:20 +0000 |
|---|---|---|
| committer | Greg Kroah-Hartman <[email protected]> | 2014-08-01 23:01:46 +0000 |
| commit | d310d05f1225d1f6f2bf505255fdf593bfbb3051 (patch) | |
| tree | 561d579967a741e32fec5c65d7b1140c9a785903 /drivers/usb/core/devio.c | |
| parent | uas: Log a warning when we cannot use uas because the hcd lacks streams (diff) | |
| download | kernel-d310d05f1225d1f6f2bf505255fdf593bfbb3051.tar.gz kernel-d310d05f1225d1f6f2bf505255fdf593bfbb3051.zip | |
USB: devio: fix issue with log flooding
usbfs allows user space to pass down an URB which sets URB_SHORT_NOT_OK
for output URBs. That causes usbcore to log messages without limit
for a nonsensical disallowed combination. The fix is to silently drop
the attribute in usbfs.
The problem is reported to exist since 3.14
https://www.virtualbox.org/ticket/13085
Signed-off-by: Oliver Neukum <[email protected]>
CC: [email protected]
Acked-by: Alan Stern <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
Diffstat (limited to 'drivers/usb/core/devio.c')
| -rw-r--r-- | drivers/usb/core/devio.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/usb/core/devio.c b/drivers/usb/core/devio.c index 257876ea03a1..0b59731c3021 100644 --- a/drivers/usb/core/devio.c +++ b/drivers/usb/core/devio.c @@ -1509,7 +1509,7 @@ static int proc_do_submiturb(struct usb_dev_state *ps, struct usbdevfs_urb *uurb u = (is_in ? URB_DIR_IN : URB_DIR_OUT); if (uurb->flags & USBDEVFS_URB_ISO_ASAP) u |= URB_ISO_ASAP; - if (uurb->flags & USBDEVFS_URB_SHORT_NOT_OK) + if (uurb->flags & USBDEVFS_URB_SHORT_NOT_OK && is_in) u |= URB_SHORT_NOT_OK; if (uurb->flags & USBDEVFS_URB_NO_FSBR) u |= URB_NO_FSBR; |
