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 uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-pcu/+/20243 ) Change subject: tbf: Don't log rlcmac_diag() output in separate lines ...................................................................... tbf: Don't log rlcmac_diag() output in separate lines Output of all diag in different lines is really confusing, since the user reads a timeout ocurred and then later in another line something like "Downlink ACK was received" while no GSMTAP message shows any ACK. Change-Id: I6a7d79c16c930f0712bc73b308409ececb1946ba --- M src/tbf.cpp M src/tbf.h M tests/tbf/TbfTest.err 3 files changed, 31 insertions(+), 22 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/43/20243/1 diff --git a/src/tbf.cpp b/src/tbf.cpp index 0447edc..9545511 100644 --- a/src/tbf.cpp +++ b/src/tbf.cpp @@ -20,6 +20,7 @@ */ #include <new> +#include <sstream> #include <bts.h> #include <tbf.h> @@ -647,8 +648,13 @@ LOGPTBF(tbf, LOGL_NOTICE, "%s timeout expired, freeing TBF\n", get_value_string(tbf_timers_names, t)); - if (run_diag) - tbf->rlcmac_diag(); + if (run_diag) { + LOGPTBF(tbf, LOGL_NOTICE, "%s timeout expired, freeing TBF: %s\n", + get_value_string(tbf_timers_names, t), tbf->rlcmac_diag().c_str()); + } else { + LOGPTBF(tbf, LOGL_NOTICE, "%s timeout expired, freeing TBF\n", + get_value_string(tbf_timers_names, t)); + } tbf_free(tbf); } @@ -816,8 +822,9 @@ if (ul_tbf && ul_tbf->handle_ctrl_ack()) { if (!ul_tbf->ctrl_ack_to_toggle()) { - LOGPTBF(this, LOGL_NOTICE, "Timeout for polling PACKET CONTROL ACK for PACKET UPLINK ACK\n"); - rlcmac_diag(); + LOGPTBF(this, LOGL_NOTICE, + "Timeout for polling PACKET CONTROL ACK for PACKET UPLINK ACK: %s\n", + rlcmac_diag().c_str()); } bts->do_rate_ctr_inc(CTR_RLC_ACK_TIMEDOUT); bts->do_rate_ctr_inc(CTR_PUAN_POLL_TIMEDOUT); @@ -835,8 +842,8 @@ } else if (ul_ass_state == GPRS_RLCMAC_UL_ASS_WAIT_ACK) { if (!(state_flags & (1 << GPRS_RLCMAC_FLAG_TO_UL_ASS))) { LOGPTBF(this, LOGL_NOTICE, - "Timeout for polling PACKET CONTROL ACK for PACKET UPLINK ASSIGNMENT.\n"); - rlcmac_diag(); + "Timeout for polling PACKET CONTROL ACK for PACKET UPLINK ASSIGNMENT: %s\n", + rlcmac_diag().c_str()); state_flags |= (1 << GPRS_RLCMAC_FLAG_TO_UL_ASS); } ul_ass_state = GPRS_RLCMAC_UL_ASS_NONE; @@ -854,8 +861,8 @@ } else if (dl_ass_state == GPRS_RLCMAC_DL_ASS_WAIT_ACK) { if (!(state_flags & (1 << GPRS_RLCMAC_FLAG_TO_DL_ASS))) { LOGPTBF(this, LOGL_NOTICE, - "Timeout for polling PACKET CONTROL ACK for PACKET DOWNLINK ASSIGNMENT.\n"); - rlcmac_diag(); + "Timeout for polling PACKET CONTROL ACK for PACKET DOWNLINK ASSIGNMENT: %s\n", + rlcmac_diag().c_str()); state_flags |= (1 << GPRS_RLCMAC_FLAG_TO_DL_ASS); } dl_ass_state = GPRS_RLCMAC_DL_ASS_NONE; @@ -875,8 +882,8 @@ if (!(dl_tbf->state_flags & (1 << GPRS_RLCMAC_FLAG_TO_DL_ACK))) { LOGPTBF(this, LOGL_NOTICE, - "Timeout for polling PACKET DOWNLINK ACK.\n"); - dl_tbf->rlcmac_diag(); + "Timeout for polling PACKET DOWNLINK ACK: %s\n", + dl_tbf->rlcmac_diag().c_str()); dl_tbf->state_flags |= (1 << GPRS_RLCMAC_FLAG_TO_DL_ACK); } @@ -1169,22 +1176,24 @@ } } -int gprs_rlcmac_tbf::rlcmac_diag() +std::string gprs_rlcmac_tbf::rlcmac_diag() { + std::ostringstream os; + os << "|"; if ((state_flags & (1 << GPRS_RLCMAC_FLAG_CCCH))) - LOGPTBF(this, LOGL_NOTICE, "Assignment was on CCCH\n"); + os << "Assignment was on CCCH|"; if ((state_flags & (1 << GPRS_RLCMAC_FLAG_PACCH))) - LOGPTBF(this, LOGL_NOTICE, "Assignment was on PACCH\n"); + os << "Assignment was on PACCH|"; if ((state_flags & (1 << GPRS_RLCMAC_FLAG_UL_DATA))) - LOGPTBF(this, LOGL_NOTICE, "Uplink data was received\n"); + os << "Uplink data was received|"; else if (direction == GPRS_RLCMAC_UL_TBF) - LOGPTBF(this, LOGL_NOTICE, "No uplink data received yet\n"); + os << "No uplink data received yet|"; if ((state_flags & (1 << GPRS_RLCMAC_FLAG_DL_ACK))) - LOGPTBF(this, LOGL_NOTICE, "Downlink ACK was received\n"); + os << "Downlink ACK was received|"; else if (direction == GPRS_RLCMAC_DL_TBF) - LOGPTBF(this, LOGL_NOTICE, "No downlink ACK received yet\n"); + os << "No downlink ACK received yet|"; - return 0; + return os.str(); } struct msgb *gprs_rlcmac_tbf::create_dl_ass(uint32_t fn, uint8_t ts) diff --git a/src/tbf.h b/src/tbf.h index 528bee3..99aba67 100644 --- a/src/tbf.h +++ b/src/tbf.h @@ -20,6 +20,8 @@ #ifdef __cplusplus +#include <string> + #include "llc.h" #include "rlc.h" #include "cxx_linuxlist.h" @@ -212,7 +214,7 @@ uint8_t tsc() const; - int rlcmac_diag(); + std::string rlcmac_diag(); bool n_inc(enum tbf_counters n); void n_reset(enum tbf_counters n); diff --git a/tests/tbf/TbfTest.err b/tests/tbf/TbfTest.err index 681e7a3..ce23802 100644 --- a/tests/tbf/TbfTest.err +++ b/tests/tbf/TbfTest.err @@ -1725,9 +1725,7 @@ Searching for first unallocated TFI: TRX=0 Found TFI=1. TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=FINISHED) poll timeout for FN=2654292, TS=7 (curr FN 2654335) -TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=FINISHED) Timeout for polling PACKET DOWNLINK ACK. -TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=FINISHED) Assignment was on PACCH -TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=FINISHED) No downlink ACK received yet +TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=FINISHED) Timeout for polling PACKET DOWNLINK ACK: |Assignment was on PACCH|No downlink ACK received yet| +++++++++++++++++++++++++ RX : Uplink Control Block +++++++++++++++++++++++++ ------------------------- RX : Uplink Control Block ------------------------- Creating MS object, TLLI = 0x00000000 -- To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/20243 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-pcu Gerrit-Branch: master Gerrit-Change-Id: I6a7d79c16c930f0712bc73b308409ececb1946ba Gerrit-Change-Number: 20243 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin at sysmocom.de> Gerrit-MessageType: newchange -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20200922/abca093d/attachment.htm>