diff mbox series

[3/3] selftests/resctrl: Kill the child process created by fork() when the SIGTERM signal comes

Message ID 20211110093315.3219191-4-tan.shaopeng@jp.fujitsu.com (mailing list archive)
State Accepted
Commit f54b3278164405fdd4f5f1b53f0d04e34ade27a6
Headers show
Series selftests/resctrl: Add resctrl_tests into kselftest set | expand

Commit Message

Shaopeng Tan Nov. 10, 2021, 9:33 a.m. UTC
From: "Tan, Shaopeng" <tan.shaopeng@jp.fujitsu.com>

In kselftest framework there is a limited time for each sub test,
when the time limit comes SIGTEM signal will be sent to sub test by
"timeout --foregroup <seconds>" command.
In resctrl_tests, fork() is used to create a child process.
This commit ensures child process to be killed before parent process
exiting if SIGTERM signal comes.

Signed-off-by: Shaopeng Tan <tan.shaopeng@jp.fujitsu.com>
---
 tools/testing/selftests/resctrl/resctrl_val.c | 1 +
 1 file changed, 1 insertion(+)
diff mbox series

Patch

diff --git a/tools/testing/selftests/resctrl/resctrl_val.c b/tools/testing/selftests/resctrl/resctrl_val.c
index 9522434..b32b963 100644
--- a/tools/testing/selftests/resctrl/resctrl_val.c
+++ b/tools/testing/selftests/resctrl/resctrl_val.c
@@ -678,6 +678,7 @@  int resctrl_val(char **benchmark_cmd, struct resctrl_val_param *param)
 	sigemptyset(&sigact.sa_mask);
 	sigact.sa_flags = SA_SIGINFO;
 	if (sigaction(SIGINT, &sigact, NULL) ||
+	    sigaction(SIGTERM, &sigact, NULL) ||
 	    sigaction(SIGHUP, &sigact, NULL)) {
 		perror("# sigaction");
 		ret = errno;