Project

General

Profile

Actions

Bug #5334

closed

stacktrace-on-signal: Kills all processes in the same process group

Added by Jeff Lucovsky 5 months ago. Updated 5 months ago.

Status:
Rejected
Priority:
Normal
Assignee:
Target version:
Affected Versions:
Effort:
Difficulty:
Label:

Description

A test in our CI pipeline tickled a Suricata segfault, `stacktrace-on-signal` functionality was enabled and our test driver was killed when re-raising the signal to the whole process group rather than just the Suricata process.

Will open a PR.

Author: Arne Welzel <arne.welzel@corelight.com>
Date:   Wed May 4 20:06:36 2022 +0200

    stacktrace-on-signal: Use kill(getpid(), sig_num)

    kill(0, ...) re-raises the signal to every processes in the process
    group which may impact unrelated processes.

    Concretely, in our CI pipeline, a segfaulting Suricata process killed
    the test driver.

diff --git a/src/suricata.c b/src/suricata.c
index 24ffa0fe6..b246ce13f 100644
--- a/src/suricata.c
+++ b/src/suricata.c
@@ -342,7 +342,7 @@ static void SignalHandlerUnexpected(int sig_num, siginfo_t *info, void *context)

 terminate:
     // Propagate signal to watchers, if any
-    kill(0, sig_num);
+    kill(getpid(), sig_num);
 }

Related issues 1 (1 open0 closed)

Copied from Bug #5331: stacktrace-on-signal: Kills all processes in the same process groupResolvedArne WelzelActions
Actions #1

Updated by Jeff Lucovsky 5 months ago

  • Copied from Bug #5331: stacktrace-on-signal: Kills all processes in the same process group added
Actions #2

Updated by Jeff Lucovsky 5 months ago

  • Status changed from Assigned to Rejected
Actions

Also available in: Atom PDF