diff options
author | Julia Lawall <julia@diku.dk> | 2010-05-14 05:31:26 -0400 |
---|---|---|
committer | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2010-07-08 21:28:36 -0400 |
commit | 307a54cc80ddc7e5d87c4862dd12f43a01355187 (patch) | |
tree | a283e1caf40be430b59e69e778a476d100aeb1ef /arch | |
parent | 41eab6f88f24124df89e38067b3766b7bef06ddb (diff) |
powerpc/iseries: Use kstrdup
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>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/powerpc/platforms/iseries/vio.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/arch/powerpc/platforms/iseries/vio.c b/arch/powerpc/platforms/iseries/vio.c index 00b6730bc48f..b6db7cef83b4 100644 --- a/arch/powerpc/platforms/iseries/vio.c +++ b/arch/powerpc/platforms/iseries/vio.c | |||
@@ -87,12 +87,11 @@ static struct device_node *new_node(const char *path, | |||
87 | 87 | ||
88 | if (!np) | 88 | if (!np) |
89 | return NULL; | 89 | return NULL; |
90 | np->full_name = kmalloc(strlen(path) + 1, GFP_KERNEL); | 90 | np->full_name = kstrdup(path, GFP_KERNEL); |
91 | if (!np->full_name) { | 91 | if (!np->full_name) { |
92 | kfree(np); | 92 | kfree(np); |
93 | return NULL; | 93 | return NULL; |
94 | } | 94 | } |
95 | strcpy(np->full_name, path); | ||
96 | of_node_set_flag(np, OF_DYNAMIC); | 95 | of_node_set_flag(np, OF_DYNAMIC); |
97 | kref_init(&np->kref); | 96 | kref_init(&np->kref); |
98 | np->parent = of_node_get(parent); | 97 | np->parent = of_node_get(parent); |