media: usb: siano: Use kmemdup to simplify kmalloc and memcpy logic
authorChen Jiahao <chenjiahao16@huawei.com>
Wed, 16 Aug 2023 02:23:23 +0000 (10:23 +0800)
committerHans Verkuil <hverkuil-cisco@xs4all.nl>
Wed, 27 Sep 2023 07:39:55 +0000 (09:39 +0200)
Using kmemdup() helper function rather than implementing it again
with kmalloc() + memcpy(), which improves the code readability.

Signed-off-by: Chen Jiahao <chenjiahao16@huawei.com>
Reviewed-by: Dongliang Mu <dzm91@hust.edu.cn>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
drivers/media/usb/siano/smsusb.c

index 8a39cac76c5850edbfbfedf859e8084cdaf39cd5..9d9e14c858e670d6588e87808c41c058a8d2e1e9 100644 (file)
@@ -279,10 +279,8 @@ static int smsusb1_load_firmware(struct usb_device *udev, int id, int board_id)
                }
        }
 
-       fw_buffer = kmalloc(fw->size, GFP_KERNEL);
+       fw_buffer = kmemdup(fw->data, fw->size, GFP_KERNEL);
        if (fw_buffer) {
-               memcpy(fw_buffer, fw->data, fw->size);
-
                rc = usb_bulk_msg(udev, usb_sndbulkpipe(udev, 2),
                                  fw_buffer, fw->size, &dummy, 1000);