Re: [PATCH 2/2] exec: Make do_coredump more robust and safer whenusing pipes in core_pattern: wait for core collectors

From: Oleg Nesterov
Date: Fri Jun 26 2009 - 16:03:27 EST


On 06/26, Neil Horman wrote:
>
> - if (call_usermodehelper_pipe(corename+1, helper_argv, NULL,
> - &file)) {
> + if (call_usermodehelper_pipe(helper_argv[0], helper_argv, NULL,
> + &file, &pid) < 0) {

...


> + if (ispipe && core_pipe_limit)
> + sys_wait4(pid, NULL, 0, NULL);

How this can work? sys_wait4() can only wait for our childs, but the parent
of the dumping thread is khelper.


If we change kmod.c, then I think we need UMH_WAIT_CUSTOM_COMPLETION.


But perhaps do_coredump() can just sleep on file->...->i_pipe->wait waiting
for pipe_inode_info->readers == 0 ?

Oleg.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/