浏览代码

Input: usbtouchscreen - switch to using kmemdup()

Use kmemdup when some other buffer is immediately copied into the
allocated region.

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Julia Lawall 15 年之前
父节点
当前提交
641d446f89
共有 1 个文件被更改,包括 2 次插入3 次删除
  1. 2 3
      drivers/input/touchscreen/usbtouchscreen.c

+ 2 - 3
drivers/input/touchscreen/usbtouchscreen.c

@@ -811,12 +811,11 @@ static int nexio_init(struct usbtouch_usb *usbtouch)
 
 
 	priv = usbtouch->priv;
 	priv = usbtouch->priv;
 
 
-	priv->ack_buf = kmalloc(sizeof(nexio_ack_pkt), GFP_KERNEL);
+	priv->ack_buf = kmemdup(nexio_ack_pkt, sizeof(nexio_ack_pkt),
+				GFP_KERNEL);
 	if (!priv->ack_buf)
 	if (!priv->ack_buf)
 		goto err_priv;
 		goto err_priv;
 
 
-	memcpy(priv->ack_buf, nexio_ack_pkt, sizeof(nexio_ack_pkt));
-
 	priv->ack = usb_alloc_urb(0, GFP_KERNEL);
 	priv->ack = usb_alloc_urb(0, GFP_KERNEL);
 	if (!priv->ack) {
 	if (!priv->ack) {
 		dbg("%s - usb_alloc_urb failed: usbtouch->ack", __func__);
 		dbg("%s - usb_alloc_urb failed: usbtouch->ack", __func__);