[CRIU] [PATCH v4 00/31] Nested user namespaces support
Kirill Tkhai
ktkhai at virtuozzo.com
Wed Feb 22 03:30:24 PST 2017
Hi,
this is the 4th version of nested user namespaces support.
In comparation to v3 there were made:
1)Removed pid and net extentions from new ns image, and the image is renamed
2)Fixed 2 erratums with uid/gid
3)Couple more of fixes
https://travis-ci.org/tkhai/criu/builds/204155411
---
Kirill Tkhai (31):
zdtm: Add userns00 test
zdtm: Add userns01 test
ns: Set nested namespaces hookups
ns: Set hookups for all namespaces
ns: Change arguments of dump_user_ns()
user_ns: Make collect_user_ns() allocate child UsernsEntry mappings
user_ns: Make host_id() working with any mapping and rename it
ns: Rename and export userns_id() and INVALID_ID
ns: Implement target_userns_{u,g}id() and root_userns_{u,g}id()
ns: Add user and pid ns_id on restore
user_ns: Name loading UsernsEntry mappings on restore "old format"
ns: Provide the case when root_item has !NS_ROOT user_ns in rst_add_ns_id()
ns: Set pointer to root_user_ns in ns_ids
ns: Implement dup_userns_entry()
images: Move uid_gid_extent and userns_entry descriptions
proto: Add ns_entry description
ns: Write/read ns entries in new way
ns: Make prepare_userns() have ns map parameter
ns: Make write_id_map() use CR_PROC_FD_OFF
proc: Close CR_PROC_FD_OFF and TRANSPORT_FD_OFF later
utils: Move getting real pid functionality to separate function
ns: Generate user_ns tree
user_ns: Set user_ns before net_ns creation
utils: Introduce open_fd_of_real_pid()
ns: Implement set_user_ns()
ns: Set target user_ns after net_ns is set
shmem: Fixup shmem_wait_and_open() opens foreign /proc/[pid]/fd/[i]
rst: Pass pstree_item argument to alloc_groups_copy_creds()
ns: Dump creds xids in root_user_ns
ns: Convert task cred's xids to target user ns
ns: Allow nested user namespaces
criu/cgroup.c | 2
criu/cr-dump.c | 6
criu/cr-restore.c | 82 +++-
criu/files.c | 1
criu/image-desc.c | 1
criu/include/cgroup.h | 2
criu/include/image-desc.h | 1
criu/include/magic.h | 1
criu/include/namespaces.h | 37 ++
criu/include/parasite-syscall.h | 4
criu/include/protobuf-desc.h | 1
criu/include/pstree.h | 1
criu/include/util.h | 3
criu/namespaces.c | 787 ++++++++++++++++++++++++++++++++++++---
criu/net.c | 43 ++
criu/parasite-syscall.c | 42 +-
criu/pie/restorer.c | 41 +-
criu/protobuf-desc.c | 2
criu/pstree.c | 14 +
criu/shmem.c | 4
criu/util.c | 48 ++
images/Makefile | 1
images/ns.proto | 19 +
images/userns.proto | 12 -
lib/py/images/images.py | 1
test/zdtm/static/Makefile | 2
test/zdtm/static/userns00.c | 296 +++++++++++++++
test/zdtm/static/userns00.desc | 1
test/zdtm/static/userns01.c | 150 +++++++
test/zdtm/static/userns01.desc | 1
30 files changed, 1463 insertions(+), 143 deletions(-)
delete mode 100644 images/userns.proto
create mode 100644 test/zdtm/static/userns00.c
create mode 100644 test/zdtm/static/userns00.desc
create mode 100644 test/zdtm/static/userns01.c
create mode 100644 test/zdtm/static/userns01.desc
--
Signed-off-by: Kirill Tkhai <ktkhai at virtuozzo.com>
More information about the CRIU
mailing list