Actions
Bug #3447
closedosmo-bsc segfaults when not connected to an MSC while a subsriber tries to LU
Start date:
08/03/2018
Due date:
% Done:
100%
Spec Reference:
Description
After #3446 had been fixed osmo-msc segfaults after some time when a subscriber tries to do a location update but the MSC is unreachable.
Fri Aug 3 16:27:04 2018 DRLL <0000> chan_alloc.c:153 (bts=0) channel load average is 0.10% Fri Aug 3 16:27:04 2018 DRLL <0000> chan_alloc.c:166 (bts=0) T3122 wait indicator set to 10 seconds Fri Aug 3 16:27:04 2018 DRSL <0003> abis_rsl.c:1057 (bts=0,trx=0,ts=0,ss=0): meas_rep_count++=1 meas_rep_last_seen_nr=0 Fri Aug 3 16:27:05 2018 DRSL <0003> abis_rsl.c:1057 (bts=0,trx=0,ts=0,ss=0): meas_rep_count++=2 meas_rep_last_seen_nr=1 Fri Aug 3 16:27:05 2018 DRSL <0003> abis_rsl.c:1057 (bts=0,trx=0,ts=0,ss=0): meas_rep_count++=3 meas_rep_last_seen_nr=2 Fri Aug 3 16:27:06 2018 DRSL <0003> abis_rsl.c:1057 (bts=0,trx=0,ts=0,ss=0): meas_rep_count++=4 meas_rep_last_seen_nr=3 Fri Aug 3 16:27:06 2018 DMSC <0007> fsm.c:189 A-RESET(msc-0)[0x555555a304f0]{DISC}: Timeout of T4 Fri Aug 3 16:27:06 2018 DMSC <0007> a_reset.c:106 A-RESET(msc-0)[0x555555a304f0]{DISC}: (re)sending BSSMAP RESET message... Fri Aug 3 16:27:06 2018 DMSC <0007> osmo_bsc_sigtran.c:92 Sending RESET to MSC: RI=SSN_PC,PC=0.23.1,SSN=BSSAP Fri Aug 3 16:27:06 2018 DLSS7 <001f> m3ua.c:507 XUA_AS(as-clnt-msc-0)[0x555555a2f650]{AS_DOWN}: Event AS-TRANSFER.req not permitted Fri Aug 3 16:27:06 2018 DMSC <0007> a_reset.c:110 A-RESET(msc-0)[0x555555a304f0]{DISC}: state_chg to DISC Fri Aug 3 16:27:06 2018 DRSL <0003> abis_rsl.c:1057 (bts=0,trx=0,ts=0,ss=0): meas_rep_count++=5 meas_rep_last_seen_nr=4 BTS 0 reported connected PCU version 0.5.0 Fri Aug 3 16:27:07 2018 DRSL <0003> abis_rsl.c:1057 (bts=0,trx=0,ts=0,ss=0): meas_rep_count++=6 meas_rep_last_seen_nr=5 Fri Aug 3 16:27:07 2018 DRSL <0003> abis_rsl.c:1057 (bts=0,trx=0,ts=0,ss=0): meas_rep_count++=7 meas_rep_last_seen_nr=6 Fri Aug 3 16:27:08 2018 DRSL <0003> abis_rsl.c:1057 (bts=0,trx=0,ts=0,ss=0): meas_rep_count++=8 meas_rep_last_seen_nr=7 Fri Aug 3 16:27:08 2018 DRSL <0003> abis_rsl.c:1057 (bts=0,trx=0,ts=0,ss=0): meas_rep_count++=9 meas_rep_last_seen_nr=8 Fri Aug 3 16:27:08 2018 DMSC <0007> fsm.c:189 A-RESET(msc-0)[0x555555a304f0]{DISC}: Timeout of T4 Fri Aug 3 16:27:08 2018 DMSC <0007> a_reset.c:106 A-RESET(msc-0)[0x555555a304f0]{DISC}: (re)sending BSSMAP RESET message... Fri Aug 3 16:27:08 2018 DMSC <0007> osmo_bsc_sigtran.c:92 Sending RESET to MSC: RI=SSN_PC,PC=0.23.1,SSN=BSSAP Fri Aug 3 16:27:08 2018 DLSS7 <001f> m3ua.c:507 XUA_AS(as-clnt-msc-0)[0x555555a2f650]{AS_DOWN}: Event AS-TRANSFER.req not permitted Fri Aug 3 16:27:08 2018 DMSC <0007> a_reset.c:110 A-RESET(msc-0)[0x555555a304f0]{DISC}: state_chg to DISC Fri Aug 3 16:27:09 2018 DRSL <0003> abis_rsl.c:1057 (bts=0,trx=0,ts=0,ss=0): meas_rep_count++=10 meas_rep_last_seen_nr=9 Fri Aug 3 16:27:09 2018 DRSL <0003> abis_rsl.c:1057 (bts=0,trx=0,ts=0,ss=0): meas_rep_count++=11 meas_rep_last_seen_nr=10 Fri Aug 3 16:27:10 2018 DRSL <0003> abis_rsl.c:1057 (bts=0,trx=0,ts=0,ss=0): meas_rep_count++=12 meas_rep_last_seen_nr=11 Fri Aug 3 16:27:10 2018 DRSL <0003> abis_rsl.c:1057 (bts=0,trx=0,ts=0,ss=0): meas_rep_count++=13 meas_rep_last_seen_nr=12 Fri Aug 3 16:27:10 2018 DMSC <0007> fsm.c:189 A-RESET(msc-0)[0x555555a304f0]{DISC}: Timeout of T4 Fri Aug 3 16:27:10 2018 DMSC <0007> a_reset.c:106 A-RESET(msc-0)[0x555555a304f0]{DISC}: (re)sending BSSMAP RESET message... Fri Aug 3 16:27:10 2018 DMSC <0007> osmo_bsc_sigtran.c:92 Sending RESET to MSC: RI=SSN_PC,PC=0.23.1,SSN=BSSAP Fri Aug 3 16:27:10 2018 DLSS7 <001f> m3ua.c:507 XUA_AS(as-clnt-msc-0)[0x555555a2f650]{AS_DOWN}: Event AS-TRANSFER.req not permitted Fri Aug 3 16:27:10 2018 DMSC <0007> a_reset.c:110 A-RESET(msc-0)[0x555555a304f0]{DISC}: state_chg to DISC Fri Aug 3 16:27:11 2018 DRSL <0003> abis_rsl.c:1057 (bts=0,trx=0,ts=0,ss=0): meas_rep_count++=14 meas_rep_last_seen_nr=13 Fri Aug 3 16:27:11 2018 DRSL <0003> abis_rsl.c:1057 (bts=0,trx=0,ts=0,ss=0): meas_rep_count++=15 meas_rep_last_seen_nr=14 BTS 0 reported connected PCU version 0.5.0 Fri Aug 3 16:27:11 2018 DRSL <0003> abis_rsl.c:1057 (bts=0,trx=0,ts=0,ss=0): meas_rep_count++=16 meas_rep_last_seen_nr=15 Fri Aug 3 16:27:12 2018 DRSL <0003> abis_rsl.c:1057 (bts=0,trx=0,ts=0,ss=0): meas_rep_count++=17 meas_rep_last_seen_nr=16 Fri Aug 3 16:27:12 2018 DHODEC <0009> handover_decision_2.c:1681 (BTS 0) No congestion check: no minimum for free TCH/F nor TCH/H set Fri Aug 3 16:27:12 2018 DHODEC <0009> handover_decision_2.c:1665 (BTS 1) No congestion check: TRX 0 not usable Fri Aug 3 16:27:12 2018 DHODEC <0009> handover_decision_2.c:141 HO algorithm 2: next periodical congestion check in 10 seconds Fri Aug 3 16:27:12 2018 DRLL <0000> chan_alloc.c:153 (bts=0) channel load average is 5.12% Fri Aug 3 16:27:12 2018 DRLL <0000> chan_alloc.c:166 (bts=0) T3122 wait indicator set to 10 seconds Fri Aug 3 16:27:12 2018 DMSC <0007> fsm.c:189 A-RESET(msc-0)[0x555555a304f0]{DISC}: Timeout of T4 Fri Aug 3 16:27:12 2018 DMSC <0007> a_reset.c:106 A-RESET(msc-0)[0x555555a304f0]{DISC}: (re)sending BSSMAP RESET message... Fri Aug 3 16:27:12 2018 DMSC <0007> osmo_bsc_sigtran.c:92 Sending RESET to MSC: RI=SSN_PC,PC=0.23.1,SSN=BSSAP Fri Aug 3 16:27:12 2018 DLSS7 <001f> m3ua.c:507 XUA_AS(as-clnt-msc-0)[0x555555a2f650]{AS_DOWN}: Event AS-TRANSFER.req not permitted Fri Aug 3 16:27:12 2018 DMSC <0007> a_reset.c:110 A-RESET(msc-0)[0x555555a304f0]{DISC}: state_chg to DISC Fri Aug 3 16:27:12 2018 DRSL <0003> abis_rsl.c:1057 (bts=0,trx=0,ts=0,ss=0): meas_rep_count++=18 meas_rep_last_seen_nr=17 Fri Aug 3 16:27:13 2018 DRSL <0003> abis_rsl.c:1057 (bts=0,trx=0,ts=0,ss=0): meas_rep_count++=19 meas_rep_last_seen_nr=18 Fri Aug 3 16:27:13 2018 DRSL <0003> abis_rsl.c:1057 (bts=0,trx=0,ts=0,ss=0): meas_rep_count++=20 meas_rep_last_seen_nr=19 Fri Aug 3 16:27:13 2018 DMSC <0007> fsm.c:189 SUBSCR_CONN[0x555555a40c40]{CLEARING}: Timeout of T999 Fri Aug 3 16:27:13 2018 DMSC <0007> bsc_subscr_conn_fsm.c:786 SUBSCR_CONN[0x555555a40c40]{CLEARING}: Long after a BSSMAP Clear Command, the conn is still not released. For sanity, discarding this conn now. Program received signal SIGSEGV, Segmentation fault. 0x0000555555588d1b in gscon_timer_cb (fi=0x555555a40c40) at bsc_subscr_conn_fsm.c:787 787 a_reset_conn_fail(conn->sccp.msc->a.reset_fsm); (gdb) bt #0 0x0000555555588d1b in gscon_timer_cb (fi=0x555555a40c40) at bsc_subscr_conn_fsm.c:787 #1 0x00007ffff732b315 in fsm_tmr_cb (data=0x555555a40c40) at fsm.c:192 #2 0x00007ffff7326cc6 in osmo_timers_update () at timer.c:257 #3 0x00007ffff7327426 in osmo_select_main (polling=<optimized out>) at select.c:254 #4 0x00005555555694a7 in main (argc=<optimized out>, argv=<optimized out>) at osmo_bsc_main.c:923 (gdb)
Files
Updated by dexter almost 6 years ago
- Status changed from New to In Progress
- % Done changed from 0 to 100
I have now fixed the problem. It was similar to #3446 but simpler to fix. In this case I just check if conn->sccp.msc is populated before calling a_reset_conn_fail().
See also: https://gerrit.osmocom.org/#/c/osmo-bsc/+/10334 GSCON: fix segfault after gscon timout
Updated by dexter almost 6 years ago
- Status changed from In Progress to Resolved
Actions