[for-next][PATCH 15/23] Ktest: Add SigInt handling

From: Steven Rostedt
Date: Sun Apr 08 2018 - 16:21:13 EST


From: Tim Tianyang Chen <tianyang.chen@xxxxxxxxxx>

User can cancel tests and specify handler's behavior using option
'EMAIL_WHEN_CANCELED'.

Link: http://lkml.kernel.org/r/1522094884-22718-3-git-send-email-tianyang.chen@xxxxxxxxxx

Suggested-by: Dhaval Giani <dhaval.giani@xxxxxxxxxx>
Signed-off-by: Tim Tianyang Chen <tianyang.chen@xxxxxxxxxx>
Signed-off-by: Steven Rostedt (VMware) <rostedt@xxxxxxxxxxx>
---
tools/testing/ktest/ktest.pl | 10 ++++++++++
1 file changed, 10 insertions(+)

diff --git a/tools/testing/ktest/ktest.pl b/tools/testing/ktest/ktest.pl
index bb43f8631c95..1646af526089 100755
--- a/tools/testing/ktest/ktest.pl
+++ b/tools/testing/ktest/ktest.pl
@@ -4144,6 +4144,16 @@ sub send_email {
}
}

+sub cancel_test {
+ if ($email_when_canceled) {
+ send_email("KTEST: Your [$test_type] test was cancelled",
+ "Your test started at $script_start_time was cancelled: sig int");
+ }
+ die "\nCaught Sig Int, test interrupted: $!\n"
+}
+
+$SIG{INT} = qw(cancel_test);
+
# First we need to do is the builds
for (my $i = 1; $i <= $opt{"NUM_TESTS"}; $i++) {

--
2.16.3