Project

General

Profile

Bug #4973

NULL m_dl_egprs_ctrs passed to rate_ctr_add()

Added by keith 9 months ago. Updated 9 months ago.

Status:
Resolved
Priority:
Normal
Assignee:
Target version:
-
Start date:
01/25/2021
Due date:
% Done:

100%

Spec Reference:

Description

(gdb) bt
#0  0xb6eddda0 in rate_ctr_add () from /usr/lib/libosmocore.so.16
#1  0x0002f274 in gprs_rlcmac_dl_tbf::create_dl_acked_block (this=this@entry=0x5da078, fn=338684, fn@entry=124215, ts=ts@entry=7 '\a', index=0, index@entry=79, index2=-1)
    at /usr/src/debug/osmo-pcu/0.8.0+gitAUTOINC+a100a6bc56-r0.18/git/src/tbf_dl.cpp:837
#2  0x0002f574 in gprs_rlcmac_dl_tbf::create_dl_acked_block (this=this@entry=0x5da078, fn=124215, fn@entry=1167128, ts=ts@entry=7 '\a', req_mcs_kind=EGPRS,
    req_mcs_kind@entry=(unknown: 1169532)) at /usr/src/debug/osmo-pcu/0.8.0+gitAUTOINC+a100a6bc56-r0.18/git/src/tbf_dl.cpp:599
#3  0x0003ea5c in sched_select_downlink (bts=0x426d3628, block_nr=55 '7', is_egprs=<synthetic pointer>, req_mcs_kind=(unknown: 1169532), pdch=0x11d87c, fn=1167128,
    ts=7 '\a', trx=<optimized out>) at /usr/src/debug/osmo-pcu/0.8.0+gitAUTOINC+a100a6bc56-r0.18/git/src/gprs_rlcmac_sched.cpp:343
#4  gprs_rlcmac_rcv_rts_block (bts=0x426d3628, trx=<optimized out>, ts=<optimized out>, fn=1167128, block_nr=9 '\t')
    at /usr/src/debug/osmo-pcu/0.8.0+gitAUTOINC+a100a6bc56-r0.18/git/src/gprs_rlcmac_sched.cpp:477
#5  0x0001e514 in pcu_rx_rts_req_pdtch (bts=<optimized out>, trx=<optimized out>, ts=<optimized out>, fn=<optimized out>, block_nr=9 '\t')
    at /usr/src/debug/osmo-pcu/0.8.0+gitAUTOINC+a100a6bc56-r0.18/git/src/pcu_l1_if.cpp:384
#6  0x000151f4 in handle_ph_readytosend_ind (fl1h=0x11cc28, rts_ind=0x2ddc28)
    at /usr/src/debug/osmo-pcu/0.8.0+gitAUTOINC+a100a6bc56-r0.18/git/src/osmo-bts-sysmo/sysmo_l1_if.c:148
#7  l1if_handle_l1prim (wq=<optimized out>, fl1h=0x11cc28, msg=0x2ddb60) at /usr/src/debug/osmo-pcu/0.8.0+gitAUTOINC+a100a6bc56-r0.18/git/src/osmo-bts-sysmo/sysmo_l1_if.c:288
#8  0xb6ed0c94 in ?? () from /usr/lib/libosmocore.so.16

History

#1 Updated by keith 9 months ago

  • Subject changed from SEGV in rate_ctr_add() to NULL m_dl_egprs_ctrs passed to rate_ctr_add()
(gdb) up
#1  0x0002f274 in gprs_rlcmac_dl_tbf::create_dl_acked_block (this=this@entry=0x5da078, fn=338684, fn@entry=124215, ts=ts@entry=7 '\a', index=0, index@entry=79, index2=-1)
    at /usr/src/debug/osmo-pcu/0.8.0+gitAUTOINC+a100a6bc56-r0.18/git/src/tbf_dl.cpp:837
837     in /usr/src/debug/osmo-pcu/0.8.0+gitAUTOINC+a100a6bc56-r0.18/git/src/tbf_dl.cpp
(gdb) p m_dl_egprs_ctrs
$7 = (rate_ctr_group *) 0x0
(gdb)

#2 Updated by keith 9 months ago

In case it's relevant, on reviewing the crash again:

(gdb) p m_dl_egprs_ctrs
$19 = (rate_ctr_group *) 0x0
(gdb) p m_dl_gprs_ctrs
$20 = (rate_ctr_group *) 0x27ed18
(gdb)

#3 Updated by laforge 9 months ago

added pespin and lynxis as watchers

#4 Updated by pespin 9 months ago

  • Status changed from New to In Progress
  • Assignee changed from keith to pespin

#5 Updated by pespin 9 months ago

  • Status changed from In Progress to Feedback
  • % Done changed from 0 to 90

I think it should be fixed by this commit, please keith give it a try whenever you have some time:

https://gerrit.osmocom.org/c/osmo-pcu/+/22435 Fix Dl EGPRS data blocks being generated occasionally on GPRS TBFs

I pushed it now to gerrit together with several other fixes of issues I found while looking at osmo-pcu code.

#6 Updated by keith 9 months ago

Certainly seems to have fixed the crash.

● osmo-pcu.service - Osmocom osmo-pcu
   Loaded: loaded (/lib/systemd/system/osmo-pcu.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2021-01-25 21:12:33 UTC; 7h ago
 Main PID: 3571 (osmo-pcu)
   CGroup: /system.slice/osmo-pcu.service
           └─3571 /usr/bin/osmo-pcu -c /etc/osmocom/osmo-pcu.cfg

#7 Updated by pespin 9 months ago

  • Status changed from Feedback to Resolved
  • % Done changed from 90 to 100

Fix merged, closing.

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 48.8 MB)