Commit Graph

2502 Commits

Author SHA1 Message Date
Andre Puschmann 08e9b0b5c1 enb,rrc: reduce log level when inactivity event is received from NR 2021-10-27 18:04:14 +02:00
Nils Fürste 3b1131936e Fix GTP-U bearer address conversion
Addresses with a leading 0 in hex represenatation were converted
without the leading 0 and padded afterwards with a trailing 0. This
leaded to wrong IPs in the GTP-U bearer setup.
2021-10-27 17:53:28 +02:00
Fabian Eckermann 3e9590fd13 Initialize variable. 2021-10-27 17:39:51 +02:00
Carlo Galiotto 5972345c9d rrc,nr: increase msg5 timer to 5s and inactivity...
timer to 10s

Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-26 23:18:17 +02:00
Carlo Galiotto 0d67fbc36c rrc: change call to release user
We call s1ap instead of rrc

Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-26 23:18:17 +02:00
Carlo Galiotto 9c74dda039 rrc,nr: add msg5 and inactivity timers to RRC-NR
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-26 23:18:17 +02:00
Andre Puschmann 0cfcd612b0 enb.conf.example: fix merge conflict 2021-10-26 22:19:29 +02:00
Ismael Gomez d972fb368c
Some LGTM fixes (#3564)
* Fix LGTM issues

* ue: add logging to switch on function

* Fix new LGTM issues
2021-10-26 21:15:36 +02:00
Alejandro Leal Conejos 547ebf11f7 Fixes coverity 372880 2021-10-26 21:09:44 +02:00
Francisco c928615952 nr,gnb,sched: avoid scheduling RAR for RNTIs whose ue object is not yet created in the scheduler 2021-10-26 16:58:55 +02:00
Nils Fürste 6c8324d95e srsenb.conf.example: Fix typos and make layout consistent 2021-10-26 16:33:42 +02:00
yagoda 5d6b48311e fixing a few regression bugs in embms 2021-10-26 15:35:18 +02:00
Pedro Alvarez bc903b13d5 Added nia0 to hardcoded configuration of nr-bearer-config 2021-10-26 14:59:40 +02:00
Carlo Galiotto dcc2c1c694 rrc,nr: defer rem_user after msg3 timer expires
This commits is to fix the issue of user removal from rrc_nr
after msg3 timer expires.
The issue was caused because the rrc_nr is accessing the ue object
after it gets removed from the users list in rrc_nr.
This commits defers the removal of the users, so there won't be any
access to invalid memory locations.

Fixes #3545

Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-26 14:57:56 +02:00
Francisco 67a39fbb81 nr,sched: push BSRs into the scheduler when nr_phy_test is run with PUSCH enabled 2021-10-25 20:55:00 +02:00
Fabian Eckermann 32a1646536
nr,gnb,rrc: Derive RRC parameters from config.
* Derive RRC parameters from config.
* nr,gnb,rrc: hard code prach config index to 8 to avoid expiring RA proc window.
2021-10-25 20:54:32 +02:00
Francisco 4d8a354b17 nr,gnb,rrc: implement reestablishment reject in case of reestablishment with cause reconfigfailure and no NR carrier 2021-10-25 20:50:18 +02:00
Xavier Arteaga 2f5a1ad2e3
SRSENB: MAC controller recover MAC bearer state after PDSCH KO burst (#3225)
* SRSENB: MAC controller recover MAC bearer state after PDSCH KO burst

* mac,lte: simplify scheduler phy config enable configuration

Co-authored-by: Francisco Paisana <francisco.paisana@softwareradiosystems.com>
2021-10-25 10:56:12 +02:00
Francisco e4247517d0 nr,sched: update sched_nr_test to support the new DL sched no-copy api 2021-10-23 21:09:26 +02:00
Andre Puschmann be388aa53f rrc_nr: temporary fix of heap-use-after free
see https://github.com/softwareradiosystems/srsLTE/issues/3545
2021-10-23 21:09:26 +02:00
Francisco 87459bad17 nr,sched: avoid resetting Tx softbuffer every time a new DL HARQ proc is allocated 2021-10-23 21:09:26 +02:00
Andre Puschmann cf4b6d0bea sched_nr_interface: make PHY results a reference to avoid copying 2021-10-23 21:09:26 +02:00
Andre Puschmann 2cee65bb88 enb,slot_worker: skip UL signal demod if scheduler returns empty results 2021-10-23 21:09:26 +02:00
Xavier Arteaga b54d4ad8e2 Avoid copying gNb common configuration in slot basis 2021-10-23 17:23:08 +02:00
Francisco 0663594aa1 nr,gnb,sched: add extra checks to sched to ensure the max nof grants is not exceeded 2021-10-23 09:20:28 +01:00
Carlo Galiotto 0c35045543 rrc,nr: remove default value from input arg + ...
change input arg name

Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-22 19:43:19 +01:00
Carlo Galiotto ebaab9b1d0 rrc,nr: add private fnc to overload public method...
... and propagate input to calling function

Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-22 19:43:19 +01:00
Carlo Galiotto 4f6905363f rrc,nr: add MSG3 activity timer to rrc_nr
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-22 19:43:19 +01:00
Francisco ceec108831 nr,sched: fix fmt string in sched nr harq 2021-10-22 18:08:43 +01:00
Francisco 327687cbc2 nr,sched: auto clear HARQs that exceeded maxretx, after the feedback has been processed 2021-10-22 18:08:43 +01:00
Pedro Alvarez fbcffb84bd Check if RLC is suspended before transmiting PDCP SDU.
This was done to avoid integrity issues, when the UE's RRC erroneously sent
measurement reports while the re-establishment was already in progress.

As errously sending PDCP PDUs on DRBs can cause issues as well, this was
disabled too.
2021-10-22 17:27:32 +01:00
Carlo Galiotto e3267c9dfd gtpu: remove unused local variable
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-21 23:26:46 +02:00
Francisco b9f0b4a558 lte,enb,gtpu: fix failing gtpu_test 2021-10-21 23:26:46 +02:00
Carlo Galiotto 284207dad6 WIP: fixing collision in the the users_map
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-21 23:26:46 +02:00
Ismael Gomez 6bdefa33e4 fix minor issues 2021-10-21 21:31:21 +02:00
Ismael Gomez 09cec9ca5c srsenb,phy: do not get reference to ul_grants, do a copy instead to protect concurrent access 2021-10-21 21:31:21 +02:00
Ismael Gomez 2aeb32533f Print error setting ul grant 2021-10-21 21:31:21 +02:00
Ismael Gomez c479a1e51e srsenb: Handle error in decode_pusch to avoid logging PUSCH with 0 rnti 2021-10-21 21:31:21 +02:00
Ismael Gomez cfec29548c Do not reset MAC UE object during C-RNTI update 2021-10-21 21:31:21 +02:00
Francisco fd998dac15 lte,enb,rrc: fix rrc_meascfg_test 2021-10-21 16:16:01 +01:00
Francisco c6226b0d94 lte,enb,rrc: parse cellIndividualOffset in rr.conf and propagate it to measConfig sent to UE 2021-10-21 16:16:01 +01:00
Pedro Alvarez 7155de91ca Added command to forcefully flush the buffers on srsenb and srsue. 2021-10-21 14:50:44 +01:00
Pedro Alvarez e9a7e6dbae Getting rid of sctp_init_client function. The only thing it does is call the sctp_init_socket function. 2021-10-21 14:50:44 +01:00
Francisco 3295449619 nr,gnb,sched: fix crash in debug mode due to incorrect is_lcid_valid check 2021-10-21 13:58:57 +01:00
Francisco e26be3732c lte,enb,sched: add comments to ue_buffer_manager explaining the logic for logging 2021-10-21 10:33:26 +01:00
Francisco a3dbc857d4 gnb,sched: fix lcid configuration in scheduler 2021-10-21 10:33:26 +01:00
Francisco f0a48d47b3 enb,sched: log lcid configurations in scheduler in a single log line 2021-10-21 10:33:26 +01:00
Francisco f2818d0504 enb,sched: improve sched ue buffer manager to show rnti in logs 2021-10-21 10:33:26 +01:00
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 2021-10-21 09:31:03 +01:00
Francisco 4a58c10f30 lte,enb,rlc: compute and forward to scheduler the number of bytes pending for retx and status pdu in RLC AM bearer 2021-10-21 09:31:03 +01:00
Francisco b14e75218d lte,enb,rrc: avoid creating scells for UEs whose release < 10 2021-10-20 18:51:21 +02:00
faluco b8171e493e Fix crash in mac_nr when accesing the ue_db and not checking if the rnti is valid, while there fix a potential data race.
Fix data race inside sched_nr when modifying per ue metrics.
2021-10-20 18:08:41 +02:00
Carlo Galiotto a4932564d7 stdout: remove extra value from eNB stats + ...
address PR review
- change "TO DO" into "TODO"
- remove forgotten "printf" for debug

Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-20 17:47:00 +02:00
Carlo Galiotto 4e3564a8a2 mac,stdout: add PUSCH and PUCCH SINR to stdout
This commit implements the PUCCH and PUSCH metrics in the MAC,
to be displayed in the eNB console.

Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-20 17:47:00 +02:00
Francisco 6d432646b9 lte,enb,sched: UL HARQs should return 0 pending bytes if empty 2021-10-20 11:48:34 +02:00
Francisco 0bd8f640db lte,enb,sched: Fix hanging handover due to lack of Msg4. 2021-10-20 11:48:34 +02:00
Fabian Eckermann 2aa59a55d5 Read max turbo decoder iterations from conf. 2021-10-20 10:08:44 +02:00
Xavier Arteaga 9ecea014bd Added PUSCH DMRS minimum SNR 2021-10-19 23:05:16 +02:00
Francisco 859f4d2185 nr,gnb,sched: avoid logging warning for pending feedback of UEs that were just removed 2021-10-19 22:50:57 +02:00
Francisco b3e974db9b nr,gnb,rrc: avoid warning when eutra requests sgnb release and destroys the UE before acknowledgement 2021-10-19 22:50:57 +02:00
Francisco 0b51848dda nr,gnb,rrc: use multiqueue to forward x2 tasks to NR stack 2021-10-19 22:50:57 +02:00
Andre Puschmann 146f12f0c0 enb,mac_nr: fix MAC PDU packing by tyring to pack multiple SDUs when possible
the patch adds support to fully use the available space in a MAC PDU by adding
multiple SDUs.
2021-10-19 11:51:39 +02:00
Francisco 51806982f7 nr,gnb,rrc: correctly release NR RNTI user after Reestablishment 2021-10-19 10:46:23 +01:00
Pedro Alvarez d7e2f442f7 Adding option to remove UE contexts if SCTP error occors.
This was done as after an SCTP error, the MME would try to page the UE,
but the UE was already RRC Connected.
2021-10-18 15:50:01 +01:00
Andre Puschmann 1db683053f enb,mac: fix buffer setting when receiving SBSR
the MAX_LCG is 7 so the loop needs to be inclusive to
set all 8 LCGs to 0
2021-10-18 16:17:53 +02:00
Francisco d5acf73c46 nr,gnb,sched: fix logging of tbs. check if sched args are supported at sched startup. change the tti logging to be equal to tti_rx 2021-10-18 14:50:14 +01:00
Andre Puschmann 3bf09021f9 enb: remove unused parameter 2021-10-18 14:17:53 +02:00
Francisco 643b5a1885 nr,gnb,rrc: Add comment explaining how the UE rrc_endc is updated in case of reestablishment 2021-10-18 09:42:25 +01:00
Francisco 277e6f2998 nr,gnb,rrc: Ignore measurementReports from UE while RRC Reconfiguration procedure is not yet complete. 2021-10-18 09:42:25 +01:00
Francisco abe2c8cba4 nr,gnb,rrc: Allow NR EN-DC to be re-activated in case of Reestablishment with cause other than ReconfFailure 2021-10-18 09:42:25 +01:00
Ismael Gomez 1d37c5b476 nr: increase nominal p0 pusch 2021-10-17 20:58:48 +02:00
Francisco 9ace701788 nr,gnb,sched: prioritize the search space with the highest number of position candidates 2021-10-16 22:43:23 +01:00
Francisco b6e890cc12 nr,gnb,sched: use search space id=2 for 5G NR NSA 2021-10-16 22:43:23 +01:00
Francisco 5b2afb1739 rrc,nr,gnb: ensure same PDCCH config is sent to PHY, scheduler cell config, and sched ue cfg 2021-10-16 22:43:23 +01:00
Francisco 7a16be9692 rrc,nr: ensure coresets and search spaces are passed to scheduler cell_cfg and ue_cfg 2021-10-16 22:43:23 +01:00
Andre Puschmann f96b315f81 enb,ue_nr: unpack LBSR and pass content to sched 2021-10-16 21:50:07 +02:00
Fabian Eckermann 9cbd2727f5 Disable measGapConfig in first reconfig. Remove all measurement reports for nr in the 2nd reconfig. 2021-10-16 21:43:34 +02:00
Xavier Arteaga bdcf90d990 Enable NR PUSCH EVM estimation in srsenb 2021-10-15 18:19:04 +02:00
Xavier Arteaga 3c40cd2840 Improved NR PHY logging info 2021-10-15 18:19:04 +02:00
Xavier Arteaga a5f6aa9f31 Added CSI string in PDSCH and PUSCH decode 2021-10-15 18:19:04 +02:00
Francisco 73260fb335 sched,nr: fix stack overflow in sched_nr_test 2021-10-15 17:22:52 +02:00
faluco dacf40f63e Delete move constructor and move assignment operator explictly for mac_pcap_base and s1ap_pcap classes.
Move emergency handlers header file into the support folder.

Refactored signal handling:
- Remove the dependency with the running static variable in the header file.
- Move implementations down to cc files.
- Allow specifying a new signal handler that will be used to stop the applications.
- Move signal handling files to support.
2021-10-15 15:05:37 +02:00
faluco 9075251627 Move the cleanup code from the signal handlers down to the new emergency handlers for the ue, epc and enb. 2021-10-15 15:05:37 +02:00
Fabian Eckermann 33df51a1f5 Remove error message if dl_freq and ul_freq are not specified. 2021-10-15 11:49:27 +02:00
Francisco 01d8814f39 sched,nr: when sched allocates PUSCH, SR doesn't need to be decoded 2021-10-15 10:22:55 +01:00
Fabian Eckermann b034a9c983 Lock mutex when setting common cfg. 2021-10-15 11:04:31 +02:00
Francisco f427a25a30 nr,gnb,mac: account for header space larger than 2 when packing PDSCH 2021-10-15 11:03:02 +02:00
Andre Puschmann f7dd327d08 enb,rrc_nr: send PUSCH nominal power 2021-10-15 10:58:31 +02:00
Carlo Galiotto dc3dad6e20 rrc,nr: implements PR review comments
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-15 10:57:44 +02:00
Carlo Galiotto fb75cbaadc rrc: disable MAC bearers when RNTI gets updated
When the RRC handles the C-RNTI CE to update the RNTI, all the bearers
associated with the new RNTI (that will no longer be used) need to be disabled.
This commit implements this.

Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-15 10:57:44 +02:00
Francisco 9df6c6b936 sched,nr: ensure the ue_cfg_t passed to the scheduler in NR FDD mode has the correct harq delay 2021-10-14 21:38:12 +01:00
Andre Puschmann 255ddb1329 enb,gnb: add basic support for sgnb release procedure
the procedure is currently started when the EUTRA UE object
is deleted (after RRC release) in order to clean-up the
ENDC resources on the gNB.
2021-10-14 21:30:14 +02:00
Francisco bc4264277a sched,nr: update NR scheduler tester to support parallel CC workers 2021-10-14 19:27:52 +01:00
Francisco ea324e8cbe nr,sched,test: update sched nr test to better reflect MAC-PHY FAPI 2021-10-14 19:27:52 +01:00
Andre Puschmann cc0255e4f1 enb,rrc_nr: reduce log level to info when C-RNTI is received for current RNTI
it might happen (cause by the UE or eNB) that the Msg3 with C-RNTI is passed
twice (e.g. Retx). It's ok to be logged for now but not in Error level. Reduce to warning.
2021-10-14 18:08:08 +02:00
Andre Puschmann d708f05869 rrc_endc: disable DC-PHR reporting in the UE
this solves #3432 until we've fully implemented the parsing/handling
of the DC-PHR
2021-10-14 17:57:17 +02:00
Carlo Galiotto ecd1a15e1f mac: revert order of processing MAC subPDUs
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-14 17:55:26 +02:00
Francisco efdd249cb3 nr,sched: fix dangling reference to ue_cfg in scheduler 2021-10-14 14:23:21 +01:00
Francisco 73859a5b6a nr,sched: improve logging of PDSCH and PUSCH in scheduler to also show coreset id and buffer state 2021-10-14 14:23:21 +01:00
Francisco 64ffd81cf9 nr,sched: fix recomputation of ue_bwp_cfg when sched receives new ue_cfg objects 2021-10-14 14:23:21 +01:00