[CRIU] [PATCH RESEND 0/4] Fix restore of tasks having zombie pgid
Andrei Vagin
avagin at virtuozzo.com
Tue Jan 2 20:51:17 MSK 2018
Applied, thanks!
On Thu, Dec 28, 2017 at 01:50:29PM +0300, Kirill Tkhai wrote:
> (RESENDING because patchwork breaks on [4/4] commit message)
>
> This problem originally was detected on Virtuozzo 7 criu package
> and is connected with tasks having zombie sid. For criu-dev
> it's actual for pgid inherited from a zombie.
>
> The problem is a zombie may be choosen as parent for a task helper.
> Zombie does not expect its children may exit, and it's being blaimed
> by generic SIGCHLD handler in this case. See patch [3/4] for details.
> Also, there is a problem that prepare_fds() is not called for zombie
> for such cases. Zombie does not have open files, but it shares fdt
> with task helper and must do that just to increment fdt::fdt_lock.
> See patch [2/4] for details. Patch [4/4] contains the test.
>
> https://travis-ci.org/tkhai/criu/builds/322479960
>
> ---
>
> Kirill Tkhai (4):
> zdtm: Export sys_clone_unified() to headers
> restore: Call prepare_fds() in restore_one_zombie()
> restore: Split restore_one_helper() and wait exiting zombie children
> zdtm: Add zombie01 test
>
>
> criu/cr-restore.c | 36 ++++++++++++------
> test/zdtm/lib/zdtmtst.h | 2 +
> test/zdtm/static/Makefile | 1 +
> test/zdtm/static/zombie01.c | 80 ++++++++++++++++++++++++++++++++++++++++
> test/zdtm/static/zombie01.desc | 1 +
> 5 files changed, 107 insertions(+), 13 deletions(-)
> create mode 100644 test/zdtm/static/zombie01.c
> create mode 100644 test/zdtm/static/zombie01.desc
>
> --
> Signed-off-by: Kirill Tkhai <ktkhai at virtuozzo.com>
More information about the CRIU
mailing list