diff options
Diffstat (limited to 'lib/kobject_uevent.c')
-rw-r--r-- | lib/kobject_uevent.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/lib/kobject_uevent.c b/lib/kobject_uevent.c index 2fa545a63160..3f914725bda8 100644 --- a/lib/kobject_uevent.c +++ b/lib/kobject_uevent.c | |||
@@ -245,7 +245,8 @@ int kobject_uevent_env(struct kobject *kobj, enum kobject_action action, | |||
245 | if (retval) | 245 | if (retval) |
246 | goto exit; | 246 | goto exit; |
247 | 247 | ||
248 | call_usermodehelper(argv[0], argv, env->envp, UMH_WAIT_EXEC); | 248 | retval = call_usermodehelper(argv[0], argv, |
249 | env->envp, UMH_WAIT_EXEC); | ||
249 | } | 250 | } |
250 | 251 | ||
251 | exit: | 252 | exit: |
@@ -284,8 +285,7 @@ int add_uevent_var(struct kobj_uevent_env *env, const char *format, ...) | |||
284 | int len; | 285 | int len; |
285 | 286 | ||
286 | if (env->envp_idx >= ARRAY_SIZE(env->envp)) { | 287 | if (env->envp_idx >= ARRAY_SIZE(env->envp)) { |
287 | printk(KERN_ERR "add_uevent_var: too many keys\n"); | 288 | WARN(1, KERN_ERR "add_uevent_var: too many keys\n"); |
288 | WARN_ON(1); | ||
289 | return -ENOMEM; | 289 | return -ENOMEM; |
290 | } | 290 | } |
291 | 291 | ||
@@ -296,8 +296,7 @@ int add_uevent_var(struct kobj_uevent_env *env, const char *format, ...) | |||
296 | va_end(args); | 296 | va_end(args); |
297 | 297 | ||
298 | if (len >= (sizeof(env->buf) - env->buflen)) { | 298 | if (len >= (sizeof(env->buf) - env->buflen)) { |
299 | printk(KERN_ERR "add_uevent_var: buffer size too small\n"); | 299 | WARN(1, KERN_ERR "add_uevent_var: buffer size too small\n"); |
300 | WARN_ON(1); | ||
301 | return -ENOMEM; | 300 | return -ENOMEM; |
302 | } | 301 | } |
303 | 302 | ||