poll: Count unexpected block FN values
Currently a log entry is written if FN_data_ind - FN_time_ind <= -13.
This commit adds a counter 'rlc.late-block' that is incremented in
these cases.
Sponsored-by: On-Waves ehf
diff --git a/src/bts.cpp b/src/bts.cpp
index 0786e73..456990a 100644
--- a/src/bts.cpp
+++ b/src/bts.cpp
@@ -64,6 +64,7 @@
{ "rlc.ass.timedout", "RLC Assign Timeout "},
{ "rlc.ack.timedout", "RLC Ack Timeout "},
{ "rlc.rel.timedout", "RLC Release Timeout "},
+ { "rlc.late-block", "RLC Late Block "},
{ "decode.errors", "Decode Errors "},
{ "sba.allocated", "SBA Allocated "},
{ "sba.freed", "SBA Freed "},
@@ -171,10 +172,12 @@
if (current_frame_number() != 0)
delay = (fn + 2715648 * 3 / 2 - current_frame_number()) % 2715648
- 2715648/2;
- if (delay <= -late_block_delay_thresh)
+ if (delay <= -late_block_delay_thresh) {
LOGP(DRLCMAC, LOGL_NOTICE,
"Late RLC block, FN delta: %d FN: %d curFN: %d\n",
delay, fn, current_frame_number());
+ rlc_late_block();
+ }
m_cur_blk_fn = fn;
if (delay < fn_update_ok_min_delay || delay > fn_update_ok_max_delay ||
diff --git a/src/bts.h b/src/bts.h
index 3dfe3f3..ac85181 100644
--- a/src/bts.h
+++ b/src/bts.h
@@ -220,6 +220,7 @@
CTR_RLC_ASS_TIMEDOUT,
CTR_RLC_ACK_TIMEDOUT,
CTR_RLC_REL_TIMEDOUT,
+ CTR_RLC_LATE_BLOCK,
CTR_DECODE_ERRORS,
CTR_SBA_ALLOCATED,
CTR_SBA_FREED,
@@ -286,6 +287,7 @@
void rlc_ass_timedout();
void rlc_ack_timedout();
void rlc_rel_timedout();
+ void rlc_late_block();
void decode_error();
void sba_allocated();
void sba_freed();
@@ -393,6 +395,7 @@
CREATE_COUNT_INLINE(rlc_ass_timedout, CTR_RLC_ASS_TIMEDOUT);
CREATE_COUNT_INLINE(rlc_ack_timedout, CTR_RLC_ACK_TIMEDOUT);
CREATE_COUNT_INLINE(rlc_rel_timedout, CTR_RLC_REL_TIMEDOUT);
+CREATE_COUNT_INLINE(rlc_late_block, CTR_RLC_LATE_BLOCK);
CREATE_COUNT_INLINE(decode_error, CTR_DECODE_ERRORS)
CREATE_COUNT_INLINE(sba_allocated, CTR_SBA_ALLOCATED)
CREATE_COUNT_INLINE(sba_freed, CTR_SBA_FREED)