aboutsummaryrefslogtreecommitdiffstats
path: root/src/tbf_dl.h
diff options
context:
space:
mode:
authorPau Espin Pedrol <pespin@sysmocom.de>2022-04-04 13:45:56 +0200
committerpespin <pespin@sysmocom.de>2022-04-05 11:16:17 +0000
commit6b1e9515c9e82f8e99128a4de051889e82e25892 (patch)
treeab808e66cf2084ed4e3155eb84a11204fbb3b02d /src/tbf_dl.h
parent9c2512a638368f5b74c275c38d404414cf2d8b02 (diff)
llc_queue: Refactor to handle codel_state per prio queue internally
A CoDel state per prio queue is needed, otherwise the sojourn time state is not properly reset when a high prio packet is dequeued. If we have a global codel state shared for all prio queues of an MS, then basically high prio (GMM) packets will "never" be dropped because they are handled/dequeued way quicker, so it's sojourn time will be below the threshold most probably, stopping the "dropping" state for the rest of lower prio packets. The handling of different codel states is moved from MS object to the llc_queue, also offloading already loaded dl_tbf.cpp in the process. This will also allow in the future setting different CoDel parameters for different priority queues if needed. Tests need to be adapted since now the CoDel and PDU lifetime are incorporated into the llc_queue_dequeue(). Also because dequeue now also accesses related MS fields. Related: OS#5508 Change-Id: I2bce2e82ab6389d8a70130a5c26a966a316b0fa4
Diffstat (limited to 'src/tbf_dl.h')
-rw-r--r--src/tbf_dl.h2
1 files changed, 0 insertions, 2 deletions
diff --git a/src/tbf_dl.h b/src/tbf_dl.h
index c0c0284f..0f531eca 100644
--- a/src/tbf_dl.h
+++ b/src/tbf_dl.h
@@ -57,8 +57,6 @@ struct gprs_rlcmac_dl_tbf : public gprs_rlcmac_tbf {
void set_window_size();
void update_coding_scheme_counter_dl(enum CodingScheme cs);
- struct msgb *llc_dequeue(bssgp_bvc_ctx *bctx);
-
/* Please note that all variables here will be reset when changing
* from WAIT RELEASE back to FLOW state (re-use of TBF).
* All states that need reset must be in this struct, so this is why