This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
pespin gerrit-no-reply at lists.osmocom.orgpespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/26121 ) Change subject: vty: Avoid crash in tbf_print_vty_info with null ptr ctrg ...................................................................... vty: Avoid crash in tbf_print_vty_info with null ptr ctrg Previous code did use a ctrg based on MS being EGPRS capable or not. However, an MS being EGPRS capable doesn't mean necessarily that all its TBFs are EGPRS, since we may known about the capability after we already created some previous TBF, so it was not ugpraded. Hence, we were sometimes accessing the wrong NULL ctrg. Let's simply check for non NULL ctrg when deciding what to print. """ Program received signal SIGSEGV, Segmentation fault. 0x00007ffff7561ea6 in vty_out_rate_ctr_group (vty=vty at entry=0x897850, prefix=prefix at entry=0x4482cd " ", ctrg=0x0) at utils.c:82 82 utils.c: No such file or directory. (gdb) bt #0 0x00007ffff7561ea6 in vty_out_rate_ctr_group (vty=vty at entry=0x897850, prefix=prefix at entry=0x4482cd " ", ctrg=0x0) at utils.c:82 #1 0x000000000041437b in tbf_print_vty_info (vty=vty at entry=0x897850, tbf=0x3fb61f0) at pcu_vty_functions.cpp:98 #2 0x0000000000414acc in pcu_vty_show_tbf_all (vty=vty at entry=0x897850, bts=bts at entry=0x7be650, flags=4294967295) at pcu_vty_functions.cpp:127 #3 0x000000000041206f in show_tbf (self=<optimized out>, vty=0x897850, argc=<optimized out>, argv=0x7fffffffe040) at pcu_vty.c:1150 #4 0x00007ffff755d167 in cmd_execute_command_real (vline=vline at entry=0x7bc300, vty=vty at entry=0x897850, cmd=<optimized out>) at command.c:2604 """ Related: SYS#5689 Change-Id: I3979bfc12dd3b9a53b34b284537f271c356a3024 --- M src/pcu_vty_functions.cpp 1 file changed, 4 insertions(+), 6 deletions(-) Approvals: Jenkins Builder: Verified pespin: Looks good to me, approved fixeria: Looks good to me, but someone else must approve dexter: Looks good to me, but someone else must approve diff --git a/src/pcu_vty_functions.cpp b/src/pcu_vty_functions.cpp index 657e5a1..21851df 100644 --- a/src/pcu_vty_functions.cpp +++ b/src/pcu_vty_functions.cpp @@ -79,11 +79,10 @@ ul_tbf->window_size(), win->v_q(), win->v_r()); vty_out(vty, "%s", VTY_NEWLINE); vty_out(vty, " TBF Statistics:%s", VTY_NEWLINE); - if (GPRS == ms_mode(tbf->ms())) { + if (ul_tbf->m_ul_gprs_ctrs) vty_out_rate_ctr_group(vty, " ", ul_tbf->m_ul_gprs_ctrs); - } else { + if (ul_tbf->m_ul_egprs_ctrs) vty_out_rate_ctr_group(vty, " ", ul_tbf->m_ul_egprs_ctrs); - } } if (dl_tbf) { gprs_rlc_dl_window *win = static_cast<gprs_rlc_dl_window *>(dl_tbf->window()); @@ -92,11 +91,10 @@ win->window_stalled() ? " STALLED" : ""); vty_out(vty, "%s", VTY_NEWLINE); vty_out_rate_ctr_group(vty, " ", tbf->m_ctrs); - if (GPRS == ms_mode(tbf->ms())) { + if (dl_tbf->m_dl_gprs_ctrs) vty_out_rate_ctr_group(vty, " ", dl_tbf->m_dl_gprs_ctrs); - } else { + if (dl_tbf->m_dl_egprs_ctrs) vty_out_rate_ctr_group(vty, " ", dl_tbf->m_dl_egprs_ctrs); - } } vty_out(vty, "%s%s", VTY_NEWLINE, VTY_NEWLINE); } -- To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/26121 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-pcu Gerrit-Branch: master Gerrit-Change-Id: I3979bfc12dd3b9a53b34b284537f271c356a3024 Gerrit-Change-Number: 26121 Gerrit-PatchSet: 2 Gerrit-Owner: pespin <pespin at sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: dexter <pmaier at sysmocom.de> Gerrit-Reviewer: fixeria <vyanitskiy at sysmocom.de> Gerrit-Reviewer: pespin <pespin at sysmocom.de> Gerrit-MessageType: merged -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20211105/f7359453/attachment.htm>