Commit Graph

4937 Commits

Author SHA1 Message Date
Pedro Alvarez 39fbf21174 lib,pdcp_nr: fix order of integrity generation 2022-05-17 10:29:37 +01:00
Pedro Alvarez a148dff0cd gnb,ue,rrc: enable using integrity on DRBs 2022-05-17 10:29:37 +01:00
Robert Falkenberg aa9f844630 adt,fsm: ignore GCC warning for template specialization w/wo defaults for ReactFn or GuardFn 2022-05-17 09:53:32 +02:00
Robert Falkenberg 02cb2532f8 lib,pdcp_nr: make sure MAC-I is computed on SRBs, even when integrity is not active yet 2022-05-16 16:16:07 +01:00
Pedro Alvarez c015540f54 lib,pdcp_nr: make sure MAC-I is added on SRBs, even when integrity is not active yet 2022-05-16 16:16:07 +01:00
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 2022-05-16 16:16:07 +01: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 abc7294316 lib,rlc_am_nr: addded unit test for out of order status report 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 95480297f4 lib,rlc_am_nr: unit test removal of ACK'ed SDUs from retx queue 2022-05-13 06:49:13 +02:00
Robert Falkenberg e20cb2e0c8 lib,rlc_am_nr: empty PDUs shall not increment metrics.num_tx_pdus 2022-05-13 06:49:13 +02:00
Pedro Alvarez 2c5a74340b lib,rlc_um_nr: reduce log level of message 2022-05-12 22:25:11 +01:00
Robert Falkenberg 7b77558fd4 lib,rlc_um_nr: add log message if tx_sdu_queue has no non-null SDU 2022-05-12 22:25:11 +01:00
Pedro Alvarez 6a40fd8411 lib,pdcp_nr: disabe discard timer with RLC UM 2022-05-12 22:25:11 +01:00
Pedro Alvarez 92a6d8ec66 lib,rlc_um_nr: fix issue with discard in RLC UM NR 2022-05-12 22:25:11 +01:00
Pedro Alvarez 68b6facac8 lib,pdcp_nr: log RLC mode in PDCP configuration 2022-05-12 22:25:11 +01:00
Robert Falkenberg 9687af7660 add missing include for build with GCC 12
Related info: https://gcc.gnu.org/gcc-12/porting_to.html
2022-05-12 15:00:58 +02:00
Pedro Alvarez 97b32f2fb6 rrc_nr,utils: fix generation of RLC configs from ASN.1 structs created from cfg parser. 2022-05-11 18:19:29 +01:00
Pedro Alvarez 3620308940 lib,pdcp_nr: added options to select re-ordering timer 2022-05-11 12:10:54 +01:00
Pedro Alvarez 1fecae9b5a lib,pdcp_nr: added ifdef to select pdcp_entity_nr 2022-05-11 10:15:58 +01:00
Robert Falkenberg ebbecbe27c lib,rlc_am_nr: cosmetic change -- clang format 2022-05-10 14:02:39 +02:00
Robert Falkenberg 9a34d4d81b lib,rlc_am_nr: unit tests for NACK merging 2022-05-10 14:02:39 +02:00
Robert Falkenberg ecc995bd4b lib,rlc_am_nr: merge NACKs across SN overflows 2022-05-10 14:02:39 +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 283199d54f lib,rlc_am_nr: added unit test for nack ranges without SO 2022-05-09 14:03:25 +01: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 de67d88ca9 lib,rlc_am_nr: fix buffer state checker in rx status report with ranges test 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 855ab8f7fd lib,rlc_am_nr: added unit test to nack ranges 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
Pedro Alvarez 407c44617c lib,rlc_am_nr: fix typo 2022-05-02 20:39:10 +02: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
Robert Falkenberg 828c7ec02d lib,rlc_am_nr: Change log level for already acked (removed) RETX. 2022-04-28 14:55:44 +01:00
Andre Puschmann 70eaec21e2 all: fix uninitialized variables detected by coverity 2022-04-28 15:42:08 +02:00
Pedro Alvarez 3714548391 lib,rlc_am_nr: re-enable rlc am nr stress tests 2022-04-27 21:33:33 +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
Andre Puschmann cbc0b43621 lib,radio,rf: fix printf arguments 2022-04-27 09:28:06 +02:00
Andre Puschmann 67f66e7d63 radio_dummy: fix potential result overflow by converting to wider type first 2022-04-27 09:28:06 +02:00
Ali_UBUNTU18.04 3fdec57a47 liblte_mme: Added sec_hdr_type check in liblte_mme_pack_deactivate_eps_bearer_context_request_msg 2022-04-27 09:28:06 +02: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
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 4d59989f72 lib,rlc_am_nr: fix t-PollRetransmion timer test to work with 18bit SN 2022-04-25 15:49:58 +01:00
Pedro Alvarez abfa113576 lib,rlc_am_nr: fix wrong buffer state calculation for segment RETXes
when SO=0
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 2425985ab2 lib,rlc_am_nr: added test for poll retx timer 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
Pedro Alvarez 515f2099be lib,rlc_am_nr: added SN to get pdu poll function. Setting POLL_SN now. 2022-04-25 15:49:58 +01:00
Pedro Alvarez f93d699abc lib,rlc_am_nr: retransmit first un-acked SDU when t-Poll_retransmit
expires
2022-04-25 15:49:58 +01:00
Pedro Alvarez b3edced44a lib,rlc_am_nr: added t_poll_retransmit to tx entity 2022-04-25 15:49:58 +01:00
Robert Falkenberg c0546b8634 lib,rlc_am_nr: increase verbosity on invalid ACK 2022-04-25 12:19:37 +02:00
Robert Falkenberg 4028b26274 lib,rlc_am_nr: add info_state() 2022-04-25 12:19:37 +02:00
Robert Falkenberg c16071a3ac lib,rlc_am_nr: extend unit tests to check buffer state 2022-04-25 12:00:31 +02:00
Robert Falkenberg d66c76b374 lib,rlc_am_nr: consider size of all pending retx in buffer state 2022-04-25 12:00:31 +02:00
Robert Falkenberg ced6cf6e40 lib,rlc_am_nr: consider SDU under segmentation in buffer state 2022-04-25 12:00:31 +02:00
Robert Falkenberg e0acb7b81c lib,rlc_am_nr: update buffer-state-related unit test 2022-04-25 12:00:31 +02:00
Robert Falkenberg 20201cd89b lib,rlc_am_nr: cosmetic change, add comment 2022-04-25 12:00:31 +02:00
Pedro Alvarez 8a27cdf45a lib,rlc_am_nr: fix incorrectly stopping the t-StatusProhibit 2022-04-23 00:00:16 +01:00
Pedro Alvarez 63877ba209 lib,rlc_am_nr: make sure that tx_buffer_queue size is configurable 2022-04-22 22:05:03 +01:00
Andre Puschmann 8505523928 ue,ue_sync: fix CP setting for find and track objects
move setting of CP for find and track objects further down
after the respective objects have been resized and updated
there frame_len, fft_size, etc. members.

