summaryrefslogtreecommitdiff
path: root/tools/perf/scripts/python
diff options
context:
space:
mode:
authorKees Cook <kees@kernel.org>2026-10-06 01:56:27 -0700
committerKees Cook <kees@kernel.org>2026-10-06 02:02:49 -0700
commite32008340585a12783045c4426fbb963cfa11b7e (patch)
treee86d81666317e2658d12ecfc988c1c4c834dcd11 /tools/perf/scripts/python
parent9e9bd8f8ac02012176f9da75823c030e2c5f4bbc (diff)
downloadlinux-next-e32008340585a12783045c4426fbb963cfa11b7e.tar.gz
linux-next-e32008340585a12783045c4426fbb963cfa11b7e.zip
selftests/seccomp: Split fork_and_close into clone and close tests
fork_and_close checked three things against one listener: that a restarted clone3() creates exactly one child, that a restarted close() releases its descriptor, and that a supervisor error reaches the caller after a restart. A three-pass loop chose what each pass did for each variant, and a failure in the first check kept the others from running. Split it into notification_restart.clone and notification_restart.close, each with one mediated syscall, one signal, and one expected result per variant. They share helpers that fork the filtered child, receive its listener, and interrupt its notification. notification_restart_child() now uses the same fork and report helpers, and the filter flags are computed in one place. Drop the supervisor error check, which failed_receive already covers. Tests run on ARCH=x86_64 defconfig with CONFIG_PROVE_LOCKING=y, CONFIG_DEBUG_ATOMIC_SLEEP=y, and CONFIG_DEBUG_LIST=y under QEMU, built with GCC 16.2.0: seccomp_bpf passes 137/137 with 5 skips, and the 28 notification_restart tests pass in 25 of 25 runs at -smp 2 and -smp 4. On v7.3-rc2 the restart and both variants fail and the others pass. Assisted-by: LLM Signed-off-by: Kees Cook <kees@kernel.org>
Diffstat (limited to 'tools/perf/scripts/python')
0 files changed, 0 insertions, 0 deletions