Pedro Alvarez
e4207b177f
lib,rlc_am_lte: added fix for full tx window with wraparround
3 years ago
Pedro Alvarez
b001d6c10e
lib,rlc_am_lte: fix checkers for the TX window full
3 years ago
Zishuai CHENG
2e4b1aceaf
Parse tmsi type of mobile id and fixed the content length of network feature support
3 years ago
Robert Falkenberg
7e7eceda15
ctest: Viterbi test skips 0dB for non AVX2 machines
...
The accuracy of the 8-bit implementation of the Viterbi decoder used on
non-AVX2 machines falls below the theoretical accuracy at 0dB.
3 years ago
Robert Falkenberg
06f2ab6d7c
ctest: PDCCH test skips 100PRB for non AVX2 machines
...
The current 8-bit Viterbi decoder implementation for SSE (non-AVX2)
is not accurate enough to reliably decode all messages with a
code rate ~0.9 or higher, e.g. DCI format 2/2A messages in 100 PRB cell
at aggregation level 0.
3 years ago
Pedro Alvarez
0cc632988f
lib,rlc: tweaked some comments
3 years ago
Pedro Alvarez
f5658619b8
lib,rlc: ack_sn does not count as a positive or negative acknowledgment.
...
do not stop t-PollRetransmit for it
3 years ago
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.
3 years ago
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.
3 years ago
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
Robert Falkenberg
a1db7fe9fe
rlc_am_nr: fix shadowed variable
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
0f1c8b03c7
lib,pdcp_nr: fixed up some comments and a logging message
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
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
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
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
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
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
Pedro Alvarez
97b32f2fb6
rrc_nr,utils: fix generation of RLC configs from ASN.1 structs created from cfg parser.
3 years ago
Pedro Alvarez
3620308940
lib,pdcp_nr: added options to select re-ordering timer
3 years ago