From: Muhammad Falak R Wani Date: Mon, 23 May 2016 23:24:31 +0000 (-0700) Subject: drivers/memstick/core/mspro_block: use kmemdup X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=de6cdcb5ce504c9d346858569e4ad2ca3ac2fe45;p=deliverable%2Flinux.git drivers/memstick/core/mspro_block: use kmemdup Use kmemdup when some other buffer is immediately copied into allocated region. It replaces call to allocation followed by memcpy, by a single call to kmemdup. [akpm@linux-foundation.org: remove unneeded cast to void*] Link: http://lkml.kernel.org/r/1463665743-16269-1-git-send-email-falakreyaz@gmail.com Signed-off-by: Muhammad Falak R Wani Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- diff --git a/drivers/memstick/core/mspro_block.c b/drivers/memstick/core/mspro_block.c index 922a750640e8..0fb27d338811 100644 --- a/drivers/memstick/core/mspro_block.c +++ b/drivers/memstick/core/mspro_block.c @@ -1033,12 +1033,11 @@ static int mspro_block_read_attributes(struct memstick_dev *card) } msb->attr_group.name = "media_attributes"; - buffer = kmalloc(attr_len, GFP_KERNEL); + buffer = kmemdup(attr, attr_len, GFP_KERNEL); if (!buffer) { rc = -ENOMEM; goto out_free_attr; } - memcpy(buffer, (char *)attr, attr_len); for (cnt = 0; cnt < attr_count; ++cnt) { s_attr = kzalloc(sizeof(struct mspro_sys_attr), GFP_KERNEL);