318 Commits (5dbeecdbb5a80cd70c3e7ef4eb4ac043be8d3b4c)

Author SHA1 Message Date
Ismael Gomez 4e39982a19
Fix TSAN warnings in UE (#3021)
* Protect PHY SR signal management in a class

* Protect intra_freq_meas vector

* Protect cell and srate shared variables in thread-safe classes

* srsue,srsenb: include TSAN options header

* Protect ue_rnti_t and rnti scheduling windows behind thread-safe classes

* Protect access to state variable in sync_state

* Protect access to metrics configuration

* Protect access to is_pending_sr

* Protect access to UE prach worker

* Protect UE mux

* Avoid unlocking mutex twice

* Fix data races in RF/ZMQ

* Fix data races in intra_measure and PHY

* Fix minor data races in MAC

* Make TSAN default behaviour to not halt on error

* Fix blocking in intra cell measurement

* Address comments

Co-authored-by: Andre Puschmann <andre@softwareradiosystems.com>
3 years ago
Xavier Arteaga d49734b1bc SRSENB: Refactor to accomodate 5G NR 3 years ago
Xavier Arteaga b1e4720721 SRSUE/SRSENB: added tx_enable flag in worker_end 3 years ago
Xavier Arteaga 027201d457 SRSUE/SRSENB: Refactor NR workers to generalise lower PHY 3 years ago
Xavier Arteaga fc5d069743 SRSUE: Default PHY measurements to NAN 3 years ago
Xavier Arteaga a31f3d42ce Added RF NR search tool and added baseband file 3 years ago
Xavier Arteaga 3a011155db SRSUE: Make sure PHY reset is done when SYNC is IDLE 3 years ago
Xavier Arteaga d74f70289e SRSUE: fix last reported RI state 3 years ago
Andre Puschmann b0a2f31478 prach: protect configuration and state getters with mutex
purely TSAN with unit-test based approach that protects
the state getters and configuration routines with a mutex
3 years ago
Andre Puschmann d2ec3ca5e1 intra_measure_base: fix race detected with TSAN
use mutex to protect state getters
3 years ago
Andre Puschmann 98a91a2057 sync: protect sync_state, access ue_sync object only from one thread
races detected with TSAN, primarily the ue_sync object which isn't
thread-safe is accessed by all workers to set the CFO and by the
sync thread to receive samples (which read the CFO).

The patch introduces shadow variables that are updates from the
main thread before/after the sync is executed. The atomic shadow
variables can then be read from otherthreads without holding a
mutex, i.e. blocking the sync.
3 years ago
Xavier Arteaga 5c55ff24ec Minor UE aesthetical changes 3 years ago
Xavier Arteaga 44b6a2b55f Fix SYNC wait for IDLE if the state is reached 3 years ago
Xavier Arteaga 807b60988d Wait for PHY workers to transmit before considering SYNC in IDLE 3 years ago
Xavier Arteaga 7185ec6beb PHY CC configuration is stashed and applied in the next TTI 3 years ago
Xavier Arteaga 235a664120 SRSUE: Removed PUSCH-DMRS/SRS pregeneration methods 3 years ago
Xavier Arteaga cc2a6dc269 Review cell selection and SCell configuration during HO 3 years ago
Xavier Arteaga 65d51f5855 Fix unitialised value 3 years ago
yagoda 9501283c1c fixing support for extended Cyclic Prefix
small cosmetic fixes of CP code
4 years ago
Xavier Arteaga 5eadc06dd4 Intra-frequency miscellanous changes 4 years ago
Xavier Arteaga 170fbefbf5 Avoid SCell receiver to copy 4 years ago
Xavier Arteaga d39402ed54 Added TTI trigger condition to intra-frequency measurement base 4 years ago
Xavier Arteaga ac9dc6f31d Compute Performance 4 years ago
Xavier Arteaga fb7623f5b6 Initial intra frequency NR cell search and test 4 years ago
Xavier Arteaga 60015e7ceb Made intra frequency cell search and measurment generic 4 years ago
Xavier Arteaga a57336d64f Integrate periodic SSB measurement in SRSUE and fix related defects 4 years ago
Xavier Arteaga 1396c2a1e2 Mulpiple CSI measurement fixes. Channel and sync metrics from CSI measurements 4 years ago
Xavier Arteaga 653177ca7c SRSUE: Refactored work_dl for NR. Added NZP-CSI-RS measurement 4 years ago
Andre Puschmann 598594c51a all: bunch of pass by const& changes suggested by LGTM 4 years ago
Matan Perelman 7ee52dc676 srsUE: Add option to filter N_id_2 / PSS to configuration 4 years ago
Xavier Arteaga ab6a5ef17a Added NR DCI conversion to string for formats 1_0 and 1_1 4 years ago
Xavier Arteaga 407903e0d6 SRSUE: refactor carrier setting for accepting a dynamic carrier configuration 4 years ago
David Rupprecht f42d4dbc28 Refactored carrier config 4 years ago
Andre Puschmann edd150b29f fix PID not being set when reading pending UL grant
this should fix #2679
4 years ago
Xavier Arteaga 01ce0718be NR-PUSCH RE mapping correction and NR-SCH detailed grant information 4 years ago
Andre Puschmann b9ae064338 mac_nr: add DL HARQ
this commit adds a complete DL HARQ entity to the MAC of the UE.
It also refactors demux into an own class and adapts the PHY-MAC
interface to use the new MAC capabilities.
4 years ago
Xavier Arteaga b5e879db47 SRSUE: review metrics interfaces 4 years ago
Xavier Arteaga 044da18db9 SRSUE: Reviewed PHY metrics getter 4 years ago
Xavier Arteaga 2f453b43ba Initial NR PHY interface 4 years ago
Xavier Arteaga db1a1c059c NR PHY workers TTI synchronization between DL and UL work 4 years ago
Xavier Arteaga 991c6e7016 Refactored NR HARQ-ACK feedback enqueue 4 years ago
Xavier Arteaga 49731ab5a1 Initial NR-DCI refactor
Added NR DCI 1_1 size

Several DCI NR fixes
4 years ago
Xavier Arteaga dee2ec30cd SRSUE: use new MAC interface for NR SR procedure 4 years ago
Xavier Arteaga 01990c2e1d SRSUE: Add PHY-MAC SR related interfaces 4 years ago
Xavier Arteaga 5bdf2c93b3 Initial NR PDSCH CSI-RS RE skip and other changes 4 years ago
Xavier Arteaga 7704c09ce2 Fix typos 4 years ago
Codebot 4523ee6087 rename srsLTE to srsRAN 4 years ago
Xavier Arteaga 4ae194581f SRSUE: Adjustments in distance and speed estimations 4 years ago
Xavier Arteaga 2782d96170 SRSUE: compute speed from TA commands 4 years ago
Francisco 3e9f93eb8a refactor - remove old log_filter and logmap libraries from the codebase 4 years ago