Commit 7f57cfa4e2aa29fabe69e41529fd26578adc9b58

Authored by Oleg Nesterov
Committed by Linus Torvalds
1 parent 77d5591802

usermodehelper: kill the sub_info->path[0] check

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 264b83c0 ("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>

Showing 1 changed file with 3 additions and 8 deletions Side-by-side Diff

... ... @@ -147,6 +147,9 @@
147 147 */
148 148 WARN_ON_ONCE(wait && current_is_async());
149 149  
  150 + if (!modprobe_path[0])
  151 + return 0;
  152 +
150 153 va_start(args, fmt);
151 154 ret = vsnprintf(module_name, MODULE_NAME_LEN, fmt, args);
152 155 va_end(args);
... ... @@ -569,14 +572,6 @@
569 572 int retval = 0;
570 573  
571 574 helper_lock();
572   - if (!sub_info->path) {
573   - retval = -EINVAL;
574   - goto out;
575   - }
576   -
577   - if (sub_info->path[0] == '\0')
578   - goto out;
579   -
580 575 if (!khelper_wq || usermodehelper_disabled) {
581 576 retval = -EBUSY;
582 577 goto out;