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.
이 커밋은 다음에 포함됨:
Edgar Gabriel
2022-07-15 16:17:53 +00:00
부모 da31537ec7
커밋 2b1d5d3bc1
+5 -1
파일 보기
@@ -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)
{