[CRIU] Bad commit
Cyrill Gorcunov
gorcunov at gmail.com
Thu Aug 14 05:41:04 PDT 2014
On Thu, Aug 14, 2014 at 04:32:46PM +0400, Pavel Emelyanov wrote:
> On 08/14/2014 04:18 PM, Cyrill Gorcunov wrote:
> > On Thu, Aug 14, 2014 at 04:16:04PM +0400, Cyrill Gorcunov wrote:
> >> Guys, commit
> >>
> >> [root at pcs criu]# git bisect good
> >> e301b1d56c5c56155c68fa2f6ef4f5a716d0217b is the first bad commit
> >> commit e301b1d56c5c56155c68fa2f6ef4f5a716d0217b
> >> Author: Tycho Andersen <tycho.andersen at canonical.com>
> >> Date: Wed Aug 13 21:23:00 2014 +0400
> >>
> >> restore: --restore-detached implies CLONE_PARENT
> >>
> >> We need to use CLONE_PARENT to prevent processes from immediately dying due to
> >> pdeath_sig when they are restored in detached mode.
> >>
> >> [ xemul: One more place which requires check for restore-detach
> >> is in sigactions preparation ]
> >>
> >> Signed-off-by: Tycho Andersen <tycho.andersen at canonical.com>
> >> Signed-off-by: Pavel Emelyanov <xemul at parallels.com>
> >>
> >> ruined my restore process for the container :(
>
> For what container?
centos6
>
> >> (00.039241) Error (cr-restore.c:1006): Can't fork for 1: Invalid argument
> >
> > It's because of
> >
> > copy_process
> > ...
> > /*
> > * Siblings of global init remain as zombies on exit since they are
> > * not reaped by their parent (swapper). To solve this and to avoid
> > * multi-rooted process trees, prevent global and container-inits
> > * from creating siblings.
> > */
> > if ((clone_flags & CLONE_PARENT) &&
> > current->signal->flags & SIGNAL_UNKILLABLE)
>
> UNKILLABLE??? The caller of criu is unkillable?! Why?
>
> > return ERR_PTR(-EINVAL);
> >
> > I think the commit should be reverted.
>
> The same should be true for criu_restore_sub() as it uses the same
> technique. Let's investigate the issue.
yes...
More information about the CRIU
mailing list