On Mon, Jun 20, 2022 at 06:59:39PM +0800, Slark Xiao wrote: > For code neat purpose, we can use kmemdup to replace > kmalloc + memcpy. > > Signed-off-by: Slark Xiao <slark_xiao@xxxxxxx> > --- > drivers/usb/serial/opticon.c | 4 +--- > drivers/usb/serial/sierra.c | 4 +--- > 2 files changed, 2 insertions(+), 6 deletions(-) > > diff --git a/drivers/usb/serial/opticon.c b/drivers/usb/serial/opticon.c > index aed28c35caff..bca6766a63e6 100644 > --- a/drivers/usb/serial/opticon.c > +++ b/drivers/usb/serial/opticon.c > @@ -208,7 +208,7 @@ static int opticon_write(struct tty_struct *tty, struct usb_serial_port *port, > priv->outstanding_bytes += count; > spin_unlock_irqrestore(&priv->lock, flags); > > - buffer = kmalloc(count, GFP_ATOMIC); > + buffer = kmemdup(buf, count, GFP_ATOMIC); > if (!buffer) > goto error_no_buffer; > > @@ -216,8 +216,6 @@ static int opticon_write(struct tty_struct *tty, struct usb_serial_port *port, > if (!urb) > goto error_no_urb; > > - memcpy(buffer, buf, count); > - > usb_serial_debug_data(&port->dev, __func__, count, buffer); > > /* The connected devices do not have a bulk write endpoint, Looks like we have the same pattern also in garmin_write_bulk(). Care to include that one as well? Johan