linux-uconsole/tools/testing/selftests
Breno Leitao 8e676abeaf selftests/powerpc: Kill child processes on SIGINT
[ Upstream commit 7c27a26e1e ]

There are some powerpc selftests, as tm/tm-unavailable, that run for a long
period (>120 seconds), and if it is interrupted, as pressing CRTL-C
(SIGINT), the foreground process (harness) dies but the child process and
threads continue to execute (with PPID = 1 now) in background.

In this case, you'd think the whole test exited, but there are remaining
threads and processes being executed in background. Sometimes these
zombies processes are doing annoying things, as consuming the whole CPU or
dumping things to STDOUT.

This patch fixes this problem by attaching an empty signal handler to
SIGINT in the harness process. This handler will interrupt (EINTR) the
parent process waitpid() call, letting the code to follow through the
normal flow, which will kill all the processes in the child process group.

This patch also fixes a typo.

Signed-off-by: Breno Leitao <leitao@debian.org>
Signed-off-by: Gustavo Romero <gromero@linux.vnet.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-09-15 09:40:39 +02:00
..
breakpoints selftests: breakpoint: Actually build it 2015-11-03 16:55:08 -07:00
capabilities selftests/capabilities: Fix the test_execve test 2017-07-21 07:44:58 +02:00
cpu-hotplug selftests: change cpu on-off-test.sh name to be unique 2015-04-01 10:32:52 -06:00
efivarfs efi: Make efivarfs entries immutable by default 2016-03-03 15:07:09 -08:00
exec selftests: exec: revert to default emit rule 2015-09-14 16:45:05 -06:00
firmware test_firmware: fix setting old custom fw path back on exit, second try 2018-05-16 10:06:49 +02:00
ftrace selftests/ftrace: Add snapshot and tracing_on test case 2018-09-05 09:18:36 +02:00
futex tools:testing/selftests: fix typo in futex/README 2015-11-16 19:22:49 -07:00
ipc selftest/ipc: enable cross compilation 2015-04-02 12:41:52 -06:00
kcmp selftests: Set CC using CROSS_COMPILE once in lib.mk 2015-03-19 15:16:51 -06:00
lib selftests: run lib/test_printf module 2015-11-06 17:50:42 -08:00
membarrier membarrier: clean up selftest 2015-09-22 15:09:53 -07:00
memfd selftests: memfd: add config fragment for fuse 2018-05-30 07:48:58 +02:00
memory-hotplug selftests: Change memory on-off-test.sh name to be unique 2015-04-01 10:33:02 -06:00
mount selftests/mount: output WARN messages when mount test skipped 2015-05-26 15:58:06 -06:00
mqueue selftests: Add missing #include directives 2015-11-03 16:53:53 -07:00
net selftests/net: fixes psock_fanout eBPF test case 2018-05-30 07:49:16 +02:00
powerpc selftests/powerpc: Kill child processes on SIGINT 2018-09-15 09:40:39 +02:00
pstore selftests: pstore: return Kselftest Skip code for skipped tests 2018-08-24 13:26:54 +02:00
ptrace selftests: Introduce minimal shared logic for running tests 2015-03-13 15:13:40 -06:00
rcutorture rcutorture/configinit: Fix build directory error message 2018-03-22 09:23:30 +01:00
seccomp seccomp: Add filter flag to opt-out of SSB mitigation 2018-07-25 10:18:27 +02:00
size selftests: Set CC using CROSS_COMPILE once in lib.mk 2015-03-19 15:16:51 -06:00
static_keys selftests: static_keys: return Kselftest Skip code for skipped tests 2018-08-24 13:26:54 +02:00
sync selftests: sync: add config fragment for testing sync framework 2018-08-24 13:26:54 +02:00
sysctl selftests: Add install target 2015-03-13 15:21:56 -06:00
timers linux-kselftest-4.4-rc1 2015-11-10 20:46:45 -08:00
user selftests: user: return Kselftest Skip code for skipped tests 2018-08-24 13:26:54 +02:00
vm Revert "userfaultfd: selftest: vm: allow to build in vm/ directory" 2018-01-17 09:35:29 +01:00
x86 selftests/x86/sigreturn/64: Fix spurious failures on AMD CPUs 2018-08-24 13:26:56 +02:00
zram selftests: zram: return Kselftest Skip code for skipped tests 2018-08-24 13:26:54 +02:00
gen_kselftest_tar.sh selftests: Add tool to generate kselftest tar archive 2015-03-24 08:43:19 -06:00
kselftest.h kselftest: Add exit code defines 2015-05-26 15:58:08 -06:00
kselftest_install.sh selftests: Add kselftest install tool 2015-03-24 08:43:05 -06:00
lib.mk selftests: change install command to rsync 2015-09-14 16:43:51 -06:00
Makefile selftests: Print the test we're running to /dev/kmsg 2018-05-30 07:49:10 +02:00