diff options
author | Ingo Molnar <mingo@elte.hu> | 2008-07-24 02:09:26 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-07-24 02:09:26 -0400 |
commit | 28afe961a18f77b2249062499bdbf70fd2ec6bba (patch) | |
tree | 71a5cb32924b8c8256bbc0f2f81c6b8c2ac79108 /lib/kobject.c | |
parent | 1e01cb0c6ff7e9ddb6547551794c6aa82785a7cb (diff) | |
parent | 338b9bb3adac0d2c5a1e180491d9b001d624c402 (diff) |
Merge branch 'linus' into tracing/urgent
Diffstat (limited to 'lib/kobject.c')
-rw-r--r-- | lib/kobject.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/lib/kobject.c b/lib/kobject.c index dcade0543bd2..744401571ed7 100644 --- a/lib/kobject.c +++ b/lib/kobject.c | |||
@@ -216,13 +216,19 @@ static int kobject_add_internal(struct kobject *kobj) | |||
216 | static int kobject_set_name_vargs(struct kobject *kobj, const char *fmt, | 216 | static int kobject_set_name_vargs(struct kobject *kobj, const char *fmt, |
217 | va_list vargs) | 217 | va_list vargs) |
218 | { | 218 | { |
219 | /* Free the old name, if necessary. */ | 219 | const char *old_name = kobj->name; |
220 | kfree(kobj->name); | 220 | char *s; |
221 | 221 | ||
222 | kobj->name = kvasprintf(GFP_KERNEL, fmt, vargs); | 222 | kobj->name = kvasprintf(GFP_KERNEL, fmt, vargs); |
223 | if (!kobj->name) | 223 | if (!kobj->name) |
224 | return -ENOMEM; | 224 | return -ENOMEM; |
225 | 225 | ||
226 | /* ewww... some of these buggers have '/' in the name ... */ | ||
227 | s = strchr(kobj->name, '/'); | ||
228 | if (s) | ||
229 | s[0] = '!'; | ||
230 | |||
231 | kfree(old_name); | ||
226 | return 0; | 232 | return 0; |
227 | } | 233 | } |
228 | 234 | ||