On Tue, Apr 14, 2009 at 10:41:39AM -0500, Serge E. Hallyn wrote: > Quoting Alexey Dobriyan (adobriyan@xxxxxxxxx): > > On Mon, Apr 13, 2009 at 04:47:01PM -0500, Serge E. Hallyn wrote: > > > Quoting Alexey Dobriyan (adobriyan@xxxxxxxxx): > > > > > > Hi Alexey, > > > > > > as far as I can see, the main differences between this patch and the > > > equivalent in Oren's tree are: > > > > > > 1. kernel auto-selects container init to freeze > > > > Note, auto-select part was dropped, userspace is required to pass pid of > > container init exactly. This was done to keep semantic of checkpoint(2) > > small and extendable. > > sys_checkpoint() in this patch still finds the child_reaper of the > passed-in pid, doesn't it? Or are you saying that a later patch in > this set removes that? I posted with auto-selecting? Code now looks like this: rcu_read_lock(); tsk = find_task_by_vpid(pid); if (tsk) { struct nsproxy *nsproxy; nsproxy = task_nsproxy(tsk); if (nsproxy) { init_tsk = nsproxy->pid_ns->child_reaper; if (init_tsk != tsk) init_tsk = NULL; } else init_tsk = NULL; if (init_tsk) get_task_struct(init_tsk); } rcu_read_unlock(); This is to buy as little semantics on checkpoint(2) as possible. If users later will complain that it's for some reason hard to see who is root of container, it could be added. _______________________________________________ Containers mailing list Containers@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/containers