Re: [PATCH 2/4] pid_ns: (BUG 11391) change ->child_reaper wheninit->group_leader exits

From: sukadev
Date: Tue Aug 26 2008 - 20:38:59 EST


sukadev@xxxxxxxxxx [sukadev@xxxxxxxxxx] wrote:
| I was able to repro the problem without the patchset and could not
| reproduce with the patchset. But just had a quick question while
| reviewing the patches.
|
| Oleg Nesterov [oleg@xxxxxxxxxx] wrote:
| | We don't change pid_ns->child_reaper when the main thread of the
| | subnamespace init exits. As Robert Rex <robert.rex@xxxxxxxxxx>
| | pointed out this is wrong.
| |
| | Yes, the re-parenting itself works correctly, but if the reparented
| | task exits it needs ->parent->nsproxy->pid_ns in do_notify_parent(),
|
| If the task was reparented, then with patch 1/4 its parent would be
| the global init (init_pid_ns.child_reaper) right ?
|
| | and if the main thread is zombie its ->nsproxy was already cleared
| | by exit_task_namespaces().
|
| If above is true, then even if the main thread's nsproxy is NULL, does
| it affect the reparented task ?

never mind. I see it now. The group_dead check in current code is not
sufficient (and the zap_pid_ns() may not have been called when main
thread is exiting).
--
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/