Kees Cook
e953aeaa91
selftests/clone3: Avoid OS-defined clone_args
...
As the UAPI headers start to appear in distros, we need to avoid
outdated versions of struct clone_args to be able to test modern
features, named "struct __clone_args". Additionally update the struct
size macro names to match UAPI names.
Acked-by: Christian Brauner <christian.brauner@ubuntu.com >
Link: https://lore.kernel.org/lkml/20200921075432.u4gis3s2o5qrsb5g@wittgenstein/
Signed-off-by: Kees Cook <keescook@chromium.org >
2020-10-08 13:17:25 -07:00
Kees Cook
51ad5b54b6
selftests/clone3: Reorder reporting output
...
Selftest output reporting was happening before the TAP headers and plan
had been emitted. Move the first test reports later.
Acked-by: Christian Brauner <christian.brauner@ubuntu.com >
Signed-off-by: Kees Cook <keescook@chromium.org >
Signed-off-by: Shuah Khan <skhan@linuxfoundation.org >
2020-07-06 15:58:49 -06:00
Christian Brauner
11fde161ab
selftests/clone3: skip if clone3() is ENOSYS
...
If the clone3() syscall is not implemented we should skip the tests.
Fixes: 41585bbeee ("selftests: add tests for clone3() with *set_tid")
Fixes: 17a810699c ("selftests: add tests for clone3()")
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com >
2019-11-18 08:59:03 +01:00
Andrei Vagin
a019ff3b8b
selftests/clone3: check that all pids are released on error paths
...
This is a regression test case for an issue when pids have not been
released on error paths.
Signed-off-by: Andrei Vagin <avagin@gmail.com >
Link: https://lore.kernel.org/r/20191118064750.408003-3-avagin@gmail.com
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com >
2019-11-18 08:57:59 +01:00
Andrei Vagin
28df751539
selftests/clone3: report a correct number of fails
...
In clone3_set_tid, a few test cases are running in a child process. And
right now, if one of these test cases fails, the whole test will exit
with the success status.
Fixes: 41585bbeee ("selftests: add tests for clone3() with *set_tid")
Signed-off-by: Andrei Vagin <avagin@gmail.com >
Link: https://lore.kernel.org/r/20191118064750.408003-2-avagin@gmail.com
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com >
2019-11-18 08:57:54 +01:00
Andrei Vagin
4f5c289ea6
selftests/clone3: flush stdout and stderr before clone3() and _exit()
...
Buffers have to be flushed before clone3() to avoid double messages in
the log.
Fixes: 41585bbeee ("selftests: add tests for clone3() with *set_tid")
Signed-off-by: Andrei Vagin <avagin@gmail.com >
Link: https://lore.kernel.org/r/20191118064750.408003-1-avagin@gmail.com
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com >
2019-11-18 08:57:23 +01:00
Adrian Reber
41585bbeee
selftests: add tests for clone3() with *set_tid
...
This tests clone3() with *set_tid to see if all desired PIDs are working
as expected. The tests are trying multiple invalid input parameters as
well as creating processes while specifying a certain PID in multiple
PID namespaces at the same time.
Additionally this moves common clone3() test code into clone3_selftests.h.
Signed-off-by: Adrian Reber <areber@redhat.com >
Acked-by: Christian Brauner <christian.brauner@ubuntu.com >
Link: https://lore.kernel.org/r/20191115123621.142252-2-areber@redhat.com
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com >
2019-11-15 23:49:51 +01:00