diff options
author | Pau Espin Pedrol <pespin@sysmocom.de> | 2018-11-28 20:19:40 +0100 |
---|---|---|
committer | Pau Espin Pedrol <pespin@sysmocom.de> | 2018-12-05 16:06:47 +0000 |
commit | bbbc12148a7255ed57acc4a5b035877d822fbebf (patch) | |
tree | 7934791866c8c0f612f193a2ad49d2567cb2c1cf | |
parent | 35b979cc0c47cc59c3057a3cf01ca724e3bfe545 (diff) |
bsc: timeslot_fsm: Handle and ignore tear down of lchan during PDCH DEACT
lchan sends TS_EV_LCHAN_UNUSED to its parent (ts) during release time. It
was experimentally found that it can happen that an lchan can be terminated
while waiting for a PDCH DEACT (N)ACK response.
The fsm definition actually states that this event can be received in
state TS_ST_WAIT_PDCH_DEACT, but it was not handled before and as a result the
process aborted due to the default switch case.
Change-Id: If61493e7d5449bf2c2de9fd34cdf2410625e92ac
-rw-r--r-- | src/osmo-bsc/timeslot_fsm.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/osmo-bsc/timeslot_fsm.c b/src/osmo-bsc/timeslot_fsm.c index 1b77ab277..91b6b54ea 100644 --- a/src/osmo-bsc/timeslot_fsm.c +++ b/src/osmo-bsc/timeslot_fsm.c @@ -534,6 +534,10 @@ static void ts_fsm_wait_pdch_deact(struct osmo_fsm_inst *fi, uint32_t event, voi } } + case TS_EV_LCHAN_UNUSED: + /* ignored */ + return; + default: OSMO_ASSERT(false); } |