aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/class
diff options
context:
space:
mode:
authorBjørn Mork <bjorn@mork.no>2012-01-16 09:11:59 -0500
committerGreg Kroah-Hartman <gregkh@suse.de>2012-01-24 17:33:50 -0500
commitcafbe85fb0d00d32988905c4978df433ca9b6512 (patch)
tree6c4cb1ddd01bec48ae1808c848d5173afe772280 /drivers/usb/class
parent19b85b3b87fd1388df1f4a35969823521d35d243 (diff)
USB: cdc-wdm: better allocate a buffer that is at least as big as we tell the USB core
As it turns out, there was a mismatch between the allocated inbuf size (desc->bMaxPacketSize0, typically something like 64) and the length we specified in the URB (desc->wMaxCommand, typically something like 2048) Signed-off-by: Bjørn Mork <bjorn@mork.no> Cc: Oliver Neukum <oliver@neukum.org> Cc: stable <stable@vger.kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/class')
-rw-r--r--drivers/usb/class/cdc-wdm.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/usb/class/cdc-wdm.c b/drivers/usb/class/cdc-wdm.c
index 9734863a3a49..846dfa603447 100644
--- a/drivers/usb/class/cdc-wdm.c
+++ b/drivers/usb/class/cdc-wdm.c
@@ -696,7 +696,7 @@ next_desc:
696 goto err; 696 goto err;
697 697
698 desc->inbuf = usb_alloc_coherent(interface_to_usbdev(intf), 698 desc->inbuf = usb_alloc_coherent(interface_to_usbdev(intf),
699 desc->bMaxPacketSize0, 699 desc->wMaxCommand,
700 GFP_KERNEL, 700 GFP_KERNEL,
701 &desc->response->transfer_dma); 701 &desc->response->transfer_dma);
702 if (!desc->inbuf) 702 if (!desc->inbuf)