Re: [PATCH 6/6] pidns: Support unsharing the pid namespace.

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Oleg Nesterov
Date: Sunday, June 20, 2010 - 1:14 pm

On 06/20, Eric W. Biederman wrote:

Cough. It is too late to me to even try to understand the changelog.

Instead I tried to quickly read the patch. Most probably I missed
somthing, but still I'd like to ask the quiestion.

So. If I understand correctly, the patch is simple:

	- unshare(CLONE_NEWPID) changes current->proxy->pid_ns,
	  but do not change current->pids[] and thus it doesn't
	  change task_active_pid_ns().

	- since copy_process() uses ->proxy->pid_ns for alloc_pid()
	  the new children will fall into the new ns.

IOW, the caller becomes the "swapper" for the new namespace.

Correct?

If yes, I'm afraid nobody except you will understand this magic ;)

But what if the task T does unshare(CLONE_NEWPID) and then, say,
pthread_create() ? Unless I missed something, the new thread won't
be able to see T ?

OK, suppose it does fork() after unshare(), then another fork().
In this case the second child lives in the same namespace with
init created by the 1st fork, but it is not descendant ? This means
in particular that if the new init exits, zap_pid_ns_processes()->
do_wait() can't work.

I hope I missed something, this all is too subtle for me. And I
still do not understand 4/6 which adds ns->dead.

Oleg.

--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[PATCH 0/4] pid_ns_prepare_proc/unshare cleanups, Oleg Nesterov, (Sat Jun 19, 12:08 pm)
[PATCH 2/4] procfs: kill the global proc_mnt variable, Oleg Nesterov, (Sat Jun 19, 12:10 pm)
[PATCH 0/6] Unshare support for the pid namespace., Eric W. Biederman, (Sun Jun 20, 1:42 am)
[PATCH 1/6] pid: Remove the child_reaper special case in ..., Eric W. Biederman, (Sun Jun 20, 1:44 am)
[PATCH 2/6] pidns: Call pid_ns_prepare_proc from create_pi ..., Eric W. Biederman, (Sun Jun 20, 1:45 am)
[PATCH 3/6] procfs: kill the global proc_mnt variable, Eric W. Biederman, (Sun Jun 20, 1:45 am)
[PATCH 4/6] pidns: Don't allow new pids after the namespac ..., Eric W. Biederman, (Sun Jun 20, 1:47 am)
[PATCH 5/6] pidns: Use task_active_pid_ns where appropriate, Eric W. Biederman, (Sun Jun 20, 1:48 am)
[PATCH 6/6] pidns: Support unsharing the pid namespace., Eric W. Biederman, (Sun Jun 20, 1:49 am)
Re: [PATCH 0/6] Unshare support for the pid namespace., Oleg Nesterov, (Sun Jun 20, 11:03 am)
[PATCH 0/2] pid_ns_release_proc() fixes, Oleg Nesterov, (Sun Jun 20, 11:05 am)
Re: [PATCH 6/6] pidns: Support unsharing the pid namespace., Oleg Nesterov, (Sun Jun 20, 1:14 pm)
Re: [PATCH 0/6] Unshare support for the pid namespace., Eric W. Biederman, (Sun Jun 20, 2:00 pm)
Re: [PATCH 0/6] Unshare support for the pid namespace., Oleg Nesterov, (Sun Jun 20, 2:48 pm)
Re: [PATCH 0/6] Unshare support for the pid namespace., Oleg Nesterov, (Sun Jun 20, 2:56 pm)
Re: [PATCH 6/6] pidns: Support unsharing the pid namespace., Eric W. Biederman, (Sun Jun 20, 6:53 pm)
Re: [PATCH 1/1] pid_ns: move pid_ns_release_proc() from pr ..., Sukadev Bhattiprolu, (Wed Jun 23, 11:36 pm)
Re: [PATCH 1/1] pid_ns: move pid_ns_release_proc() from pr ..., Eric W. Biederman, (Thu Jun 24, 12:06 am)
Re: [RESEND PATCH] pid_ns: Fix proc_flush_task() accessing ..., Sukadev Bhattiprolu, (Fri Jun 25, 11:37 am)
Re: [RESEND PATCH] pid_ns: Fix proc_flush_task() accessing ..., Sukadev Bhattiprolu, (Fri Jun 25, 2:26 pm)
Re: [RESEND PATCH] pid_ns: Fix proc_flush_task() accessing ..., Sukadev Bhattiprolu, (Fri Jun 25, 3:07 pm)
[PATCH 01/24] pidns: Remove races by stopping the caching ..., Eric W. Biederman, (Fri Jul 9, 8:58 am)
Re: [PATCH 01/24] pidns: Remove races by stopping the cach ..., Eric W. Biederman, (Sun Jul 11, 7:25 am)
[PATCH] pidns: Fix wait for zombies to be reaped in zap_pi ..., Eric W. Biederman, (Mon Jul 12, 11:09 am)
Re: [PATCH] pidns: Fix wait for zombies to be reaped in za ..., Eric W. Biederman, (Tue Jul 13, 6:47 pm)
Re: [PATCH] pidns: Fix wait for zombies to be reaped in za ..., Sukadev Bhattiprolu, (Wed Jul 14, 1:53 pm)
Re: [PATCH] pidns: Fix wait for zombies to be reaped in za ..., Eric W. Biederman, (Wed Jul 14, 2:35 pm)
Re: [PATCH] pidns: Fix wait for zombies to be reaped in za ..., Sukadev Bhattiprolu, (Sat Oct 30, 12:07 am)