summaryrefslogtreecommitdiffstats
path: root/src/fsm.c
diff options
context:
space:
mode:
authorNeels Hofmeyr <nhofmeyr@sysmocom.de>2016-12-15 02:26:03 +0100
committerNeels Hofmeyr <nhofmeyr@sysmocom.de>2016-12-16 13:39:24 +0100
commit2ae5f186929a720b5604e2bd19ef54606b37fb87 (patch)
treeae3d6dd5e037697327f29f2e4a471b6977988fd6 /src/fsm.c
parent5c5c78aacd4cd15e1147c2e5dbb4dc9fca4da7e5 (diff)
fsm: explicitly log removal from parent fsm
Since removing an FSM from its parent twice causes a segfault, it is very interesting to see when that is attempted. Removing could be made more robust, but logging is interesting for investigating why an FSM is being removed twice in the first place (currently the case in openbsc's vlr_lu_fsm). Change-Id: Idec6b7aa5344f1e903c9d2aa2a3640cab0d70fb0
Diffstat (limited to 'src/fsm.c')
-rw-r--r--src/fsm.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/fsm.c b/src/fsm.c
index d251cfdb..67175388 100644
--- a/src/fsm.c
+++ b/src/fsm.c
@@ -442,6 +442,9 @@ void _osmo_fsm_inst_term(struct osmo_fsm_inst *fi,
}
/* delete ourselves from the parent */
+ if (parent)
+ LOGPFSMSRC(fi, file, line, "Removing from parent %s\n",
+ osmo_fsm_inst_name(parent));
llist_del(&fi->proc.child);
/* call destructor / clean-up function */