USB: kmemdup() cleanup in drivers/usb/
replace open coded kmemdup() to save some screen space, and allow inlining/not inlining to be triggered by gcc. Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
Родитель
052ac01aeb
Коммит
5d7efe5b37
|
@ -401,9 +401,8 @@ static int uea_send_modem_cmd(struct usb_device *usb,
|
|||
int ret = -ENOMEM;
|
||||
u8 *xfer_buff;
|
||||
|
||||
xfer_buff = kmalloc(size, GFP_KERNEL);
|
||||
xfer_buff = kmemdup(buff, size, GFP_KERNEL);
|
||||
if (xfer_buff) {
|
||||
memcpy(xfer_buff, buff, size);
|
||||
ret = usb_control_msg(usb,
|
||||
usb_sndctrlpipe(usb, 0),
|
||||
LOAD_INTERNAL,
|
||||
|
@ -595,14 +594,12 @@ static int uea_idma_write(struct uea_softc *sc, void *data, u32 size)
|
|||
u8 *xfer_buff;
|
||||
int bytes_read;
|
||||
|
||||
xfer_buff = kmalloc(size, GFP_KERNEL);
|
||||
xfer_buff = kmemdup(data, size, GFP_KERNEL);
|
||||
if (!xfer_buff) {
|
||||
uea_err(INS_TO_USBDEV(sc), "can't allocate xfer_buff\n");
|
||||
return ret;
|
||||
}
|
||||
|
||||
memcpy(xfer_buff, data, size);
|
||||
|
||||
ret = usb_bulk_msg(sc->usb_dev,
|
||||
usb_sndbulkpipe(sc->usb_dev, UEA_IDMA_PIPE),
|
||||
xfer_buff, size, &bytes_read, BULK_TIMEOUT);
|
||||
|
@ -765,12 +762,11 @@ static int uea_request(struct uea_softc *sc,
|
|||
u8 *xfer_buff;
|
||||
int ret = -ENOMEM;
|
||||
|
||||
xfer_buff = kmalloc(size, GFP_KERNEL);
|
||||
xfer_buff = kmemdup(data, size, GFP_KERNEL);
|
||||
if (!xfer_buff) {
|
||||
uea_err(INS_TO_USBDEV(sc), "can't allocate xfer_buff\n");
|
||||
return ret;
|
||||
}
|
||||
memcpy(xfer_buff, data, size);
|
||||
|
||||
ret = usb_control_msg(sc->usb_dev, usb_sndctrlpipe(sc->usb_dev, 0),
|
||||
UCDC_SEND_ENCAPSULATED_COMMAND,
|
||||
|
|
|
@ -53,13 +53,12 @@ static void __exit emi26_exit (void);
|
|||
static int emi26_writememory (struct usb_device *dev, int address, unsigned char *data, int length, __u8 request)
|
||||
{
|
||||
int result;
|
||||
unsigned char *buffer = kmalloc (length, GFP_KERNEL);
|
||||
unsigned char *buffer = kmemdup(data, length, GFP_KERNEL);
|
||||
|
||||
if (!buffer) {
|
||||
err("emi26: kmalloc(%d) failed.", length);
|
||||
return -ENOMEM;
|
||||
}
|
||||
memcpy (buffer, data, length);
|
||||
/* Note: usb_control_msg returns negative value on error or length of the
|
||||
* data that was written! */
|
||||
result = usb_control_msg (dev, usb_sndctrlpipe(dev, 0), request, 0x40, address, 0, buffer, length, 300);
|
||||
|
|
|
@ -61,13 +61,12 @@ static void __exit emi62_exit (void);
|
|||
static int emi62_writememory (struct usb_device *dev, int address, unsigned char *data, int length, __u8 request)
|
||||
{
|
||||
int result;
|
||||
unsigned char *buffer = kmalloc (length, GFP_KERNEL);
|
||||
unsigned char *buffer = kmemdup(data, length, GFP_KERNEL);
|
||||
|
||||
if (!buffer) {
|
||||
err("emi62: kmalloc(%d) failed.", length);
|
||||
return -ENOMEM;
|
||||
}
|
||||
memcpy (buffer, data, length);
|
||||
/* Note: usb_control_msg returns negative value on error or length of the
|
||||
* data that was written! */
|
||||
result = usb_control_msg (dev, usb_sndctrlpipe(dev, 0), request, 0x40, address, 0, buffer, length, 300);
|
||||
|
|
|
@ -31,12 +31,11 @@ int ezusb_writememory (struct usb_serial *serial, int address, unsigned char *da
|
|||
return -ENODEV;
|
||||
}
|
||||
|
||||
transfer_buffer = kmalloc (length, GFP_KERNEL);
|
||||
transfer_buffer = kmemdup(data, length, GFP_KERNEL);
|
||||
if (!transfer_buffer) {
|
||||
dev_err(&serial->dev->dev, "%s - kmalloc(%d) failed.\n", __FUNCTION__, length);
|
||||
return -ENOMEM;
|
||||
}
|
||||
memcpy (transfer_buffer, data, length);
|
||||
result = usb_control_msg (serial->dev, usb_sndctrlpipe(serial->dev, 0), bRequest, 0x40, address, 0, transfer_buffer, length, 3000);
|
||||
kfree (transfer_buffer);
|
||||
return result;
|
||||
|
|
|
@ -206,10 +206,9 @@ static int ipw_open(struct usb_serial_port *port, struct file *filp)
|
|||
|
||||
dbg("%s", __FUNCTION__);
|
||||
|
||||
buf_flow_init = kmalloc(16, GFP_KERNEL);
|
||||
buf_flow_init = kmemdup(buf_flow_static, 16, GFP_KERNEL);
|
||||
if (!buf_flow_init)
|
||||
return -ENOMEM;
|
||||
memcpy(buf_flow_init, buf_flow_static, 16);
|
||||
|
||||
if (port->tty)
|
||||
port->tty->low_latency = 1;
|
||||
|
|
Загрузка…
Ссылка в новой задаче