Harald Welte has submitted this change and it was merged. ( 
https://gerrit.osmocom.org/11312 )

Change subject: lchan_fsm: fix failure handling: notify conn when released
......................................................................

lchan_fsm: fix failure handling: notify conn when released

Usually, conn->lchan is set to NULL before/upon releasing it. However, if the
lchan is still associated with a conn upon/after release, make sure the conn
realizes it has no lchan and sends a BSSMAP Clear Request to the MSC.

lchan_reset() is the last step before an lchan is fully unused. In there, make
sure to notify any conn that might still be associated, with
gscon_forget_lchan().

lchan_cleanup() does the same, but in fact this is only called when an lchan is
*deallocated*, but instead it usually merely goes to the UNUSED state.

It may make sense to call gscon_forget_lchan() sooner, e.g. when entering a
releasing state. This here nevertheless is a final safeguard.

Related: osmo-ttcn3-hacks If772dbbc5f9790d3f911465e1303dd0a99811154
Change-Id: I88337a18246c44ba48da64bb611a3cbb647a750e
---
M src/osmo-bsc/lchan_fsm.c
1 file changed, 3 insertions(+), 0 deletions(-)

Approvals:
  Harald Welte: Looks good to me, approved
  Jenkins Builder: Verified



diff --git a/src/osmo-bsc/lchan_fsm.c b/src/osmo-bsc/lchan_fsm.c
index 4aaedde..9f2d6c3 100644
--- a/src/osmo-bsc/lchan_fsm.c
+++ b/src/osmo-bsc/lchan_fsm.c
@@ -368,6 +368,9 @@
 {
        LOG_LCHAN(lchan, LOGL_DEBUG, "Clearing lchan state\n");

+       if (lchan->conn)
+               gscon_forget_lchan(lchan->conn, lchan);
+
        if (lchan->rqd_ref) {
                talloc_free(lchan->rqd_ref);
                lchan->rqd_ref = NULL;

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

Gerrit-Project: osmo-bsc
Gerrit-Branch: master
Gerrit-MessageType: merged
Gerrit-Change-Id: I88337a18246c44ba48da64bb611a3cbb647a750e
Gerrit-Change-Number: 11312
Gerrit-PatchSet: 2
Gerrit-Owner: Neels Hofmeyr <nhofm...@sysmocom.de>
Gerrit-Reviewer: Harald Welte <lafo...@gnumonks.org>
Gerrit-Reviewer: Jenkins Builder (1000002)

Reply via email to