[CRIU] [PATCH v2 0/3] Create pid_ns helpers as children of criu main task

Andrei Vagin avagin at virtuozzo.com
Thu Jul 20 21:17:49 MSK 2017


On Thu, Jul 20, 2017 at 10:51:32AM -0700, Andrei Vagin wrote:
> On Fri, Jul 14, 2017 at 03:40:05PM +0300, Kirill Tkhai wrote:
> > This patchset makes pid_ns helpers to be childred
> > of criu main task. The main goal is to make fail
> > path of restore more stable. Now we kill the helpers
> > from usernsd, but there is possible a situation,
> > that someone was killed without releasing of usernsd
> > mutex. This case, we may never destroy pid_ns helpers
> > and may hang. Creating them as children of criu main
> > task decides such problem: we just kill and wait
> > them directly.
> >
> 
> BTW: may be we need to set PR_SET_PDEATHSIG for them? criu may
> segfaulted too.

The idea to create helper in usernsd and destrey them from criu
looks strange. We want to be sure that all processes will be killed in a
case when criu crashes. Does this patch solves this problem?

> 
> > https://travis-ci.org/tkhai/criu/builds/253543048
> > 
> > v2: Make the code more compact
> > 
> > ---
> > 
> > Kirill Tkhai (3):
> >       pid_ns: Extract functionality of exit of pid_ns helper in function
> >       utils: Add sys_clone_unified()
> >       ns: Make pid_ns helpers as children of criu main process
> > 
> > 
> >  criu/cr-restore.c         |    4 ++++
> >  criu/include/namespaces.h |    1 +
> >  criu/include/util.h       |    3 +++
> >  criu/namespaces.c         |   49 ++++++++++++++-------------------------------
> >  criu/util.c               |   25 ++++++++++++++---------
> >  test/zdtm/lib/test.c      |   23 +++++++++++++--------
> >  6 files changed, 52 insertions(+), 53 deletions(-)
> > 
> > --
> > Signed-off-by: Kirill Tkhai <ktkhai at virtuozzo.com>
> _______________________________________________
> CRIU mailing list
> CRIU at openvz.org
> https://lists.openvz.org/mailman/listinfo/criu


More information about the CRIU mailing list