Use kmemdup rather than duplicating its implementation

The semantic patch that makes this change is available
in scripts/coccinelle/api/memdup.cocci.

Signed-off-by: Thomas Meyer <[email protected]>
---

diff -u -p a/drivers/staging/speakup/kobjects.c 
b/drivers/staging/speakup/kobjects.c
--- a/drivers/staging/speakup/kobjects.c 2011-11-07 19:38:12.073651604 +0100
+++ b/drivers/staging/speakup/kobjects.c 2011-11-08 10:52:31.467444789 +0100
@@ -265,12 +265,11 @@ static ssize_t keymap_store(struct kobje
        unsigned long flags;
 
        spk_lock(flags);
-       in_buff = kmalloc(count + 1, GFP_ATOMIC);
+       in_buff = kmemdup(buf, count + 1, GFP_ATOMIC);
        if (!in_buff) {
                spk_unlock(flags);
                return -ENOMEM;
        }
-       memcpy(in_buff, buf, count + 1);
        if (strchr("dDrR", *in_buff)) {
                set_key_info(key_defaults, key_buf);
                pr_info("keymap set to default values\n");


_______________________________________________
devel mailing list
[email protected]
http://driverdev.linuxdriverproject.org/mailman/listinfo/devel

Reply via email to