diff options
author | Julia Lawall <julia@diku.dk> | 2010-05-15 17:16:21 -0400 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2010-05-20 01:02:55 -0400 |
commit | d6bd535d88429b4804d6d917ab4f586306f9a855 (patch) | |
tree | 07fbd4f3d4ca3079204f73ecbb89542e9d9c966b /drivers/acpi/ec.c | |
parent | aeb834d95e771499cb0492d127aec3246d1595c8 (diff) |
ACPI: EC: 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: Julia Lawall <julia@diku.dk>
Acked-by: Alexey Starikovskiy <astarikovskiy@suse.de>
Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/acpi/ec.c')
-rw-r--r-- | drivers/acpi/ec.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/acpi/ec.c b/drivers/acpi/ec.c index f2234db85da0..e61d4f8e62a5 100644 --- a/drivers/acpi/ec.c +++ b/drivers/acpi/ec.c | |||
@@ -1027,10 +1027,9 @@ int __init acpi_ec_ecdt_probe(void) | |||
1027 | /* Don't trust ECDT, which comes from ASUSTek */ | 1027 | /* Don't trust ECDT, which comes from ASUSTek */ |
1028 | if (!EC_FLAGS_VALIDATE_ECDT) | 1028 | if (!EC_FLAGS_VALIDATE_ECDT) |
1029 | goto install; | 1029 | goto install; |
1030 | saved_ec = kmalloc(sizeof(struct acpi_ec), GFP_KERNEL); | 1030 | saved_ec = kmemdup(boot_ec, sizeof(struct acpi_ec), GFP_KERNEL); |
1031 | if (!saved_ec) | 1031 | if (!saved_ec) |
1032 | return -ENOMEM; | 1032 | return -ENOMEM; |
1033 | memcpy(saved_ec, boot_ec, sizeof(struct acpi_ec)); | ||
1034 | /* fall through */ | 1033 | /* fall through */ |
1035 | } | 1034 | } |
1036 | 1035 | ||