Project

General

Profile

Bug #3447

osmo-bsc segfaults when not connected to an MSC while a subsriber tries to LU

Added by dexter 19 days ago. Updated 9 days ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
-
Target version:
-
Start date:
08/03/2018
Due date:
% Done:

100%

Estimated time:
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) 
bsc.log bsc.log 96.8 KB dexter, 08/03/2018 02:37 PM

History

#1 Updated by dexter 19 days 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

#2 Updated by dexter 9 days ago

  • Status changed from In Progress to Resolved

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 48.8 MB)