osmo-pcu/tests
Pau Espin 37c2f84d53 Reestore last LLC frames never completely acked when freeing DL TBF
Scenario: A DL TBF is assigned over PCH (CCCH) and we start transmitting
DL data blocks blindly after X2002, but at the same time the MS start
packet-access-procedure to request an UL TBF.
Right now osmo-pcu correctly detects the MS is available in PDCH and
re-assigns a DL TBF using PACCH, but the LLC frames it transmitted in
the old PCH-assigned DL TBF get lost when that older TBF is freed
(because the DL blocks were removed from the GprsMs llc_queue).

This issue is now more frequent since X2002 timer was added recently to
delay starting requesting USF for a UL TBF, hence the contention
resolution in general takes more time and hence the PACCH assignment of
the DL TBF takes more time too, so more DL data blocks are transmitted
to the DL TBF assigned over PCH during that time.

This patch improves the situation to at least recover the DL blocks
transmitted if the DL TBF is freed (due to MS merge trigger by scenario
mentioned above), where no DL ACK/NACK was ever received by the MS.

Ideal solution would be to have complete tracking of which LLC PDUs from
the llc_queues were completely ACKed at RLC/MAC level, but that really
requires a lot of work and major refactoring, which are left as a future
improvement.

Change-Id: I9be4035fb2cf2b3ee56e91dcc12cc8c24028b4aa
2023-06-29 14:53:09 +02:00
..
alloc tbf: Improve TBF name description in logs 2023-05-31 12:54:14 +02:00
app_info tbf: Improve TBF name description in logs 2023-05-31 12:54:14 +02:00
bitcomp tests: Replace deprecated API log_set_print_filename 2021-02-19 16:24:11 +01:00
codel tests: Replace deprecated API log_set_print_filename 2021-02-19 16:24:11 +01:00
edge pcu_l1_if_phy: fix API function names 2023-05-03 09:57:38 +02:00
emu pcu_l1_if_phy: fix API function names 2023-05-03 09:57:38 +02:00
fn pcu_l1_if_phy: fix API function names 2023-05-03 09:57:38 +02:00
llc Reestore last LLC frames never completely acked when freeing DL TBF 2023-06-29 14:53:09 +02:00
llist llist: Add missing const qualifier in llist cast method 2015-08-24 12:23:50 +02:00
ms tbf: Improve TBF name description in logs 2023-05-31 12:54:14 +02:00
rlcmac tests/rlcmac: use ARRAY_SIZE macro 2022-08-06 02:51:46 +07:00
tbf Reestore last LLC frames never completely acked when freeing DL TBF 2023-06-29 14:53:09 +02:00
types tbf_ul_fsm: Delay moving ul_tbf to FLOW 2023-06-29 14:42:33 +02:00
ulc Improve logging in bts_snd_dl_ass() 2023-06-12 18:05:42 +02:00
Makefile.am Move resource allocation outside of tbf allocation 2023-04-26 13:29:03 +02:00
testsuite.at tests: Introduce unit tests for PDCH UL Controller 2021-03-15 19:35:43 +01:00