pcmcia: use kstrdup() in pcmcia_device_query()
authorGeliang Tang <geliangtang@163.com>
Thu, 1 Oct 2015 16:37:57 +0000 (00:37 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 5 Oct 2015 03:47:09 +0000 (04:47 +0100)
Use kstrdup instead of kmalloc and strncpy.

Signed-off-by: Geliang Tang <geliangtang@163.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/pcmcia/ds.c

index 0decee6..489ea10 100644 (file)
@@ -468,12 +468,10 @@ static int pcmcia_device_query(struct pcmcia_device *p_dev)
                        if ((length < 2) || (length > 255))
                                continue;
 
-                       new = kmalloc(sizeof(char) * length, GFP_KERNEL);
+                       new = kstrdup(tmp, GFP_KERNEL);
                        if (!new)
                                continue;
 
-                       new = strncpy(new, tmp, length);
-
                        tmp = p_dev->prod_id[i];
                        p_dev->prod_id[i] = new;
                        kfree(tmp);