13 Commits (f93d428e490c17e2d74b014d2068f1ebd111d21c)

Author SHA1 Message Date
Pedro Alvarez f93d428e49 Moved RLC AM data structures to their own file 3 years ago
Francisco 7ad1ad800e lte,enb,rlc: atomically compute DL buffer state and update the scheduler in the eNB 3 years ago
Ismael Gomez 80c48a8b01 rlc: protect access to tx_enabled 3 years ago
Francisco 7aa5f731ce lte,enb,rlc: push to scheduler pending prioritized bytes both in case of RLC timer expiry or in case of new buffer state detection 3 years ago
Francisco 4a58c10f30 lte,enb,rlc: compute and forward to scheduler the number of bytes pending for retx and status pdu in RLC AM bearer 3 years ago
faluco fa351cd285 Rename functions that contain the unsafe word to nolock.
The term "unsafe" does not clearly state that the function is not locking the shared date and it sounds "dangerous", so use a more explicit term.
3 years ago
Andre Puschmann 59e1bca3f5 rlc_am_lte: fix potential crash when attempting to resize tx queue
under some circumstances it could happen that the RLC is configured
when SDUs are already being written to the queue. The resize
operation of the underlying container would fail in this case.

Make sure to empty the queue before doing the resize.
3 years ago
faluco d009160ba6 Fix data race in the metrics of the rlc. 3 years ago
Francisco Paisana f518861ebc fix location of support/ folder. Created macros for ASSERT_EQ and ASSERT_NEQ 3 years ago
Francisco Paisana 599fc978a5 improvement of srsran_assert design, with specializations to enable/disable assertions based on compile flags other than ASSERTS_ENABLED. Creation of the support/ folder 3 years ago
Andre Puschmann 4379c20eb9 rlc_am_lte: avoid locking of Rx mutex twice when generating status PDU
call reset_status(), which now is an private method directly when
building a status PDU. No need for the Tx side to call Rx again.
3 years ago
Andre Puschmann 53a7dc78ee rlc_am_lte: replace do_status boolean with atomic
the do_status is queried from the Tx code frequently. To reduce
chances to delay the execution because the RLC Rx side is currently
holding the mutex we can use an atomic.
3 years ago
Pedro Alvarez 171d5727be Moved lib RLC into it's own folder 3 years ago