X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=kernel%2Fkmod.c;h=e2764047ec03ed123acd3546ff4357341302cabb;hb=be089d79c46f5efa77fbdf03c5e576e220bf143f;hp=bb7df2a28bd719d07978593cb10f7264b6f43f3b;hpb=b7e23d913aafc93fc5f119e1be17620073cc3811;p=~andy%2Flinux diff --git a/kernel/kmod.c b/kernel/kmod.c index bb7df2a28bd..e2764047ec0 100644 --- a/kernel/kmod.c +++ b/kernel/kmod.c @@ -165,7 +165,7 @@ static int ____call_usermodehelper(void *data) } /* We can run anywhere, unlike our parent keventd(). */ - set_cpus_allowed(current, CPU_MASK_ALL); + set_cpus_allowed_ptr(current, CPU_MASK_ALL_PTR); /* * Our parent is keventd, which runs with elevated scheduling priority. @@ -173,10 +173,7 @@ static int ____call_usermodehelper(void *data) */ set_user_nice(current, 0); - retval = -EPERM; - if (current->fs->root) - retval = kernel_execve(sub_info->path, - sub_info->argv, sub_info->envp); + retval = kernel_execve(sub_info->path, sub_info->argv, sub_info->envp); /* Exec failed? */ sub_info->retval = retval;