<p>laforge <strong>merged</strong> this change.</p><p><a href="https://gerrit.osmocom.org/c/osmo-msc/+/14500">View Change</a></p><div style="white-space:pre-wrap">Approvals:
  pespin: Looks good to me, but someone else must approve
  laforge: Looks good to me, approved
  Jenkins Builder: Verified

</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">libmsc/gsm_09_11.c: fix broken reference counting for vsub<br><br>In gsm0911_gsup_rx() we do call vlr_subscr_find_by_imsi(), which<br>increases subscriber's reference count by one using the function<br>name as the token. However, we never release this token, so the<br>reference count grows on every received GSUP PROC-SS message.<br><br>Change-Id: I5540556b1c75f6873883e46b78656f31fc1ef186<br>---<br>M src/libmsc/gsm_09_11.c<br>M tests/msc_vlr/msc_vlr_test_ss.err<br>2 files changed, 36 insertions(+), 23 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/src/libmsc/gsm_09_11.c b/src/libmsc/gsm_09_11.c</span><br><span>index cd54703..c7b2155 100644</span><br><span>--- a/src/libmsc/gsm_09_11.c</span><br><span>+++ b/src/libmsc/gsm_09_11.c</span><br><span>@@ -424,8 +424,9 @@</span><br><span>     struct msgb *ss_msg;</span><br><span>         bool trans_end;</span><br><span>      struct msc_a *msc_a;</span><br><span style="color: hsl(0, 100%, 40%);">-    struct vlr_subscr *vsub = vlr_subscr_find_by_imsi(net->vlr, gsup_msg->imsi, __func__);</span><br><span style="color: hsl(120, 100%, 40%);">+  struct vlr_subscr *vsub;</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+  vsub = vlr_subscr_find_by_imsi(net->vlr, gsup_msg->imsi, __func__);</span><br><span>    if (!vsub) {</span><br><span>                 LOGP(DSS, LOGL_ERROR, "Rx %s for unknown subscriber, rejecting\n",</span><br><span>                      osmo_gsup_message_type_name(gsup_msg->message_type));</span><br><span>@@ -445,6 +446,9 @@</span><br><span>               osmo_gsup_message_type_name(gsup_msg->message_type),</span><br><span>                      gsup_msg->cause, gsup_msg->session_id);</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+                /* We don't need subscriber info anymore */</span><br><span style="color: hsl(120, 100%, 40%);">+               vlr_subscr_put(vsub, __func__);</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span>            if (!trans) {</span><br><span>                        LOGP(DSS, LOGL_ERROR, "No transaction found for "</span><br><span>                       "sid=0x%x, nothing to abort\n", gsup_msg->session_id);</span><br><span>@@ -477,14 +481,20 @@</span><br><span>                                           "SS/USSD transaction, rejecting %s\n",</span><br><span>                                             osmo_gsup_message_type_name(gsup_msg->message_type));</span><br><span>                       gsup_client_mux_tx_error_reply(gcm, gsup_msg, GMM_CAUSE_NET_FAIL);</span><br><span style="color: hsl(120, 100%, 40%);">+                    vlr_subscr_put(vsub, __func__);</span><br><span>                      return -EINVAL;</span><br><span>              }</span><br><span> </span><br><span>                /* Wait for Paging Response */</span><br><span style="color: hsl(0, 100%, 40%);">-          if (trans->paging_request)</span><br><span style="color: hsl(120, 100%, 40%);">+         if (trans->paging_request) {</span><br><span style="color: hsl(120, 100%, 40%);">+                       vlr_subscr_put(vsub, __func__);</span><br><span>                      return 0;</span><br><span style="color: hsl(120, 100%, 40%);">+             }</span><br><span>    }</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+ /* We don't need subscriber info anymore */</span><br><span style="color: hsl(120, 100%, 40%);">+       vlr_subscr_put(vsub, __func__);</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span>    /* (Re)schedule the inactivity timer */</span><br><span>      if (net->ncss_guard_timeout > 0) {</span><br><span>             osmo_timer_schedule(&trans->ss.timer_guard,</span><br><span>diff --git a/tests/msc_vlr/msc_vlr_test_ss.err b/tests/msc_vlr/msc_vlr_test_ss.err</span><br><span>index 7845c99..9f47dba 100644</span><br><span>--- a/tests/msc_vlr/msc_vlr_test_ss.err</span><br><span>+++ b/tests/msc_vlr/msc_vlr_test_ss.err</span><br><span>@@ -184,23 +184,24 @@</span><br><span> DREF msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: - rx_from_ms: now used by 1 (nc_ss)</span><br><span> <-- GSUP rx OSMO_GSUP_MSGT_PROC_SS_REQUEST: 20010809710000004026f03004200000013101033527a225020101302002013b301b04010f0416d9775d0e2ae3e965f73cfd7683d27310cd06bbc51a0d0a0103</span><br><span> DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + gsm0911_gsup_rx: now used by 4 (attached,active-conn,NCSS,gsm0911_gsup_rx)</span><br><span style="color: hsl(120, 100%, 40%);">+DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - gsm0911_gsup_rx: now used by 3 (attached,active-conn,NCSS)</span><br><span> DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: RAN encode: DTAP on GERAN-A</span><br><span> - DTAP --GERAN-A--> MS: GSM0480_MTYPE_RELEASE_COMPLETE: 8b2a1c27a225020101302002013b301b04010f0416d9775d0e2ae3e965f73cfd7683d27310cd06bbc51a0d</span><br><span> - DTAP matches expected message</span><br><span> DMSC dummy_msc_i(IMSI-901700000004620:MSISDN-46071:GERAN-A:CM_SERVICE_REQ){0}: Received Event MSC_I_EV_FROM_A_FORWARD_ACCESS_SIGNALLING_REQUEST</span><br><span> DSS trans(NCSS IMSI-901700000004620:MSISDN-46071:GERAN-A:CM_SERVICE_REQ callref-0x20000001 tid-8) Freeing transaction</span><br><span style="color: hsl(0, 100%, 40%);">-DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - NCSS: now used by 3 (attached,active-conn,gsm0911_gsup_rx)</span><br><span style="color: hsl(120, 100%, 40%);">+DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - NCSS: now used by 2 (attached,active-conn)</span><br><span> DREF msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: - nc_ss: now used by 0 (-)</span><br><span> DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: Received Event MSC_A_EV_UNUSED</span><br><span> DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:CM_SERVICE_REQ){MSC_A_ST_COMMUNICATING}: state_chg to MSC_A_ST_RELEASING</span><br><span> DBSSAP msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:CM_SERVICE_REQ){MSC_A_ST_RELEASING}: Releasing: msc_a use is 0 (-)</span><br><span style="color: hsl(0, 100%, 40%);">-DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + msc_a_fsm_releasing_onenter: now used by 4 (attached,active-conn,gsm0911_gsup_rx,msc_a_fsm_releasing_onenter)</span><br><span style="color: hsl(0, 100%, 40%);">-DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + vlr_subscr_cancel_attach_fsm: now used by 5 (attached,active-conn,gsm0911_gsup_rx,msc_a_fsm_releasing_onenter,vlr_subscr_cancel_attach_fsm)</span><br><span style="color: hsl(0, 100%, 40%);">-DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - vlr_subscr_cancel_attach_fsm: now used by 4 (attached,active-conn,gsm0911_gsup_rx,msc_a_fsm_releasing_onenter)</span><br><span style="color: hsl(120, 100%, 40%);">+DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + msc_a_fsm_releasing_onenter: now used by 3 (attached,active-conn,msc_a_fsm_releasing_onenter)</span><br><span style="color: hsl(120, 100%, 40%);">+DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + vlr_subscr_cancel_attach_fsm: now used by 4 (attached,active-conn,msc_a_fsm_releasing_onenter,vlr_subscr_cancel_attach_fsm)</span><br><span style="color: hsl(120, 100%, 40%);">+DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - vlr_subscr_cancel_attach_fsm: now used by 3 (attached,active-conn,msc_a_fsm_releasing_onenter)</span><br><span> DREF msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:CM_SERVICE_REQ){MSC_A_ST_RELEASING}: + wait-Clear-Complete: now used by 1 (wait-Clear-Complete)</span><br><span> DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:CM_SERVICE_REQ){MSC_A_ST_RELEASING}: RAN encode: CLEAR_COMMAND on GERAN-A</span><br><span> DMSC dummy_msc_i(IMSI-901700000004620:MSISDN-46071:GERAN-A:CM_SERVICE_REQ){0}: Received Event MSC_I_EV_FROM_A_FORWARD_ACCESS_SIGNALLING_REQUEST</span><br><span style="color: hsl(0, 100%, 40%);">-DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - msc_a_fsm_releasing_onenter: now used by 3 (attached,active-conn,gsm0911_gsup_rx)</span><br><span style="color: hsl(120, 100%, 40%);">+DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - msc_a_fsm_releasing_onenter: now used by 2 (attached,active-conn)</span><br><span> <-- GSUP rx OSMO_GSUP_MSGT_PROC_SS_REQUEST: vlr_gsupc_read_cb() returns 0</span><br><span>   dtap_tx_confirmed == 1</span><br><span>   bssap_clear_sent == 1</span><br><span>@@ -225,7 +226,7 @@</span><br><span> DMSC dummy_msc_i(IMSI-901700000004620:MSISDN-46071:GERAN-A:CM_SERVICE_REQ){0}: Removing from parent msub_fsm</span><br><span> DMSC dummy_msc_i(IMSI-901700000004620:MSISDN-46071:GERAN-A:CM_SERVICE_REQ){0}: Deferring: will deallocate with msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:CM_SERVICE_REQ)</span><br><span> DMSC msub(IMSI-901700000004620:MSISDN-46071) Free</span><br><span style="color: hsl(0, 100%, 40%);">-DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - active-conn: now used by 2 (attached,gsm0911_gsup_rx)</span><br><span style="color: hsl(120, 100%, 40%);">+DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - active-conn: now used by 1 (attached)</span><br><span> DMSC msub_fsm{terminating}: Deferring: will deallocate with msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:CM_SERVICE_REQ)</span><br><span> DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:CM_SERVICE_REQ){MSC_A_ST_RELEASED}: Deallocated, including all deferred deallocations</span><br><span> - msub gone</span><br><span>@@ -375,14 +376,15 @@</span><br><span>   paging request (SIGNALLING_HIGH_PRIO) to IMSI-901700000004620:MSISDN-46071 on GERAN-A</span><br><span>   strcmp(paging_expecting_imsi, vsub->imsi) == 0</span><br><span> DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + Paging: now used by 5 (attached,_test_ss_ussd_no,gsm0911_gsup_rx,NCSS,Paging)</span><br><span style="color: hsl(120, 100%, 40%);">+DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - gsm0911_gsup_rx: now used by 4 (attached,_test_ss_ussd_no,NCSS,Paging)</span><br><span> <-- GSUP rx OSMO_GSUP_MSGT_PROC_SS_REQUEST: vlr_gsupc_read_cb() returns 0</span><br><span>   llist_count(&vsub->cs.requests) == 1</span><br><span style="color: hsl(0, 100%, 40%);">-DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - _test_ss_ussd_no: now used by 4 (attached,gsm0911_gsup_rx,NCSS,Paging)</span><br><span style="color: hsl(120, 100%, 40%);">+DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - _test_ss_ussd_no: now used by 3 (attached,NCSS,Paging)</span><br><span>   paging_sent == 1</span><br><span> - the subscriber and its pending request should remain</span><br><span style="color: hsl(0, 100%, 40%);">-DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + _test_ss_ussd_no: now used by 5 (attached,gsm0911_gsup_rx,NCSS,Paging,_test_ss_ussd_no)</span><br><span style="color: hsl(120, 100%, 40%);">+DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + _test_ss_ussd_no: now used by 4 (attached,NCSS,Paging,_test_ss_ussd_no)</span><br><span>   llist_count(&vsub->cs.requests) == 1</span><br><span style="color: hsl(0, 100%, 40%);">-DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - _test_ss_ussd_no: now used by 4 (attached,gsm0911_gsup_rx,NCSS,Paging)</span><br><span style="color: hsl(120, 100%, 40%);">+DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - _test_ss_ussd_no: now used by 3 (attached,NCSS,Paging)</span><br><span> - MS replies with Paging Response, we deliver the NC/USSD</span><br><span>   MSC <--GERAN-A-- MS: GSM48_MT_RR_PAG_RESP</span><br><span>   new conn</span><br><span>@@ -401,8 +403,8 @@</span><br><span> DVLR Process_Access_Request_VLR(IMSI-901700000004620:GERAN-A:PAGING_RESP){PR_ARQ_S_INIT}: is child of msc_a(IMSI-901700000004620:GERAN-A:PAGING_RESP)</span><br><span> DVLR Process_Access_Request_VLR(IMSI-901700000004620:GERAN-A:PAGING_RESP){PR_ARQ_S_INIT}: rev=GSM net=GERAN (no Auth)</span><br><span> DVLR Process_Access_Request_VLR(IMSI-901700000004620:GERAN-A:PAGING_RESP){PR_ARQ_S_INIT}: Received Event PR_ARQ_E_START</span><br><span style="color: hsl(0, 100%, 40%);">-DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + proc_arq_vlr_fn_init: now used by 5 (attached,gsm0911_gsup_rx,NCSS,Paging,proc_arq_vlr_fn_init)</span><br><span style="color: hsl(0, 100%, 40%);">-DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + active-conn: now used by 6 (attached,gsm0911_gsup_rx,NCSS,Paging,proc_arq_vlr_fn_init,active-conn)</span><br><span style="color: hsl(120, 100%, 40%);">+DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + proc_arq_vlr_fn_init: now used by 4 (attached,NCSS,Paging,proc_arq_vlr_fn_init)</span><br><span style="color: hsl(120, 100%, 40%);">+DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + active-conn: now used by 5 (attached,NCSS,Paging,proc_arq_vlr_fn_init,active-conn)</span><br><span> DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:PAGING_RESP){MSC_A_ST_VALIDATE_L3}: Received Event MSC_A_EV_COMPLETE_LAYER_3_OK</span><br><span> DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:PAGING_RESP){MSC_A_ST_VALIDATE_L3}: state_chg to MSC_A_ST_AUTH_CIPH</span><br><span> DVLR Process_Access_Request_VLR(IMSI-901700000004620:MSISDN-46071:GERAN-A:PAGING_RESP){PR_ARQ_S_INIT}: proc_arq_vlr_fn_post_imsi()</span><br><span>@@ -425,9 +427,9 @@</span><br><span> - DTAP --GERAN-A--> MS: GSM0480_MTYPE_REGISTER: 0b3b1c15a11302010102013b300b04010f0406aa510c061b01</span><br><span> - DTAP matches expected message</span><br><span> DMSC dummy_msc_i(IMSI-901700000004620:MSISDN-46071:GERAN-A:PAGING_RESP){0}: Received Event MSC_I_EV_FROM_A_FORWARD_ACCESS_SIGNALLING_REQUEST</span><br><span style="color: hsl(0, 100%, 40%);">-DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - Paging: now used by 5 (attached,gsm0911_gsup_rx,NCSS,proc_arq_vlr_fn_init,active-conn)</span><br><span style="color: hsl(120, 100%, 40%);">+DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - Paging: now used by 4 (attached,NCSS,proc_arq_vlr_fn_init,active-conn)</span><br><span> DREF msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: - paging-response: now used by 2 (rx_from_ms,nc_ss)</span><br><span style="color: hsl(0, 100%, 40%);">-DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - proc_arq_vlr_fn_init: now used by 4 (attached,gsm0911_gsup_rx,NCSS,active-conn)</span><br><span style="color: hsl(120, 100%, 40%);">+DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - proc_arq_vlr_fn_init: now used by 3 (attached,NCSS,active-conn)</span><br><span> DREF msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: - rx_from_ms: now used by 1 (nc_ss)</span><br><span>   dtap_tx_confirmed == 1</span><br><span> - MS responds to SS/USSD request</span><br><span>@@ -441,24 +443,25 @@</span><br><span>   dtap_tx_confirmed == 1</span><br><span> - HLR terminates the session</span><br><span> <-- GSUP rx OSMO_GSUP_MSGT_PROC_SS_REQUEST: 20010809710000004026f03004200001013101030a0103</span><br><span style="color: hsl(0, 100%, 40%);">-DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + gsm0911_gsup_rx: now used by 5 (attached,2*gsm0911_gsup_rx,NCSS,active-conn)</span><br><span style="color: hsl(120, 100%, 40%);">+DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + gsm0911_gsup_rx: now used by 4 (attached,NCSS,active-conn,gsm0911_gsup_rx)</span><br><span style="color: hsl(120, 100%, 40%);">+DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - gsm0911_gsup_rx: now used by 3 (attached,NCSS,active-conn)</span><br><span> DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: RAN encode: DTAP on GERAN-A</span><br><span> - DTAP --GERAN-A--> MS: GSM0480_MTYPE_RELEASE_COMPLETE: 0b2a</span><br><span> - DTAP matches expected message</span><br><span> DMSC dummy_msc_i(IMSI-901700000004620:MSISDN-46071:GERAN-A:PAGING_RESP){0}: Received Event MSC_I_EV_FROM_A_FORWARD_ACCESS_SIGNALLING_REQUEST</span><br><span> DSS trans(NCSS IMSI-901700000004620:MSISDN-46071:GERAN-A:PAGING_RESP callref-0x20000101 tid-0) Freeing transaction</span><br><span style="color: hsl(0, 100%, 40%);">-DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - NCSS: now used by 4 (attached,2*gsm0911_gsup_rx,active-conn)</span><br><span style="color: hsl(120, 100%, 40%);">+DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - NCSS: now used by 2 (attached,active-conn)</span><br><span> DREF msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: - nc_ss: now used by 0 (-)</span><br><span> DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: Received Event MSC_A_EV_UNUSED</span><br><span> DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:PAGING_RESP){MSC_A_ST_AUTHENTICATED}: state_chg to MSC_A_ST_RELEASING</span><br><span> DBSSAP msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:PAGING_RESP){MSC_A_ST_RELEASING}: Releasing: msc_a use is 0 (-)</span><br><span style="color: hsl(0, 100%, 40%);">-DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + msc_a_fsm_releasing_onenter: now used by 5 (attached,2*gsm0911_gsup_rx,active-conn,msc_a_fsm_releasing_onenter)</span><br><span style="color: hsl(0, 100%, 40%);">-DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + vlr_subscr_cancel_attach_fsm: now used by 6 (attached,2*gsm0911_gsup_rx,active-conn,msc_a_fsm_releasing_onenter,vlr_subscr_cancel_attach_fsm)</span><br><span style="color: hsl(0, 100%, 40%);">-DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - vlr_subscr_cancel_attach_fsm: now used by 5 (attached,2*gsm0911_gsup_rx,active-conn,msc_a_fsm_releasing_onenter)</span><br><span style="color: hsl(120, 100%, 40%);">+DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + msc_a_fsm_releasing_onenter: now used by 3 (attached,active-conn,msc_a_fsm_releasing_onenter)</span><br><span style="color: hsl(120, 100%, 40%);">+DREF VLR subscr IMSI-901700000004620:MSISDN-46071 + vlr_subscr_cancel_attach_fsm: now used by 4 (attached,active-conn,msc_a_fsm_releasing_onenter,vlr_subscr_cancel_attach_fsm)</span><br><span style="color: hsl(120, 100%, 40%);">+DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - vlr_subscr_cancel_attach_fsm: now used by 3 (attached,active-conn,msc_a_fsm_releasing_onenter)</span><br><span> DREF msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:PAGING_RESP){MSC_A_ST_RELEASING}: + wait-Clear-Complete: now used by 1 (wait-Clear-Complete)</span><br><span> DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:PAGING_RESP){MSC_A_ST_RELEASING}: RAN encode: CLEAR_COMMAND on GERAN-A</span><br><span> DMSC dummy_msc_i(IMSI-901700000004620:MSISDN-46071:GERAN-A:PAGING_RESP){0}: Received Event MSC_I_EV_FROM_A_FORWARD_ACCESS_SIGNALLING_REQUEST</span><br><span style="color: hsl(0, 100%, 40%);">-DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - msc_a_fsm_releasing_onenter: now used by 4 (attached,2*gsm0911_gsup_rx,active-conn)</span><br><span style="color: hsl(120, 100%, 40%);">+DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - msc_a_fsm_releasing_onenter: now used by 2 (attached,active-conn)</span><br><span> <-- GSUP rx OSMO_GSUP_MSGT_PROC_SS_REQUEST: vlr_gsupc_read_cb() returns 0</span><br><span>   dtap_tx_confirmed == 1</span><br><span>   bssap_clear_sent == 1</span><br><span>@@ -483,12 +486,12 @@</span><br><span> DMSC dummy_msc_i(IMSI-901700000004620:MSISDN-46071:GERAN-A:PAGING_RESP){0}: Removing from parent msub_fsm</span><br><span> DMSC dummy_msc_i(IMSI-901700000004620:MSISDN-46071:GERAN-A:PAGING_RESP){0}: Deferring: will deallocate with msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:PAGING_RESP)</span><br><span> DMSC msub(IMSI-901700000004620:MSISDN-46071) Free</span><br><span style="color: hsl(0, 100%, 40%);">-DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - active-conn: now used by 3 (attached,2*gsm0911_gsup_rx)</span><br><span style="color: hsl(120, 100%, 40%);">+DREF VLR subscr IMSI-901700000004620:MSISDN-46071 - active-conn: now used by 1 (attached)</span><br><span> DMSC msub_fsm{terminating}: Deferring: will deallocate with msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:PAGING_RESP)</span><br><span> DMSC msc_a(IMSI-901700000004620:MSISDN-46071:GERAN-A:PAGING_RESP){MSC_A_ST_RELEASED}: Deallocated, including all deferred deallocations</span><br><span> - msub gone</span><br><span>   llist_count(&msub_list) == 0</span><br><span style="color: hsl(0, 100%, 40%);">-DVLR freeing VLR subscr IMSI-901700000004620:MSISDN-46071 (max total use count was 6)</span><br><span style="color: hsl(120, 100%, 40%);">+DVLR freeing VLR subscr IMSI-901700000004620:MSISDN-46071 (max total use count was 5)</span><br><span> ===== test_ss_ussd_no_geran: SUCCESS</span><br><span> </span><br><span> full talloc report on 'msgb' (total      0 bytes in   1 blocks)</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-msc/+/14500">change 14500</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.osmocom.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.osmocom.org/c/osmo-msc/+/14500"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmo-msc </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: I5540556b1c75f6873883e46b78656f31fc1ef186 </div>
<div style="display:none"> Gerrit-Change-Number: 14500 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: fixeria <axilirator@gmail.com> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder </div>
<div style="display:none"> Gerrit-Reviewer: Neels Hofmeyr <nhofmeyr@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: laforge <laforge@gnumonks.org> </div>
<div style="display:none"> Gerrit-Reviewer: pespin <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-MessageType: merged </div>