Patchwork [6/10] arch/powerpc/platforms/pseries: Use kstrdup

login
register
mail settings
Submitter Julia Lawall
Date May 14, 2010, 7:30 p.m.
Message ID <Pine.LNX.4.64.1005142129520.28935@ask.diku.dk>
Download mbox | patch
Permalink /patch/52660/
State Accepted
Commit 74052173177b7f969d9cc0c8f136093e1d447a01
Delegated to: Benjamin Herrenschmidt
Headers show

Comments

Julia Lawall - May 14, 2010, 7:30 p.m.
From: Julia Lawall <julia@diku.dk>

Use kstrdup when the goal of an allocation is copy a string into the
allocated region.

The semantic patch that makes this change is as follows:
(http://coccinelle.lip6.fr/)

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

-  to = kmalloc(strlen(from) + 1,flag);
+  to = kstrdup(from, flag);
   ... when != \(from = E1 \| to = E1 \)
   if (to==NULL || ...) S
   ... when != \(from = E2 \| to = E2 \)
-  strcpy(to, from);
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>

---
 arch/powerpc/platforms/pseries/reconfig.c |    4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

Patch

diff -u -p a/arch/powerpc/platforms/pseries/reconfig.c b/arch/powerpc/platforms/pseries/reconfig.c
--- a/arch/powerpc/platforms/pseries/reconfig.c
+++ b/arch/powerpc/platforms/pseries/reconfig.c
@@ -118,12 +118,10 @@  static int pSeries_reconfig_add_node(con
 	if (!np)
 		goto out_err;
 
-	np->full_name = kmalloc(strlen(path) + 1, GFP_KERNEL);
+	np->full_name = kstrdup(path, GFP_KERNEL);
 	if (!np->full_name)
 		goto out_err;
 
-	strcpy(np->full_name, path);
-
 	np->properties = proplist;
 	of_node_set_flag(np, OF_DYNAMIC);
 	kref_init(&np->kref);