Codebot
b5c994dd79
Merge branch 'next' into agpl_next
2022-07-17 21:12:22 +00:00
Pedro Alvarez
0cc632988f
lib,rlc: tweaked some comments
2022-07-08 12:57:07 +01:00
Pedro Alvarez
f5658619b8
lib,rlc: ack_sn does not count as a positive or negative acknowledgment.
...
do not stop t-PollRetransmit for it
2022-07-08 12:57:07 +01:00
Pedro Alvarez
7ac7c8673a
lib,rlc: Fixed issue where `p` bit was not checked if PDU was outside of
...
the RX window. This could lead to a data stall, where TX keeps retx'ing
the same PDU to request a status report.
2022-07-08 12:57:07 +01:00
Pedro Alvarez
f4ca1848d6
lib,rlc: allow reception of ACK_SN == TX_NEXT+1,
...
as this can happen when the last segment has not been sent yet.
2022-07-08 12:57:07 +01:00
Pedro Alvarez
ede44369f4
lib,rlc: add fix for issue in checking full RLC TX window
2022-07-08 12:57:07 +01:00
Pedro Alvarez
dc71048d83
lib,rlc: fixed up test for full rx window
2022-07-08 12:57:07 +01:00
Pedro Alvarez
b7ec529ff2
lib,rlc: allow ACK_SN be one over the end of the RX window.
2022-07-08 12:57:07 +01:00
Codebot
ac06cf7453
Merge branch 'next' into agpl_next
2022-06-12 21:12:20 +00:00
Robert Falkenberg
a11291eb08
lib,rlc_am_nr: fix handling of NACK ranges with SO reaching SDU edge
...
This changes the handling of NACK ranges with segment offset (SO),
where either so_start or so_end reach the edge of a full SDU.
That SDU is then NACK'ed as a whole, rather than as a segment
from 0 to 0xFFFF.
Otherwise, the search for segments will fail if said SDU was
initially sent as a whole (without segmentation).
2022-06-06 11:27:52 +02:00
Robert Falkenberg
fccfd5e140
lib,rlc_am_{lte,nr}: fix/add tx_window overrun protection
...
This commit fixes as bug causing a crash of the eNB in case
of many pending RETX and the reception of a trimmed PDU.
The following sequence leads to a crash:
- RETX queue contains many PDUs for RETX
- Receive trimmed PDU containing a trimmed subset of NACKs
- RETX queue is cleared and re-populated with a trimmed subset
- After all RETX (/!\ trimmed subset) is done, continue TX new PDUs
- tx_window blows up
- tx_window overflows if another status PDU is not received in time
- Overflow overwrites oldest element in tx_window
- Handling of next status PDU fails due to missing elements in tx_window
Related PR #4029
2022-06-06 11:26:57 +02:00
Codebot
6a3b9257e3
Merge branch 'next' into agpl_next
2022-06-05 21:12:59 +00:00
Pedro Alvarez
6d313f1875
lib,pdcp_nr: added extra comments on logging information to regarding
...
discard and t-Reordering expiry
2022-06-02 20:25:53 +01:00
Codebot
49554c2c46
Merge branch 'next' into agpl_next
2022-05-22 21:12:28 +00:00
Robert Falkenberg
e0620873ef
lib,rlc_am_nr: no error on insufficient space for new or continued segment.
2022-05-19 15:32:32 +02:00
Robert Falkenberg
cbc8364a94
lib,rlc_am_nr: no error on insufficient space for RETX segment.
2022-05-19 15:32:32 +02:00
Codebot
e79aa61a9a
Merge branch 'next' into agpl_next
2022-05-15 21:14:43 +00:00
Pedro Alvarez
ae8191c46d
lib,rlc_am_nr: make sure we check that ACK_SN is not larger than TX_NEXT (after we checked we didn't get an ACK out of order)
2022-05-13 10:27:52 +01:00
Pedro Alvarez
97b66dbc4c
lib,rlc_am_nr: fixed mal-formed status report in test.
2022-05-13 10:27:52 +01:00
Pedro Alvarez
6d55560256
lib,rlc_am_nr: check if ACK SN is within rx_window. Stop
...
t-PollRetransmit only if status report is not ignored
2022-05-13 10:27:52 +01:00
Pedro Alvarez
c457132570
lib,rlc_am_nr: avoid if that would always be true when checking the
...
out-of-order ACK. Check ACK_SN instead of stop SN with Tx_Next_Ack
2022-05-13 10:27:52 +01:00
Pedro Alvarez
7c42b09e89
lib,rlc_am_nr: check if rx ACK is smaller than current Tx_Next_Ack
2022-05-13 10:27:52 +01:00
Robert Falkenberg
0c24e9c55f
lib,rlc_am_nr: clean retx_queue of ACK'ed SDUs
2022-05-13 06:49:13 +02:00
Robert Falkenberg
e9156d4ba2
lib,rlc_am_nr: status PDU creation supports NACK range
2022-05-10 14:02:39 +02:00
Pedro Alvarez
e01bbb8f79
lib,rlc_am_nr: support also NACK ranges without SO_start/end. Fix for NACK ranges of sizee == 1
2022-05-09 14:03:25 +01:00
Pedro Alvarez
6d8357bee9
lib,rlc_am_nr: deleted error log for unhandled NACK ranges
2022-05-09 14:03:25 +01:00
Pedro Alvarez
c386d89577
lib,rlc_am_nr: fix nack ranges with so
2022-05-09 14:03:25 +01:00
Pedro Alvarez
444783e2f2
lib,rlc_am_nr: added handling of nack ranges at RX
2022-05-09 14:03:25 +01:00
Codebot
f2dff0b7a0
Merge branch 'next' into agpl_next
2022-05-04 16:21:18 +00:00
Pedro Alvarez
840aac7fda
lic,rlc_am_nr: removed stop_no_lock(), it is not necessasry
2022-04-29 09:54:49 +01:00
Pedro Alvarez
ea532cbf41
lib,rlc_am_nr: added stop() method to RX entity
2022-04-29 09:54:49 +01:00
Pedro Alvarez
2f8fd7a483
lib,rlc_am_nr: add stop() method to TX entity
2022-04-29 09:54:49 +01:00
Codebot
4d2b5b8eda
Adding AGPL copyright to new files
2022-04-29 07:28:44 +00:00
Codebot
9211ad7d51
Merge branch 'next' into agpl_next
2022-04-29 07:28:41 +00:00
Robert Falkenberg
828c7ec02d
lib,rlc_am_nr: Change log level for already acked (removed) RETX.
2022-04-28 14:55:44 +01:00
Pedro Alvarez
e023cecd28
lib,rlc_am_nr: lower log level of unsupported NACK ranges from warning to error
2022-04-27 21:30:13 +01:00
Pedro Alvarez
5992303aca
lib,rlc_am_nr: make sure we react to polling bit, even if SDU/SDU
...
segment is a duplicate/overlapping.
2022-04-27 16:27:52 +01:00
Pedro Alvarez
68cc16ad68
lib,rlc_am_nr: fix assert triggered by receiving duplicate segments
2022-04-27 16:27:52 +01:00
Pedro Alvarez
ee06a8893b
lib,rlc_am_nr: fix wrong full sdu queue check
2022-04-26 22:01:47 +02:00
Pedro Alvarez
9dbb7acffa
lib,rlc_am_nr: ensure early return if there is not enough space for payload plus header
2022-04-26 20:38:46 +02:00
Codebot
123f766935
Merge branch 'next' into agpl_next
2022-04-26 08:28:16 +00:00
Pedro Alvarez
0c562336d2
lib,rlc_am_nr: change update of POLL SN to be the currently being
...
transmitted SDU (if not an RETX)
2022-04-25 15:49:58 +01:00
Pedro Alvarez
d7a32a0ea5
lib,rlc_am_nr: sending first SDU segment if t-PollRetransmit expires
...
instead of full SDU. Adressing test accordingly
2022-04-25 15:49:58 +01:00
Pedro Alvarez
361d3f46e0
lib,rlc_am_nr: starting to fix retx poll expiry test
2022-04-25 15:49:58 +01:00
Pedro Alvarez
42f7094a0e
lib,rlc_am_nr: changed order in which the ack of poll SN is checked
2022-04-25 15:49:58 +01:00
Pedro Alvarez
0ee20d7a0c
lib,rlc_am_nr: addressing reviewers comments:
...
* Tweaked logs
* Addressed a missing modulus in handling a state variable.
* made restarting t-PollRetransmission look more like the comment.
2022-04-25 15:49:58 +01:00
Pedro Alvarez
0551244d64
lib,rlc_am_nr: make sure has_data returns true when there are retxs. Make sure t-PollRetransmit is not started if it is set to infinity.
2022-04-25 15:49:58 +01:00
Pedro Alvarez
6ff18272e0
lib,rlc_am_nr: added debug_window function
2022-04-25 15:49:58 +01:00
Pedro Alvarez
d2d3c4140a
lib,rlc_am_nr: make sure that sdu_under_segmentation is set before calculating the polling bit
2022-04-25 15:49:58 +01:00
Pedro Alvarez
ffb0c21903
lib,rlc_am_nr: stop poll retransmission if POLL_SN is ACKed/NACKed
2022-04-25 15:49:58 +01:00