Change in osmo-trx[master]: osmo-trx: Avoid handling signals after shutdown triggered

Pau Espin Pedrol gerrit-no-reply at lists.osmocom.org
Fri Mar 29 17:39:45 UTC 2019


Pau Espin Pedrol has uploaded this change for review. ( https://gerrit.osmocom.org/13467


Change subject: osmo-trx: Avoid handling signals after shutdown triggered
......................................................................

osmo-trx: Avoid handling signals after shutdown triggered

Recently a blocked osmo-trx process was found after ending SIGTERM to
it.
Apparently one thread was handling SIGTERM and calling fprintf()
(grabbing libc lock) while another thread was handling another signal
and also grabbing similar lock. Both thread looked deadlocked there.
Probably this change doesn't fix the block on its own, but at least
simplifies scenarios inside signal ctx which can go wrong.

Change-Id: If91621913b8b03d8a0f4c863be0b0d479f97e8a1
---
M Transceiver52M/osmo-trx.cpp
1 file changed, 6 insertions(+), 0 deletions(-)



  git pull ssh://gerrit.osmocom.org:29418/osmo-trx refs/changes/67/13467/1

diff --git a/Transceiver52M/osmo-trx.cpp b/Transceiver52M/osmo-trx.cpp
index 1f35cd8..a418c6e 100644
--- a/Transceiver52M/osmo-trx.cpp
+++ b/Transceiver52M/osmo-trx.cpp
@@ -164,6 +164,12 @@
 
 static void sig_handler(int signo)
 {
+
+    if (gshutdown)
+        /* We are in the middle of shutdown process, avoid any kind of extra
+           action like printing */
+        return;
+
 	fprintf(stdout, "signal %d received\n", signo);
 	switch (signo) {
 	case SIGINT:

-- 
To view, visit https://gerrit.osmocom.org/13467
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-trx
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: If91621913b8b03d8a0f4c863be0b0d479f97e8a1
Gerrit-Change-Number: 13467
Gerrit-PatchSet: 1
Gerrit-Owner: Pau Espin Pedrol <pespin at sysmocom.de>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20190329/e14a40a1/attachment.html>


More information about the gerrit-log mailing list