Skip to content

Commit

Permalink
usermodehelper: kill the sub_info->path[0] check
Browse files Browse the repository at this point in the history
call_usermodehelper_exec() does nothing but returns success if path[0] ==
0.  The only user which needs this strange feature is request_module(), it
can check modprobe_path[0] itself like other users do if they want to
detect the "disabled by admin" case.

Kill it.  Not only it looks strange, it can confuse other callers.  And
this allows us to revert 264b83c ("usermodehelper: check
subprocess_info->path != NULL"), do_execve(NULL) is safe.

Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Acked-by: Rusty Russell <rusty@rustcorp.com.au>
Cc: Lucas De Marchi <lucas.de.marchi@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  • Loading branch information
Oleg Nesterov authored and Linus Torvalds committed Jul 3, 2013
1 parent 77d5591 commit 7f57cfa
Showing 1 changed file with 3 additions and 8 deletions.
11 changes: 3 additions & 8 deletions kernel/kmod.c
Original file line number Diff line number Diff line change
Expand Up @@ -147,6 +147,9 @@ int __request_module(bool wait, const char *fmt, ...)
*/
WARN_ON_ONCE(wait && current_is_async());

if (!modprobe_path[0])
return 0;

va_start(args, fmt);
ret = vsnprintf(module_name, MODULE_NAME_LEN, fmt, args);
va_end(args);
Expand Down Expand Up @@ -569,14 +572,6 @@ int call_usermodehelper_exec(struct subprocess_info *sub_info, int wait)
int retval = 0;

helper_lock();
if (!sub_info->path) {
retval = -EINVAL;
goto out;
}

if (sub_info->path[0] == '\0')
goto out;

if (!khelper_wq || usermodehelper_disabled) {
retval = -EBUSY;
goto out;
Expand Down

0 comments on commit 7f57cfa

Please sign in to comment.