From: Thomas Meyer Date: Tue, 8 Nov 2011 19:40:26 +0000 (+0100) Subject: Staging: line6: Use kmemdup rather than duplicating its implementation X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=cff863871e748d072cae002fb13e692436b0200a;p=openwrt%2Fstaging%2Fblogic.git Staging: line6: Use kmemdup rather than duplicating its implementation Use kmemdup rather than duplicating its implementation The semantic patch that makes this change is available in scripts/coccinelle/api/memdup.cocci. More information about semantic patching is available at http://coccinelle.lip6.fr/ Signed-off-by: Thomas Meyer Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/line6/midi.c b/drivers/staging/line6/midi.c index ed5577f25afe..7f1e90e14411 100644 --- a/drivers/staging/line6/midi.c +++ b/drivers/staging/line6/midi.c @@ -135,7 +135,7 @@ static int send_midi_async(struct usb_line6 *line6, unsigned char *data, line6_write_hexdump(line6, 'S', data, length); #endif - transfer_buffer = kmalloc(length, GFP_ATOMIC); + transfer_buffer = kmemdup(data, length, GFP_ATOMIC); if (transfer_buffer == NULL) { usb_free_urb(urb); @@ -143,7 +143,6 @@ static int send_midi_async(struct usb_line6 *line6, unsigned char *data, return -ENOMEM; } - memcpy(transfer_buffer, data, length); usb_fill_int_urb(urb, line6->usbdev, usb_sndbulkpipe(line6->usbdev, line6->ep_control_write),