Pedro Alvarez
ede44369f4
lib,rlc: add fix for issue in checking full RLC TX window
3 years ago
Pedro Alvarez
dc71048d83
lib,rlc: fixed up test for full rx window
3 years ago
Pedro Alvarez
b7ec529ff2
lib,rlc: allow ACK_SN be one over the end of the RX window.
3 years ago
Pedro Alvarez
51ffd91f16
lib,rlc: added unit test that triggers assert when RX window is full
3 years ago
Robert Falkenberg
a1db7fe9fe
rlc_am_nr: fix shadowed variable
3 years ago
Robert Falkenberg
e057a8ec27
lib,pdcp_nr: unit test - remove redundant assignment
3 years ago
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).
3 years ago
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
3 years ago
Pedro Alvarez
d5909a306f
lib,pdcp_nr: fixed typos and rephrased log in tests.
3 years ago
Pedro Alvarez
0f1c8b03c7
lib,pdcp_nr: fixed up some comments and a logging message
3 years ago
Pedro Alvarez
540483ba9e
lib,pdcp: added unit test to check discard timer is running when a PDU is TX'ed and stopped when the ACK has been notified.
3 years ago
Pedro Alvarez
e87416ff99
lib,pcdp_nr: added checks for stopped reordering timer and correct state
...
when receiving out-of-order packets in unit tests.
3 years ago
Pedro Alvarez
eb819cb9d0
lib,pdcp_nr: fix RX_DELIV update when t-Reordering expires
3 years ago
Pedro Alvarez
5f385bb33f
lib,pdcp_nr: fix logging message when discard timer expires
3 years ago
Pedro Alvarez
82e4b9e238
lib,pdcp_nr: fix discard timer not being stopped correctly
3 years ago
Pedro Alvarez
6d313f1875
lib,pdcp_nr: added extra comments on logging information to regarding
...
discard and t-Reordering expiry
3 years ago
Pedro Alvarez
c82f58c0b9
lib,pdcp_nr: drop SDU if RLC queue is full
3 years ago
Pedro Alvarez
57772ffa35
lib,pdcp_nr: added warning for trying to use t-Reordering of infinity on RLC UM bearers
3 years ago
Pedro Alvarez
8d65b40734
lib,pdcp_nr: allow for t-reordering of inifinity
3 years ago
Robert Falkenberg
e891d72ab8
lib,rlc_am_nr: fix out-of-bounds access when unpacking malformed status PDUs
3 years ago
Pedro Alvarez
84cf5c30ec
lib,pdcp_nr: rm ifdef to select PDCP NR. PDCP NR is always selected now
3 years ago
Robert Falkenberg
e0620873ef
lib,rlc_am_nr: no error on insufficient space for new or continued segment.
3 years ago
Robert Falkenberg
cbc8364a94
lib,rlc_am_nr: no error on insufficient space for RETX segment.
3 years ago
Robert Falkenberg
0c9ba5b87e
lib,asn1_utils: fix out of bounds access on zero-sized array
...
* fix error: ... offset 0 is out of the bounds [0, 0] [-Werror=array-bounds]
* fix note: destination object of size 0 allocated by ‘operator new []’
--> data_ = new T[cap_];
3 years ago
Pedro Alvarez
02b3558390
lib,pdcp_nr: fix typos
3 years ago
Pedro Alvarez
7f98101f30
lib,pdcp_nr: fix rx unit tests
3 years ago
Pedro Alvarez
904dbff471
lib,pdcp_nr: fixed PDCP NR tx unit tests
3 years ago
Pedro Alvarez
b361ab0650
lib,pdcp_nr: fix pdcp nr encryption
3 years ago
Pedro Alvarez
1b2c9502e2
lib,pdcp_nr: fix order in which header discard was done in PDCP NR.
3 years ago
Pedro Alvarez
39fbf21174
lib,pdcp_nr: fix order of integrity generation
3 years ago
Pedro Alvarez
a148dff0cd
gnb,ue,rrc: enable using integrity on DRBs
3 years ago
Robert Falkenberg
aa9f844630
adt,fsm: ignore GCC warning for template specialization w/wo defaults for ReactFn or GuardFn
3 years ago
Robert Falkenberg
02cb2532f8
lib,pdcp_nr: make sure MAC-I is computed on SRBs, even when integrity is not active yet
3 years ago
Pedro Alvarez
c015540f54
lib,pdcp_nr: make sure MAC-I is added on SRBs, even when integrity is not active yet
3 years ago
Pedro Alvarez
25b8a35d7a
lib,pdcp_nr: make sure we don extract MAC-I if integrity is not enabled. Make sure gNB does not enable integrity on DRBs
3 years ago
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)
3 years ago
Pedro Alvarez
97b66dbc4c
lib,rlc_am_nr: fixed mal-formed status report in test.
3 years ago
Pedro Alvarez
abc7294316
lib,rlc_am_nr: addded unit test for out of order status report
3 years ago
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
3 years ago
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
3 years ago
Pedro Alvarez
7c42b09e89
lib,rlc_am_nr: check if rx ACK is smaller than current Tx_Next_Ack
3 years ago
Robert Falkenberg
0c24e9c55f
lib,rlc_am_nr: clean retx_queue of ACK'ed SDUs
3 years ago
Robert Falkenberg
95480297f4
lib,rlc_am_nr: unit test removal of ACK'ed SDUs from retx queue
3 years ago
Robert Falkenberg
e20cb2e0c8
lib,rlc_am_nr: empty PDUs shall not increment metrics.num_tx_pdus
3 years ago
Pedro Alvarez
2c5a74340b
lib,rlc_um_nr: reduce log level of message
3 years ago
Robert Falkenberg
7b77558fd4
lib,rlc_um_nr: add log message if tx_sdu_queue has no non-null SDU
3 years ago
Pedro Alvarez
6a40fd8411
lib,pdcp_nr: disabe discard timer with RLC UM
3 years ago
Pedro Alvarez
92a6d8ec66
lib,rlc_um_nr: fix issue with discard in RLC UM NR
3 years ago
Pedro Alvarez
68b6facac8
lib,pdcp_nr: log RLC mode in PDCP configuration
3 years ago
Robert Falkenberg
9687af7660
add missing include for build with GCC 12
...
Related info: https://gcc.gnu.org/gcc-12/porting_to.html
3 years ago