Doing this too early cause a segfault with div by zero
because the values were all zero
2022-04-22 14:42:45 +02:00
Andre Puschmann 225a7741b3 pssch_ue: fix uninitialized variables 2022-04-22 14:42:45 +02:00
Andre Puschmann d854bbc22e enb,rrc: remove hard-coded SCG bearer config
Use 5QI config when configuring secondary cell group bearer for NSA.
The 5QI used for this needs to match with the QCI used for the initial
LTE DRB.

This allows to use RLC AM over NSA.
2022-04-22 13:40:23 +02:00
Andre Puschmann 319a185eba phy_common_test: fix test when compiled with USE_LTE_RATES 2022-04-22 11:55:59 +02:00
Robert Falkenberg ca37eed664 lib,rlc_am_nr: default initialize member in class definition 2022-04-21 06:54:43 +02:00
Robert Falkenberg 85c95d94b2 lib,rlc_am_nr_test: add retx test with trimmed status PDU 2022-04-21 06:54:43 +02:00
Robert Falkenberg a2332d10f2 lib,rlc_am_nr_packing: unit test + bugfix for trimming of status PDUs 2022-04-21 06:54:43 +02:00
Robert Falkenberg 872e55a84e lib,rlc_am_nr_packing: reorder functions by importance 2022-04-21 06:54:43 +02:00
Robert Falkenberg d9d3bfde63 lib,rlc_am_nr: remove redundant function calls. 2022-04-21 06:54:43 +02:00
Robert Falkenberg 48dce0aab0 lib,rlc_am_nr: truncate status PDUs if necessary 2022-04-21 06:54:43 +02:00
Robert Falkenberg 489259dc78 lib,rlc_am_nr: extend status PDU struct with self-contained packed size info
This change refactors the rlc_am_nr_status_pdu_t from a simple
container into a class with integrated counter of the packed size.
As this depends on the SN length, the SN length must be passed
via constructor.
2022-04-21 06:54:43 +02:00
Robert Falkenberg eec4a395d0 lib,rlc_am_nr: status PDU to string prints NACK range 2022-04-21 06:54:43 +02:00
Andre Puschmann 68695078f0 phy_common: add basic test for sample rate for different bandwidths 2022-04-20 17:51:36 +02:00
Francisco 6984159c6f asn1: fix amf-ngap-ue-id unpacking overflow bug 2022-04-20 17:16:49 +02:00
Andre Puschmann ba092c0e9b asn1,ngap_test: add TC to check unpacking of AMF-UE-ID > 32bits 2022-04-20 17:16:49 +02:00
Robert Falkenberg 87f22bb294 lib,rlc_am_nr_test: cosmetic change, deleted commented code 2022-04-20 12:17:52 +02:00
Robert Falkenberg 25d7258442 lib,rlc_am_nr_test: comment new tests 2022-04-20 12:17:52 +02:00
Robert Falkenberg 3a874e78af lib,rlc_am_nr_test: fix format string of test delimiter 2022-04-20 12:17:52 +02:00
Robert Falkenberg fc38d4f4d9 lib,rlc_am_nr: consider offset when packing retx with segmentation 2022-04-20 12:17:52 +02:00
Robert Falkenberg 69231f000f lib,rlc_am_nr: don't enqueue segment retx if already pending for retx. 2022-04-20 12:17:52 +02:00
Robert Falkenberg 1a5683c226 lib,rlc_am_nr: add overlap check for segment offsets in rlc_amd_retx and queue 2022-04-20 12:17:52 +02:00
Robert Falkenberg 62558d94da lib,rlc_am_nr: fix segmented retx of non-contiguous segments 2022-04-20 12:17:52 +02:00
Robert Falkenberg 697781f024 lib,rlc_am_nr: testcase for NACK duplicate (full PDU) 2022-04-20 12:17:52 +02:00
Pedro Alvarez 386b1640a9 gnb,bearer_mapper: hack to keep 5QI information in bearer mapper 2022-04-20 10:24:26 +01:00
Pedro Alvarez b8006534f0 gnb,ngap,rrc_nr: Passing 5QI from the NGAP to the RRC when establishing eps bearers. Filling PDCP-NR config from 5QI config. 2022-04-20 10:24:26 +01:00
Pedro Alvarez 47caa60b45 lib,rlc_am_nr: fix up comment 2022-04-12 14:43:44 +01:00