diff options
| author | Ingo Molnar <mingo@elte.hu> | 2010-02-08 08:55:43 +0100 |
|---|---|---|
| committer | Ingo Molnar <mingo@elte.hu> | 2010-02-08 08:55:46 +0100 |
| commit | 6d3e0907b8b239d16720d144e2675ecf10d3bc3b (patch) | |
| tree | e0b0743b5f6f82b057cafc4f3687396a6e01a0b4 /kernel/kmod.c | |
| parent | sched: Remove member rt_se from struct rt_rq (diff) | |
| parent | kernel/sched.c: Suppress unused var warning (diff) | |
| download | linux-6d3e0907b8b239d16720d144e2675ecf10d3bc3b.tar.gz linux-6d3e0907b8b239d16720d144e2675ecf10d3bc3b.zip | |
Merge branch 'sched/urgent' into sched/core
Merge reason: Merge dependent fix, update to latest -rc.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'kernel/kmod.c')
| -rw-r--r-- | kernel/kmod.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/kernel/kmod.c b/kernel/kmod.c index 25b103190364..bf0e231d9702 100644 --- a/kernel/kmod.c +++ b/kernel/kmod.c @@ -520,13 +520,15 @@ int call_usermodehelper_pipe(char *path, char **argv, char **envp, return -ENOMEM; ret = call_usermodehelper_stdinpipe(sub_info, filp); - if (ret < 0) - goto out; + if (ret < 0) { + call_usermodehelper_freeinfo(sub_info); + return ret; + } - return call_usermodehelper_exec(sub_info, UMH_WAIT_EXEC); + ret = call_usermodehelper_exec(sub_info, UMH_WAIT_EXEC); + if (ret < 0) /* Failed to execute helper, close pipe */ + filp_close(*filp, NULL); - out: - call_usermodehelper_freeinfo(sub_info); return ret; } EXPORT_SYMBOL(call_usermodehelper_pipe); |
