aboutsummaryrefslogtreecommitdiffstats
path: root/src/poll_controller.cpp
AgeCommit message (Collapse)AuthorFilesLines
2018-02-19Update header includesMax1-0/+7
Many files include unnecessary headers and don't include headers which are actually used. Because of that combined with the fact that OsmoPCU is a mixture of C and C++, it makes it hard to modularize code. Fix this (using iwyu [1] tool): * add missing headers * remove unused headers [1] https://include-what-you-use.org/ Related: OS#1539 Change-Id: I8c9f488a43b099c72b2d30d3245e7ba50872fc00
2018-01-24TBF: make poll state internalMax1-2/+2
* add functions/macros for setting TBF's poll state * add function for checking TBF's poll state Change-Id: I6db1c4e7bd0a49aeb5e391afe371c36b96c6a702 Related: OS#1539
2017-05-26Cleanup FN schedulingMax1-9/+13
* replace magic number with defined constant * move copy-pasted code to inline functions * remove unused code Change-Id: I6fee0714453d0c3c3f3f875f88daea2d9c477331 Related: OS#1524
2016-02-01tbf: Use LListHead instead of llist_podsJacob Erlbeck1-4/+5
LListHead does basically the same like llist_pods, but more C++ish and with type safety. This commit turns the former list field of gprs_rlcmac_tbf into a private field, provides accessors, moves the related code from pcu_vty.c to pcu_vty_functions.cpp, and removes the llist_pods type and related code. Sponsored-by: On-Waves ehf
2015-08-28poll: Add a max_delay parameter to PollController::expireTimedoutJacob Erlbeck1-11/+4
Currently the maximum additional delay is hard coded to 13. This value depends on the source of the frame number value. This commit adds the max_delay parameter to make it caller dependant. Sponsored-by: On-Waves ehf
2014-09-10poll_controller: Be stricter with the timeout handlingDaniel Willmann1-4/+10
There is no reason to believe that an ACK that was polled for FN X and has not arrived on the next frame will arrive sometime after. Ticket: SYS#382 Sponsored-by: On-Waves ehf.
2014-08-07poll_controller: Use DL/UL TBFs in PollController::expireTimedout()Daniel Willmann1-9/+10
Be specific about where we are handling an UL and DL TBF Ticket: SYS#389 Sponsored by: On-Waves ehf
2014-07-30tbf: Use plain old data structure (PODS) for llist managementDaniel Willmann1-2/+3
The PODS struct has a back pointer to access the actual object. llist_pods_for_each_entry traverses the list of struct llist_pods and makes the entry available (through the back pointer). Ticket: SYS#389 Sponsored-by: On-Waves ehf
2013-10-30tbf: Move gprs_rlcmac_poll_timeout into the tbfHolger Hans Peter Freyther1-2/+2
Move the gprs_rlcmac_poll_timeout method into the tbf class and gprs_rlcmac_downlink_assignment into the BTS.
2013-10-30bts/tbf: Move the lists into the BTS and do the look-up from the BTSHolger Hans Peter Freyther1-2/+3
The list belongs to the BTS. This makes cleaning this up more easy and establishes a hierachy of resources that start from the BTS. The debug_diagram code is now broken.
2013-10-30sba: Create a SBAController that will manage the sbas for a BTSHolger Hans Peter Freyther1-2/+2
The PollController is a friend of the SBAController and is allowed to access the internal list. The list is hidden from everyone else. This is done because the calculation of timeout should belong into the PollController and not into the SBAController.
2013-10-30bts: Introduce a PollController that has the responsibility to pollHolger Hans Peter Freyther1-0/+62
For each frame indication received by the BTS the poll controller is asked to expire timedout entries.