On Sat, Mar 9, 2013 at 5:42 PM, Oleg Nesterov <[email protected]> wrote: > On 03/08, Lucas De Marchi wrote: >> >> @@ -571,9 +572,17 @@ void do_coredump(siginfo_t *siginfo) >> goto fail_dropcount; >> } >> >> - retval = call_usermodehelper_fns(helper_argv[0], helper_argv, >> - NULL, UMH_WAIT_EXEC, umh_pipe_setup, >> - NULL, &cprm); >> + sub_info = call_usermodehelper_setup(helper_argv[0], >> + helper_argv, NULL, GFP_KERNEL, >> + umh_pipe_setup, NULL, &cprm); >> + if (!sub_info) { >> + printk(KERN_WARNING "%s failed to allocate memory\n", >> + __func__); > > Why? > >> + argv_free(helper_argv); >> + goto fail_dropcount; >> + } >> + >> + retval = call_usermodehelper_exec(sub_info, UMH_WAIT_EXEC); > > I do not really like another argv_free() here... How about > > retval = -ENOMEM; > info = call_usermodehelper_setup(...); > if (info) > retval = call_usermodehelper_fns(...); > argv_free(); > > ?
Looks good. I'll prepare a v3 Thanks Lucas De Marchi -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

