]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
selftests/namespaces: Skip efault tests when listns() is not available
authorRicardo B. Marlière <rbm@suse.com>
Tue, 7 Apr 2026 14:35:47 +0000 (11:35 -0300)
committerChristian Brauner <brauner@kernel.org>
Mon, 11 May 2026 10:25:32 +0000 (12:25 +0200)
commit2509bdc8a47c2f13471ac43ec989c778ed304d77
tree03d00b181e20e73012ba275760818c514c1f466f
parentf36ddf9317dc99019a498af3853d547de1f62e5f
selftests/namespaces: Skip efault tests when listns() is not available

When listns() is not implemented the iterator child detects ENOSYS and
exits cleanly with status PIDFD_SKIP before the parent has a chance to
signal it.  The parent sends SIGKILL (which is a harmless no-op at that
point) and then calls waitpid(), obtaining a normal-exit status.  The
subsequent ASSERT_TRUE(WIFSIGNALED(status)) therefore fails, causing the
three EFAULT-focused tests to report FAIL rather than SKIP on kernels that
do not yet carry listns() support.

After collecting the iterator's exit status, check whether it exited with
PIDFD_SKIP and issue a SKIP verdict in that case, consistent with the
behaviour of every other listns test that already handles ENOSYS correctly.

Signed-off-by: Ricardo B. Marlière <rbm@suse.com>
Link: https://patch.msgid.link/20260407-selftests-namespaces_fixes-v1-3-59109909d88b@suse.com
Signed-off-by: Christian Brauner <brauner@kernel.org>
tools/testing/selftests/namespaces/listns_efault_test.c