diff options
author | Neels Hofmeyr <neels@hofmeyr.de> | 2018-10-10 02:05:26 +0200 |
---|---|---|
committer | Neels Hofmeyr <neels@hofmeyr.de> | 2018-10-12 12:42:26 +0200 |
commit | 6fe125294b219a519c77f7140de26870d17bf40a (patch) | |
tree | c06f05cf56d3940de36f32be4d9416ea94ebae7c | |
parent | cd46adb91544acb42b0339028b23a152af019b5a (diff) |
lchan_fsm: notify conn of released lchan upon RF Release
Related: osmo-ttcn3-hacks If772dbbc5f9790d3f911465e1303dd0a99811154
Change-Id: I7621616c24588c2db15ad1ae7ca68cfa0fb76f66
-rw-r--r-- | src/osmo-bsc/lchan_fsm.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/osmo-bsc/lchan_fsm.c b/src/osmo-bsc/lchan_fsm.c index 9f2d6c382..39edaff6d 100644 --- a/src/osmo-bsc/lchan_fsm.c +++ b/src/osmo-bsc/lchan_fsm.c @@ -993,6 +993,13 @@ static void lchan_fsm_wait_rf_release_ack_onenter(struct osmo_fsm_inst *fi, uint { int rc; struct gsm_lchan *lchan = lchan_fi_lchan(fi); + + /* For planned releases, a conn has already forgotten about the lchan. And later on, in + * lchan_reset(), we make sure it does. But in case of releases from error handling, the + * conn might as well notice now already that its lchan is becoming unusable. */ + if (lchan->conn) + gscon_forget_lchan(lchan->conn, lchan); + rc = rsl_tx_rf_chan_release(lchan); if (rc) LOG_LCHAN(lchan, LOGL_ERROR, "Failed to Tx RSL RF Channel Release: rc=%d %s\n", |