Andre Puschmann
81c1851bbd
rlc_am_test: fix TSAN isses and removing info log when dropping PDU
2021-05-20 13:41:07 +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
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
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
Francisco
cd51537234
add comment explaining the use case of cached_alloc
2021-05-06 18:06:10 +01:00
Francisco
28847badcf
implementation of custom allocator for memory caching. This allocator may be used for unbounded queues
2021-05-06 18:06:10 +01:00
faluco
aef18f9931
Implement a benchmark for measuring latency in the foreground threads when pushing log entries.
...
This benchmark runs with several threads to test contention.
2021-05-04 09:49:26 +02:00
Xavier Arteaga
fb5dfb3a86
Improved NR unit test
2021-04-28 20:23:52 +02:00
Xavier Arteaga
6c39a5e4ff
Added PDSCH DMRS aditional unpacking
2021-04-28 20:23:52 +02:00
Andre Puschmann
4dd17aee45
rrc/phy/nr: calculate tuning freq of NR carrier from RRC signaling params
...
skip initial tuning to hard-coded NR frequency and use RRC-provided
values to calculate center frequency
2021-04-25 21:05:23 +02:00
AlaiaL
862784ee46
Fixed coverity 369719
2021-04-23 21:22:06 +02:00
AlaiaL
82788ca094
Fixed issues from coverity:
...
- 370233
- 370234
- 370239
- 370240
- 370241
- 370242
- 370243
- 370295
2021-04-23 21:22:06 +02:00
faluco
1ccb62af3d
Apply srsLTE formatting rules to srsLog. They were previously formatted with different rules when the project lived in the external rapo.
2021-04-22 16:35:23 +02:00
Francisco
ff3fc0826b
asn1 fixes and improvements
...
- use const char* instead of std::string in enumerated<>::to_string() to avoid mallocs.
- Remove the use of "typedef", and use "using" keyword instead.
- Fix rrc_nr::setup_release_c<>::to_string() broken linkage.
2021-04-22 10:21:08 +01:00
Francisco
28f787f1de
extend timer handler unit test to check correct time wheel implementation
2021-04-21 10:02:03 +01:00
Francisco
2b572f5376
fix overwrite of timer timeout when it matches previous time wheel position
2021-04-21 10:02:03 +01:00
Francisco
ce47cf5910
fix - re-add log flush to srsran_assert
2021-04-20 16:27:40 +01:00
Francisco
3b78bf3730
bugfix - fix memcheck warnings. move instructions with side effects outside of asserts
2021-04-20 14:01:05 +01:00
David Rupprecht
6b41ae7e8b
Updated PDCP config struct for rat type
2021-04-19 22:23:59 +02:00
Xavier Arteaga
53e41a165c
Revert zeros around DC REs in NR PDSCH
2021-04-19 15:15:55 +02:00
Francisco
22024ac35d
implemented bounded_bitset::find_lowest(...) for both reverse and non-reverse bit ordering. Applied this method to UL scheduling search for PRB intervals
2021-04-19 13:31:20 +01:00
Francisco
3f15fc2811
implemented bounded_bitset::find_first(...)
2021-04-19 13:31:20 +01:00
David Rupprecht
f42d4dbc28
Refactored carrier config
2021-04-19 12:13:37 +02:00
Xavier Arteaga
abfc1da921
Multiple NR-PUSCH fixes
2021-04-17 15:51:11 +02:00
Xavier Arteaga
01ce0718be
NR-PUSCH RE mapping correction and NR-SCH detailed grant information
2021-04-17 15:51:11 +02:00
David Rupprecht
fe8727050b
Added new rrc_nr to phy flattening functions and fixes
2021-04-16 09:02:29 +02:00
Xavier Arteaga
e4e3456d76
Refactored PDSCH/PUSCH decoder for LDPC early stopping
2021-04-15 20:42:41 +02:00
Francisco
e37968410e
simplification of timers handler design, relying solely on one time wheel.
2021-04-15 18:46:42 +01:00
Francisco
60896e30b5
implementation of time wheel-based timer handler, using a circular array and intrusive list
2021-04-15 18:46:42 +01:00
Xavier Arteaga
80f5c82b53
Fix formatter test
2021-04-14 08:16:44 +02:00
Andre Puschmann
c9da21c9bb
mac_nr: add error handling when unpacking SCH MAC PDU
...
* only handle PDU if unpacking was successfull
* add TC unpacking with malformed PDU
2021-04-12 18:26:31 +02:00
Xavier Arteaga
2e3c00aa97
NR PDSCH zeroes RE around the DC. Added delay and CFO emulation to phy_dl_nr_test
2021-04-12 17:05:53 +02:00
Francisco
21718af3b6
avoid allocating std::string to get lcid radio bearer name. Refactored the lte radio bearer enum type
2021-04-12 13:21:43 +01:00
Andre Puschmann
6dd8c21073
mac_sch_pdu_nr: add unpacking of TA CE in DL-SCH
...
also add basic test to verify correct unpacking
2021-04-09 09:49:14 +02:00
David Rupprecht
82c9636156
Refactor pdcp ctor seperate the configure function
2021-04-08 19:08:17 +02:00
David Rupprecht
f9ea02b6bf
Added functions for rrc reestablishing procedure if nr reconfig failes
2021-04-08 17:37:36 +02:00
Xavier Arteaga
58a9ef6e7f
Minor NR PHY tweaks and aesthetic
2021-04-08 11:39:55 +02:00
Xavier Arteaga
49731ab5a1
Initial NR-DCI refactor
...
Added NR DCI 1_1 size
Several DCI NR fixes
2021-04-07 16:57:12 +02:00
Xavier Arteaga
1dcd75a6c7
Ignore CRC for RV!=0 in phy_dl_nr_test
2021-04-07 13:56:06 +02:00
Xavier Arteaga
ecd2c1cdcc
Improved LDPC decoded performance and other NR aesthetical changes
2021-04-07 13:56:06 +02:00
Francisco
cdf72248f3
Reimplement batch-based background object/memory pool
...
Main changes:
- addition of pool utilities
- The node size/alignment and batch allocation threshold are now runtime arguments
- object pool and memory pool are not anymore based on the same class.
The object pool cannot use intrusive free list because it would overwrite the object
memory
2021-04-07 12:02:22 +01:00
Francisco
460d7a8f4f
fix memory pool test - placed the pool state into a shared_ptr so that the callbacks still have a valid handle when the pool is destroyed
2021-04-07 12:02:22 +01:00
Francisco
9bec13731a
adt unit test - fix memory pool test
2021-04-07 12:02:22 +01:00
Francisco
ec3cd9ffea
adt - added background object pool test, and fix existing bugs related to the creation of pools with objects that are too small to be used in free lists
2021-04-07 12:02:22 +01:00
Francisco
d1c5b000dc
adt - creation of pre-initialized object pool, that leverages the background memory pool allocator
2021-04-07 12:02:22 +01:00
Francisco
a79ca92020
refactor type storage and pool tests
2021-04-02 17:40:50 +01:00
Francisco
2723993740
fix network utils test
2021-04-02 11:42:50 +01:00
Francisco
c24e382c19
Refactor of socket manager class
...
- use of inheritance to simplify testing
- removal of global network manager
- pass of custon socket manager to s1ap and gtpu ctors
- overhauled the registration of socket fd,callback in socket manager
2021-04-02 11:42:50 +01:00