intercept SIGUSR2 in RCCL

add support for intercepting SIGUSR2 in RCCL. This signal will
not terminate the execution of the application, but print the stacktrace
of the process that the signal was sent to instead.
This commit is contained in:
Edgar Gabriel
2022-07-15 16:17:53 +00:00
rodzic da31537ec7
commit 2b1d5d3bc1
+5 -1
Wyświetl plik
@@ -58,6 +58,10 @@ void sig_handler(int signum)
free (strings);
#endif
if (signum == SIGUSR2) {
return;
}
exit (-1);
}
@@ -69,7 +73,7 @@ void RegisterSignalHandlers()
{
INFO(NCCL_INIT, "Enabling custom signal handler");
std::vector<int> signalsToCatch = {SIGILL, SIGBUS, SIGFPE, SIGSEGV};
std::vector<int> signalsToCatch = {SIGILL, SIGBUS, SIGFPE, SIGSEGV, SIGUSR2};
for (auto signum : signalsToCatch)
{