diff options
Diffstat (limited to 'drivers/usb/misc/ldusb.c')
| -rw-r--r-- | drivers/usb/misc/ldusb.c | 9 | 
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/usb/misc/ldusb.c b/drivers/usb/misc/ldusb.c index 236a60f53099..c2e255f02a72 100644 --- a/drivers/usb/misc/ldusb.c +++ b/drivers/usb/misc/ldusb.c @@ -695,7 +695,10 @@ static int ld_usb_probe(struct usb_interface *intf, const struct usb_device_id *  		dev_warn(&intf->dev, "Interrupt out endpoint not found (using control endpoint instead)\n");  	dev->interrupt_in_endpoint_size = usb_endpoint_maxp(dev->interrupt_in_endpoint); -	dev->ring_buffer = kmalloc(ring_buffer_size*(sizeof(size_t)+dev->interrupt_in_endpoint_size), GFP_KERNEL); +	dev->ring_buffer = +		kmalloc_array(ring_buffer_size, +			      sizeof(size_t) + dev->interrupt_in_endpoint_size, +			      GFP_KERNEL);  	if (!dev->ring_buffer)  		goto error;  	dev->interrupt_in_buffer = kmalloc(dev->interrupt_in_endpoint_size, GFP_KERNEL); @@ -706,7 +709,9 @@ static int ld_usb_probe(struct usb_interface *intf, const struct usb_device_id *  		goto error;  	dev->interrupt_out_endpoint_size = dev->interrupt_out_endpoint ? usb_endpoint_maxp(dev->interrupt_out_endpoint) :  									 udev->descriptor.bMaxPacketSize0; -	dev->interrupt_out_buffer = kmalloc(write_buffer_size*dev->interrupt_out_endpoint_size, GFP_KERNEL); +	dev->interrupt_out_buffer = +		kmalloc_array(write_buffer_size, +			      dev->interrupt_out_endpoint_size, GFP_KERNEL);  	if (!dev->interrupt_out_buffer)  		goto error;  	dev->interrupt_out_urb = usb_alloc_urb(0, GFP_KERNEL);  | 
