Commit Graph

3773 Commits

Author SHA1 Message Date
Francisco 8df6ed07c6 sched small fixes - use 0.930 instead of 0.932 for max coderate. Allow computing mcs/tbs based on max coderate directly. Other small fixes 2021-05-24 17:25:07 +02:00
Francisco 31936c9754 bugfix - printf formatting incorrect in bounded_bitset method 2021-05-24 17:24:50 +02:00
Francisco b093576634 avoid sending UEContextReleaseRequest from Source eNB during S1 Handover. 2021-05-24 17:24:31 +02:00
Francisco f2a56c9139 simplification of multiqueue design.
- the consumer does multi-staged waiting:
  1. spins first across all queues in a RR fashion
  2. each queue access is done with a try_lock.
  3. if the try_lock fails, it increases the number of spins needed
  2. if no queue had data, the consumer sleeps for 100 usec.
- no differentiation between queues, in terms of notification features
2021-05-24 17:24:12 +02:00
Francisco 60a8ee0af9 multiqueue optimization - use condition_var wait_for() method, use queue try_lock in the consumer side 2021-05-24 17:24:12 +02:00
Francisco b41aba2a03 fix task scheduler test 2021-05-24 17:24:12 +02:00
Francisco 2d6a878826 change interface to create multiqueue queues 2021-05-24 17:24:12 +02:00
Francisco f705735093 optimization - only allow some multiqueue queues to notify the multiqueue consumer of the arrival of tasks 2021-05-24 17:24:12 +02:00
Andre Puschmann bc3be73364 rlc_am_lte: replace simple sanitfy check with error log with expect
this should help debugging the situation when this happens by
aborting when STOP_ON_WARNING is enabled
2021-05-20 23:19:17 +02:00
yagoda 9501283c1c fixing support for extended Cyclic Prefix
small cosmetic fixes of CP code
2021-05-20 18:16:15 +02:00
Andre Puschmann 21b3635ae4 rlc_am_lte: refactor retransmit_pdu() to send different SNs
it seems that different SNs should be retransmitted depending
on the actual situation. In case of pollRetx timer expiration,
vt_s - 1 should actually be resent.

This patch prepares the function to accept different SNs but
leaves it to send vt_a by default. The RLC AM test would need
to changed as well to not fail.
2021-05-20 13:41:07 +02:00
Andre Puschmann 81c1851bbd rlc_am_test: fix TSAN isses and removing info log when dropping PDU 2021-05-20 13:41:07 +02:00
yagoda f90f6f0c7e adding MAC 0 padding support 2021-05-20 10:26:50 +02:00
Xavier Arteaga 8ffbf0ff6d Fix SSB segfault 2021-05-18 18:41:03 +02:00
Xavier Arteaga f9aafd00a7 Added subcarrier spacing parsing from string 2021-05-18 18:41:03 +02:00
Xavier Arteaga b69057b76e Filesource filename to constant 2021-05-18 18:41:03 +02:00
Xavier Arteaga 5eadc06dd4 Intra-frequency miscellanous changes 2021-05-18 18:41:03 +02:00
Xavier Arteaga 7b159563ab Fixes in LTE CRS measurements 2021-05-18 18:41:03 +02:00
Xavier Arteaga 1603580901 Fix NR PSS correlation 2021-05-18 18:41:03 +02:00
Xavier Arteaga 0b3f4e5de0 Improvements in NR cell search 2021-05-18 18:41:03 +02:00
Xavier Arteaga 53b2c6076b Fix UHD subdev specification 2021-05-18 18:41:03 +02:00
Xavier Arteaga 11d925c0b2 Minor SSB fix and changes 2021-05-18 18:41:03 +02:00
Xavier Arteaga c8cb128317 Declare band helper methods as constant 2021-05-18 18:41:03 +02:00
Xavier Arteaga 60015e7ceb Made intra frequency cell search and measurment generic 2021-05-18 18:41:03 +02:00
Xavier Arteaga 648f0af437 Implement SSB search based on correlation 2021-05-18 18:41:03 +02:00
faluco 6fb81c7619 - Add a mutex with priority inheritance for srslog internal structures.
- Replace shared_variable members in log_channel class in favor of atomics.
- Remove the small string optimization in srslog now that we dont allocate anymore.
- Trim some critical sections in srslog.
2021-05-18 09:28:03 +02:00
Francisco 1488606156 refactor - create s1ap dedicated folder 2021-05-17 15:32:57 +01:00
Andre Puschmann 167200f5cd rrc_bearer_cfg: replace fixed E-RAB to DRB mapping
also make sure we don't assign LCIDs beyond the possible
number.

