[CRIU] [PATCH v5 00/42] Nested pid namespaces support
Kirill Tkhai
ktkhai at virtuozzo.com
Fri May 5 09:12:09 PDT 2017
Hi,
this is the fifth version of the patchset. There were
deleted the hunks, which made pstree halpers without
CLONE_FILES. See [2-6/42] for the details.
---
Kirill Tkhai (42):
pstree: Implement free_pstree_item() helper
ns: Do not change net_ns in prepare_net_namespaces()
mnt: Put root fd to fdstore
pstree: Change type of init_pstree_helper() and check for parent
files: Make possible task helpers to use shared_fdt_prepare()
cr-restore: Open transport socket earlier
zdtm: Add pidns00 test
zdtm: Add pidns01 test
pid_ns: Implement pid_ns_root_off()
pstree: Change arguments in parse_pid_status()
pstree: Introduce PID_SIZE() helper
pstree: Use thread group leader level of pid to allocate threads
pstree: Move thread allocation up and do cleanup
pstree: Pre-dump ns ids before tasks
pstree: Collect NSpid, NSsid and NStgid when possible
pstree: Skip zombie dumping tricks if there is kdat.has_nspid
zombie: Kill by last_level_pid, not by vpid
images: Add NSpids pstree descriptions
pstree: Dump and restore NSpid, NSsid etc
pstree: Make get_free_pid() work for different pid_ns and export it
pstree: Extract __pstree_item_by_virt() to act on any pid_ns
ns: Reserve pid_ns helpers
restore: Implement set_next_pid() helper
pid: Always lock last pid file on clone()
pid: Add fdstore id for pid_ns descriptor
fdstore: Init fdstore earlier
pid: Save created pid_ns fd to fdstore
ns: Always start usernsd
pid: Add pid ns futex helper_created
ns: Install transport fd socket in usernsd
cr-restore: Add argument to criu_signals_setup()
ns: Add usernsd signal handler
pid: Create pid_ns helpers
pid: Wait till pid_ns created before we create a child of this ns
pid: Set pid_ns before we create a child
pid_ns: Set user_ns before creation of pid_ns
pid: Teach set_next_pid() working with nested pid_ns
restorer: Close transport socket later
restorer: Set NStids in all pid_ns for thread before we create it.
pid: Check for equality of getpid() of child to last_level_pid
pstree: Use CLONE_NEWPID only to create child reaper of pid_ns
ns: Nested pid_ns support
criu/cr-dump.c | 56 +++++-
criu/cr-restore.c | 356 ++++++++++++++++++++++++++++++++++-------
criu/files-reg.c | 6 -
criu/files.c | 20 +-
criu/include/namespaces.h | 17 ++
criu/include/proc_parse.h | 3
criu/include/pstree.h | 22 ++-
criu/include/restore.h | 3
criu/include/restorer.h | 6 +
criu/mount.c | 19 +-
criu/namespaces.c | 359 +++++++++++++++++++++++++++++++++++++++++
criu/net.c | 16 +-
criu/ns-common.c | 51 ++++++
criu/pie/restorer.c | 50 ++++--
criu/proc_parse.c | 81 +++++++++
criu/pstree.c | 259 ++++++++++++++++++++++--------
criu/seize.c | 41 +++--
criu/sk-unix.c | 11 +
images/pstree.proto | 17 +-
test/zdtm/static/Makefile | 2
test/zdtm/static/pidns00.c | 205 +++++++++++++++++++++++
test/zdtm/static/pidns00.desc | 1
test/zdtm/static/pidns01.c | 164 +++++++++++++++++++
test/zdtm/static/pidns01.desc | 1
test/zdtm/static/tun.desc | 2
25 files changed, 1558 insertions(+), 210 deletions(-)
create mode 100644 criu/ns-common.c
create mode 100644 test/zdtm/static/pidns00.c
create mode 100644 test/zdtm/static/pidns00.desc
create mode 100644 test/zdtm/static/pidns01.c
create mode 100644 test/zdtm/static/pidns01.desc
--
Signed-off-by: Kirill Tkhai <ktkhai at virtuozzo.com>
More information about the CRIU
mailing list