This is v6 of the 'Introduce CAP_CHECKPOINT_RESTORE' patchset. The changes to v5 are: * split patch dealing with /proc/self/exe into two patches: * first patch to enable changing it with CAP_CHECKPOINT_RESTORE and detailed history in the commit message * second patch changes -EINVAL to -EPERM * use kselftest_harness.h infrastructure for test * replace if (!capable(CAP_SYS_ADMIN) || !capable(CAP_CHECKPOINT_RESTORE)) with if (!checkpoint_restore_ns_capable(&init_user_ns)) Adrian Reber (5): capabilities: Introduce CAP_CHECKPOINT_RESTORE pid: use checkpoint_restore_ns_capable() for set_tid pid_namespace: use checkpoint_restore_ns_capable() for ns_last_pid proc: allow access in init userns for map_files with CAP_CHECKPOINT_RESTORE selftests: add clone3() CAP_CHECKPOINT_RESTORE test Nicolas Viennot (2): prctl: Allow local CAP_CHECKPOINT_RESTORE to change /proc/self/exe prctl: exe link permission error changed from -EINVAL to -EPERM fs/proc/base.c | 8 +- include/linux/capability.h | 6 + include/uapi/linux/capability.h | 9 +- kernel/pid.c | 2 +- kernel/pid_namespace.c | 2 +- kernel/sys.c | 13 +- security/selinux/include/classmap.h | 5 +- tools/testing/selftests/clone3/.gitignore | 1 + tools/testing/selftests/clone3/Makefile | 4 +- .../clone3/clone3_cap_checkpoint_restore.c | 177 ++++++++++++++++++ 10 files changed, 212 insertions(+), 15 deletions(-) create mode 100644 tools/testing/selftests/clone3/clone3_cap_checkpoint_restore.c base-commit: d31958b30ea3b7b6e522d6bf449427748ad45822 -- 2.26.2