2675 Commits (6a3b9257e33948977bedab71ce75e6746d843de2)

Author SHA1 Message Date
Francisco fec97689a2 rrc,nr,gnb: refactored rrc nr cfg default and derived param generation to be mostly independent of parser 3 years ago
Francisco 0b8a6970f0 nr,gnb,rrc: fix ssb frequency derivation when coreset0 is active 3 years ago
Francisco 92c4e6e2d0 nr,gnb: account for CORESET#0 RB offset (See 38.213, table 13-1) in computation of SSB center frequency 3 years ago
Pedro Alvarez e68bdf3718 Added support to sending error indication when receiving some S1AP messages in the wrong state 3 years ago
Andre Puschmann 800933c38e slot_worker: disable baseband dump by default and don't exit after finishing 3 years ago
Andre Puschmann 2117aa93e2 slot_worker: add compile time option to write baseband signal to file 3 years ago
Andre Puschmann 9987b9e70b phy_common: fix number of antenna port for NR-only configs 3 years ago
Codebot 3a9014802d Merge branch 'next' into agpl_next
# Conflicts:
#	srsenb/hdr/stack/rrc/nr/rrc_config_nr.h
#	srsenb/hdr/stack/rrc/rrc_nr.h
#	srsenb/src/stack/mac/nr/sched_nr_signalling.cc
#	srsenb/test/rrc/rrc_nr_test.cc
3 years ago
Pedro Alvarez e65bcd7147 Changed default max S1 Setup retries to infinity 3 years ago
Pedro Alvarez 99e8ddefee Terminate application if the eNB cannot connect to the MME after max s1 retries is reached 3 years ago
Pedro Alvarez e5a83474cc Added max_s1_setup retries option to S1AP 3 years ago
Pedro Alvarez 930e3699d0 Added max_s1_retries parameter 3 years ago
faluco 8d33d93c77 Fix a race condition in the enb csv metrics where set_handle was called while the metrics thread is running causing a race in the enb member variable.
Fix it by setting it during object construction.
3 years ago
Pedro Alvarez 174648e487 Restart S1AP on SCTP_ERROR event 3 years ago
Francisco 16753a006a nr,gnb,rrc: add test logger delimiter; handle rrc setup complete 3 years ago
Francisco fd7c5e375c nr,gnb,rrc: implement NR RRCSetup in RRC and wrote unit test 3 years ago
Codebot 63fe471fa6 Merge branch 'next' into agpl_next 3 years ago
Andre Puschmann 0967cda042 gnb,stack: move gNB components into own folder
* move RRC, MAC, NGAP, SDAP into gnb folder
* move testing code below respective layers
3 years ago
Francisco 2d6ce768c7 nr,gnb,rrc: generation of MIB/SIB1 inside rrc_nr class and test to verify the correct output 3 years ago
Francisco 5f3afffd05 nr,gnb: implementation of sib and mib asn1 generation functions 3 years ago
Francisco 96fd3aae3c nr,gnb: small gnb interface refactors and fix of byte buffer operator= 3 years ago
Francisco 0ac3f8b242 nr: fix ngap initialization in case of NR SA 3 years ago
Francisco 7e7f7b4c01 nr: fix failing unit tests 3 years ago
Ismael Gomez d5c235635f check lteworker is not null in log line 3 years ago
Francisco dab6e8bdcd nr,gnb: updates in parsing and phy files to allow the splitting of NR and LTE stacks 3 years ago
Francisco 8d719db43d nr,gnb,mac: implement zero-copy get_dl_sched/get_ul_sched NR scheduler interface 3 years ago
Carlo Galiotto ba50bbfb76 rlc,rrc,nr: remove rb_type from rlc_um_config
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto 9c2099f680 rrc,rlc,nr: fix RB label in RLC-NR for UE logs + ..
add rb_type in rlc_um_config

Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto d95c31d2de rlc,rrc,nr: fix rlc bearer string diplayed in logs
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Andre Puschmann c02aeee0d8 gtpu: only add missing whitespace 3 years ago
Andre Puschmann 79c443fd60 rrc_nr: add log_rrc_message helper to UE object to print RNTI 3 years ago
Andre Puschmann c913db5ade enb,rrc_nr: log RRC messages as Json
* add log messages for RRC NR message containers sent to EUTRA RRC
* add helper function to pack RRC message into byte_buffer
3 years ago
Francisco f6e1ecdaf3 nr,gnb,mac: remove redundant checks and unused lcid enum constants 3 years ago
Francisco c615df9d1d nr,gnb,mac: prioritize CRNTI CE handling over remaining SDUs and CEs in gNB mac receiver 3 years ago
Francisco 885e1bcc60 nr,gnb,sched: ensure the users only get allocated if they have buffer state > 0 3 years ago
Francisco 6fb5257609 nr,gnb,sched: cleanup of checks in sched_nr_allocator and removal of unused classes 3 years ago
Francisco 7b989d9976 nr,gnb,sched: refactored slot_ue class to use pointer to ue_carrier instead of deriving all necessary parameters 3 years ago
Francisco da9c564ad4 nr,gnb,sched: remove unused sched_nr_interface types 3 years ago
Francisco 1a56629a72 nr,gnb,sched: centralized all feedback/event management (cc-specific and non-cc-specific) into a single class 3 years ago
Francisco 7c146c5198 nr,gnb,sched: refactored sched nr common event handling to use accumulated event handling logging 3 years ago
Francisco e5e047bc63 nr,gnb,sched: avoid that the nr sched handles the rach before it creates the ue object 3 years ago
Francisco 40fded7222 nr,gnb,sched: improve logging of slot events in the scheduler 3 years ago
Francisco e19a0aa281 nr,gnb,sched: refactored sched nr common event handling 3 years ago
Francisco f2409534e4 nr,gnb,sched: Simplify sched api and locking design to better reflect the mac-phy FAPI interface
- removal of condition variables from sched main calls
- addition of sched sched::slot_indication call as a point of synchronization per slot
- removal of sched_worker_manager class
- removal of serv_cell_manager class
- centralization of cc-specific functionality and components in cc_worker
3 years ago
Francisco fa09a9d11a enb: make the pcap default boost arguments consistent with enb.conf 3 years ago
Francisco d3a100257d lte,enb,s1 handover: stop ts1 handover timers when an handover cancel occurs after the Handover preparation 3 years ago
Francisco 0dc9cf142a lte,enb,rrc: verify the drbtoaddmodlist is correctly updated in the add_erab case, and change the function add_erab to addmod_erab 3 years ago
Francisco 638dbc6f7e lte,enb,rrc: the erab should not be fully released during an s1ap erab modify procedure. Instead, it should be overwritten 3 years ago
Francisco b3d11af32d nr,gnb,mac: fix access to uninit array in MAC UE NR metrics read 3 years ago
Codebot 5275f33360 Merge branch 'next' into agpl_next 3 years ago
Francisco 1272f4c327 nr,gnb,mac: fix log tti context overflow 3 years ago
Codebot 1cd26af06b Merge branch 'next' into agpl_next 3 years ago
Andre Puschmann 4c7bc57b01 enb,ue_nr: fix warning when unpacking MAC PDU with padding 3 years ago
Pedro Alvarez 5735118ea0 Make sure SCTP notifications are not handled. Improve logging of SCTP ASSOC CHANGE 3 years ago
Andre Puschmann 5f837c0c67 enb,nr: rewrite UL PDU processing to handle CEs in reverse order but SDUs in order
this makes sure that C-RNTI CE gets processed before any SDU gets processed.
but it also makes sure that all SDUs then are processed in-order to
avoid reordering at higher layers.
3 years ago
Alejandro Leal Conejos af3a2ef589 Fixes coverity 359789 3 years ago
Alejandro Leal Conejos 6cd917fca5 Fixes coverity 370816 3 years ago
Alejandro Leal Conejos 0fdbfcffd0 Removes unnecesary cast 3 years ago
Bedran Karakoc 9943c79c4a Return error in ul nas transport if AMF ctxt is not available 3 years ago
Bedran Karakoc a14cc451d0 Addition NGAP cleanup 3 years ago
Bedran Karakoc 7c53f1cbab Add stdout for successful NG connection 3 years ago
Andre Puschmann 08e9b0b5c1 enb,rrc: reduce log level when inactivity event is received from NR 3 years ago
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.
3 years ago
Fabian Eckermann 3e9590fd13 Initialize variable. 3 years ago
Carlo Galiotto 5972345c9d rrc,nr: increase msg5 timer to 5s and inactivity...
timer to 10s

Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto 0d67fbc36c rrc: change call to release user
We call s1ap instead of rrc

Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto 9c74dda039 rrc,nr: add msg5 and inactivity timers to RRC-NR
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Andre Puschmann 0cfcd612b0 enb.conf.example: fix merge conflict 3 years ago
Ismael Gomez d972fb368c
Some LGTM fixes (#3564)
* Fix LGTM issues

* ue: add logging to switch on function

* Fix new LGTM issues
3 years ago
Alejandro Leal Conejos 547ebf11f7 Fixes coverity 372880 3 years ago
Francisco c928615952 nr,gnb,sched: avoid scheduling RAR for RNTIs whose ue object is not yet created in the scheduler 3 years ago
Nils Fürste 6c8324d95e srsenb.conf.example: Fix typos and make layout consistent 3 years ago
yagoda 5d6b48311e fixing a few regression bugs in embms 3 years ago
Pedro Alvarez bc903b13d5 Added nia0 to hardcoded configuration of nr-bearer-config 3 years ago
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>
3 years ago
Codebot 2cda208936 Merge branch 'next' into agpl_next 3 years ago
Francisco 67a39fbb81 nr,sched: push BSRs into the scheduler when nr_phy_test is run with PUSCH enabled 3 years ago
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.
3 years ago
Francisco 4d8a354b17 nr,gnb,rrc: implement reestablishment reject in case of reestablishment with cause reconfigfailure and no NR carrier 3 years ago
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>
3 years ago
Francisco e4247517d0 nr,sched: update sched_nr_test to support the new DL sched no-copy api 3 years ago
Andre Puschmann be388aa53f rrc_nr: temporary fix of heap-use-after free
see https://github.com/softwareradiosystems/srsLTE/issues/3545
3 years ago
Francisco 87459bad17 nr,sched: avoid resetting Tx softbuffer every time a new DL HARQ proc is allocated 3 years ago
Andre Puschmann cf4b6d0bea sched_nr_interface: make PHY results a reference to avoid copying 3 years ago
Andre Puschmann 2cee65bb88 enb,slot_worker: skip UL signal demod if scheduler returns empty results 3 years ago
Xavier Arteaga b54d4ad8e2 Avoid copying gNb common configuration in slot basis 3 years ago
Francisco 0663594aa1 nr,gnb,sched: add extra checks to sched to ensure the max nof grants is not exceeded 3 years ago
Carlo Galiotto 0c35045543 rrc,nr: remove default value from input arg + ...
change input arg name

Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
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>
3 years ago
Carlo Galiotto 4f6905363f rrc,nr: add MSG3 activity timer to rrc_nr
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Francisco ceec108831 nr,sched: fix fmt string in sched nr harq 3 years ago
Francisco 327687cbc2 nr,sched: auto clear HARQs that exceeded maxretx, after the feedback has been processed 3 years ago
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.
3 years ago
Carlo Galiotto e3267c9dfd gtpu: remove unused local variable
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Francisco b9f0b4a558 lte,enb,gtpu: fix failing gtpu_test 3 years ago
Carlo Galiotto 284207dad6 WIP: fixing collision in the the users_map
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Ismael Gomez 6bdefa33e4 fix minor issues 3 years ago
Ismael Gomez 09cec9ca5c srsenb,phy: do not get reference to ul_grants, do a copy instead to protect concurrent access 3 years ago
Ismael Gomez 2aeb32533f Print error setting ul grant 3 years ago
Ismael Gomez c479a1e51e srsenb: Handle error in decode_pusch to avoid logging PUSCH with 0 rnti 3 years ago
Ismael Gomez cfec29548c Do not reset MAC UE object during C-RNTI update 3 years ago
Francisco fd998dac15 lte,enb,rrc: fix rrc_meascfg_test 3 years ago
Francisco c6226b0d94 lte,enb,rrc: parse cellIndividualOffset in rr.conf and propagate it to measConfig sent to UE 3 years ago
Pedro Alvarez 7155de91ca Added command to forcefully flush the buffers on srsenb and srsue. 3 years ago
Pedro Alvarez e9a7e6dbae Getting rid of sctp_init_client function. The only thing it does is call the sctp_init_socket function. 3 years ago
Francisco 3295449619 nr,gnb,sched: fix crash in debug mode due to incorrect is_lcid_valid check 3 years ago
Codebot 9d7836817c Merge branch 'next' into agpl_next
# Conflicts:
#	lib/include/srsran/common/signal_handler.h
3 years ago
Francisco e26be3732c lte,enb,sched: add comments to ue_buffer_manager explaining the logic for logging 3 years ago
Francisco a3dbc857d4 gnb,sched: fix lcid configuration in scheduler 3 years ago
Francisco f0a48d47b3 enb,sched: log lcid configurations in scheduler in a single log line 3 years ago
Francisco f2818d0504 enb,sched: improve sched ue buffer manager to show rnti in logs 3 years ago
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 3 years ago
Francisco 4a58c10f30 lte,enb,rlc: compute and forward to scheduler the number of bytes pending for retx and status pdu in RLC AM bearer 3 years ago
Francisco b14e75218d lte,enb,rrc: avoid creating scells for UEs whose release < 10 3 years ago
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.
3 years ago
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>
3 years ago
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>
3 years ago
Francisco 6d432646b9 lte,enb,sched: UL HARQs should return 0 pending bytes if empty 3 years ago
Francisco 0bd8f640db lte,enb,sched: Fix hanging handover due to lack of Msg4. 3 years ago
Fabian Eckermann 2aa59a55d5 Read max turbo decoder iterations from conf. 3 years ago
Xavier Arteaga 9ecea014bd Added PUSCH DMRS minimum SNR 3 years ago
Francisco 859f4d2185 nr,gnb,sched: avoid logging warning for pending feedback of UEs that were just removed 3 years ago
Francisco b3e974db9b nr,gnb,rrc: avoid warning when eutra requests sgnb release and destroys the UE before acknowledgement 3 years ago
Francisco 0b51848dda nr,gnb,rrc: use multiqueue to forward x2 tasks to NR stack 3 years ago
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.
3 years ago
Francisco 51806982f7 nr,gnb,rrc: correctly release NR RNTI user after Reestablishment 3 years ago
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.
3 years ago
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
3 years ago
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 3 years ago
Andre Puschmann 3bf09021f9 enb: remove unused parameter 3 years ago
Francisco 643b5a1885 nr,gnb,rrc: Add comment explaining how the UE rrc_endc is updated in case of reestablishment 3 years ago
Francisco 277e6f2998 nr,gnb,rrc: Ignore measurementReports from UE while RRC Reconfiguration procedure is not yet complete. 3 years ago
Francisco abe2c8cba4 nr,gnb,rrc: Allow NR EN-DC to be re-activated in case of Reestablishment with cause other than ReconfFailure 3 years ago
Ismael Gomez 1d37c5b476 nr: increase nominal p0 pusch 3 years ago
Francisco 9ace701788 nr,gnb,sched: prioritize the search space with the highest number of position candidates 3 years ago
Francisco b6e890cc12 nr,gnb,sched: use search space id=2 for 5G NR NSA 3 years ago
Francisco 5b2afb1739 rrc,nr,gnb: ensure same PDCCH config is sent to PHY, scheduler cell config, and sched ue cfg 3 years ago
Francisco 7a16be9692 rrc,nr: ensure coresets and search spaces are passed to scheduler cell_cfg and ue_cfg 3 years ago
Andre Puschmann f96b315f81 enb,ue_nr: unpack LBSR and pass content to sched 3 years ago
Fabian Eckermann 9cbd2727f5 Disable measGapConfig in first reconfig. Remove all measurement reports for nr in the 2nd reconfig. 3 years ago
Xavier Arteaga bdcf90d990 Enable NR PUSCH EVM estimation in srsenb 3 years ago
Xavier Arteaga 3c40cd2840 Improved NR PHY logging info 3 years ago
Xavier Arteaga a5f6aa9f31 Added CSI string in PDSCH and PUSCH decode 3 years ago
Francisco 73260fb335 sched,nr: fix stack overflow in sched_nr_test 3 years ago
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.
3 years ago
faluco 9075251627 Move the cleanup code from the signal handlers down to the new emergency handlers for the ue, epc and enb. 3 years ago
Fabian Eckermann 33df51a1f5 Remove error message if dl_freq and ul_freq are not specified. 3 years ago
Francisco 01d8814f39 sched,nr: when sched allocates PUSCH, SR doesn't need to be decoded 3 years ago
Fabian Eckermann b034a9c983 Lock mutex when setting common cfg. 3 years ago
Francisco f427a25a30 nr,gnb,mac: account for header space larger than 2 when packing PDSCH 3 years ago