possible fix for https://github.com/srsran/srsRAN/issues/658

Co-authored-by: herlesupreeth <herlesupreeth@gmail.com>
Co-authored-by: Francisco <francisco.paisana@softwareradiosystems.com>
2021-05-17 15:17:27 +02:00
Francisco fa34aaa16e ensure the DL mask count is reduced enough to fit required bytes 2021-05-14 19:58:03 +01:00
Francisco 485c6ee129 subband CQI feature - add K parameter in sched_interface::ue_cfg_t and update it from RRC 2021-05-14 19:58:03 +01:00
Francisco 84ad6dd8ee Integrated new sched_dl_cqi class in sched_ue_cell
- extend sched_dl_cqi interface to allow getting tti when cqi was last updated
- extend sched_dl_cqi to quickly get average cqi across the whole bandwidth
2021-05-14 19:58:03 +01:00
Francisco a841b7580e fix deadlock caused by non-notification of multiqueue consumer side 2021-05-13 16:48:17 +01:00
Xavier Arteaga 9e1a85afe8 Fix NR SCH Nref calculation 2021-05-13 08:45:42 +02:00
Xavier Arteaga 0ecb3a7220 Modify NR PHY info messages 2021-05-13 08:45:42 +02:00
Xavier Arteaga 91030c5824 Fix procedure for MCS table selection 2021-05-13 08:45:42 +02:00
Xavier Arteaga b02a0d3db9 Added RNTI type short string 2021-05-13 08:45:42 +02:00
Xavier Arteaga 08ec1d0df9 Changed srsLTE to srsRAN 2021-05-13 07:55:46 +02:00
Xavier Arteaga a57336d64f Integrate periodic SSB measurement in SRSUE and fix related defects 2021-05-13 07:55:46 +02:00
Xavier Arteaga 5e41e99f08 Added NR symbol offset helper function 2021-05-13 07:55:46 +02:00
Xavier Arteaga 7450232b3e Added more NR band related helpers 2021-05-13 07:55:46 +02:00
Xavier Arteaga 758fd3c1ba Implemented initial NR cell search 2021-05-13 07:55:46 +02:00
Xavier Arteaga 2f9c7e1345 Avoid cexpf in srsran_vec_apply_cfo_simd 2021-05-13 07:55:46 +02:00
Xavier Arteaga 90c42bc9c3 Fix resampler stack overflow 2021-05-12 17:13:09 +02:00
Xavier Arteaga 9517b78c03 Fix resampler and improved unit test 2021-05-12 17:13:09 +02:00
Francisco 996d8ef74d multiqueue bugfix for non-blocking pushes when queue is full 2021-05-11 21:27:08 +02:00
Francisco 99abae9e6a fix multiqueue producer to consumer notification to avoid deadlocks 2021-05-10 15:27:21 +01:00
Francisco 0d800eb8f6 stack, multiqueue - bugfix for multiqueue destruction, and addition of unit test 2021-05-10 15:27:21 +01:00
Francisco d947e259c9 stack optimization - optimization of the multiqueue
avoid notifying the consumer side of the multiqueue of a new pushed object, if the
multiqueue already knows that the queue is not empty.
2021-05-10 15:27:21 +01:00
Francisco d574afcd33 cleanup of multiqueue unused methods, and made queue_handle move semantics correct 2021-05-10 15:27:21 +01:00
Francisco ef9d1b8c13 stack optimization - reduction of contention in multiqueue class
With the new design, each queue created in the multiqueue object has its own mutex.
Pushing tasks to separate queues will, therefore, not cause contention.
There will be, however, still contention between the popping thread and the pushing threads.
2021-05-10 15:27:21 +01:00