Commit 1721a238 authored by Julia Lawall's avatar Julia Lawall Committed by Jiri Kosina

HID: Use kmemdup

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

A simplified version of the semantic patch that makes this change is as
follows: (http://coccinelle.lip6.fr/)

// <smpl>
@@
expression from,to,size,flag;
statement S;
@@

-  to = \(kmalloc\|kzalloc\)(size,flag);
+  to = kmemdup(from,size,flag);
   if (to==NULL || ...) S
-  memcpy(to, from, size);
// </smpl>
Signed-off-by: default avatarJulia Lawall <julia@diku.dk>
Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
parent 81cd5843
...@@ -653,10 +653,9 @@ int hid_parse_report(struct hid_device *device, __u8 *start, ...@@ -653,10 +653,9 @@ int hid_parse_report(struct hid_device *device, __u8 *start,
if (device->driver->report_fixup) if (device->driver->report_fixup)
device->driver->report_fixup(device, start, size); device->driver->report_fixup(device, start, size);
device->rdesc = kmalloc(size, GFP_KERNEL); device->rdesc = kmemdup(start, size, GFP_KERNEL);
if (device->rdesc == NULL) if (device->rdesc == NULL)
return -ENOMEM; return -ENOMEM;
memcpy(device->rdesc, start, size);
device->rsize = size; device->rsize = size;
parser = vmalloc(sizeof(struct hid_parser)); parser = vmalloc(sizeof(struct hid_parser));
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment