On Sat, Mar 9, 2013 at 5:42 PM, Oleg Nesterov <o...@redhat.com> 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 majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to