[CRIU] [PATCH 0/4] Fix restore of tasks having zombie pgid

Kirill Tkhai ktkhai at virtuozzo.com
Thu Dec 28 12:38:31 MSK 2017


Sent a message a little bit earlier. The below the continue.

On 28.12.2017 12:35, Kirill Tkhai wrote:
> 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