194 Commits (bcb91d6173969db29b4a0ee8922800662fed2d3b)

Author SHA1 Message Date
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
4 years ago
Francisco b41aba2a03 fix task scheduler test 4 years ago
Francisco 2d6a878826 change interface to create multiqueue queues 4 years ago
Francisco 996d8ef74d multiqueue bugfix for non-blocking pushes when queue is full 4 years ago
Francisco 99abae9e6a fix multiqueue producer to consumer notification to avoid deadlocks 4 years ago
Francisco 0d800eb8f6 stack, multiqueue - bugfix for multiqueue destruction, and addition of unit test 4 years ago
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.
4 years ago
AlaiaL 82788ca094 Fixed issues from coverity:
- 370233
- 370234
- 370239
- 370240
- 370241
- 370242
- 370243
- 370295
4 years ago
Francisco 28f787f1de extend timer handler unit test to check correct time wheel implementation 4 years ago
Francisco 2b572f5376 fix overwrite of timer timeout when it matches previous time wheel position 4 years ago
Francisco ce47cf5910 fix - re-add log flush to srsran_assert 4 years ago
Francisco 3b78bf3730 bugfix - fix memcheck warnings. move instructions with side effects outside of asserts 4 years ago
Francisco e37968410e simplification of timers handler design, relying solely on one time wheel. 4 years ago
Francisco 60896e30b5 implementation of time wheel-based timer handler, using a circular array and intrusive list 4 years ago
Francisco 2723993740 fix network utils test 4 years ago
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
4 years ago
Francisco 4aac7ac238 use global rx multisocket handler, and remove stack-s1ap interface 4 years ago
Francisco bf96d897ee network utils refactor - renaming of socket handle to unique socket and cleanup of its methods 4 years ago
Francisco d04a19f8bc refactor - increase code reuse in adt files 4 years ago
Andre Puschmann 1a0891df51 all: check return value of make_byte_buffer() and handle them safely 4 years ago
Codebot 4523ee6087 rename srsLTE to srsRAN 4 years ago
Francisco 3e9f93eb8a refactor - remove old log_filter and logmap libraries from the codebase 4 years ago
Francisco 822e26b63f implemented circular buffer-based queue 4 years ago
David Rupprecht 894e4d3501 Added mac pcap network class that dumps the packets to a udp network sink 4 years ago
Francisco f610a7b83d Change background worker pool to become a global variable
Allocate rrc::ue objects in batches in the background worker pool
4 years ago
David Rupprecht 0f1586dd2d Deleted all HAVE_5GNR in CC and h files
CMakeList and travis yaml
4 years ago
faluco 9d15a44c73
Port lib/phy to srslog (#2298)
* - Ported the channel class to srslog.
- Removed all newlines of log messages in lib/phy.

* Remove more newlines that use the C debug macros.
4 years ago
Francisco 04ab4eefcd use new make_byte_buffer() helper method to create unique_byte_buffers 4 years ago
faluco b014233662 - Port time related classes to srslog.
- Adapt tti_point_test to srslog.
4 years ago
faluco 1a5799a6ca - Replace loggers is network utils.
- Adapt tests that use network utils and callers.
4 years ago
faluco 79eca0980d - Ported fsm.h to srslog.
- Adapted and removed old loggers in tests and code that used fsm.h
4 years ago
David Rupprecht 306bb6b38b Added function for derive keys 4 years ago
David Rupprecht 99c3aa9ba2 Refactor assert to TESTASSERT in unit test 4 years ago
Ismael Gomez a6423442c2
Refactor NR RA files and fix header includes all over library (#2162)
* Refactor NR resource allocation classes. Use DCI instead of grant for dummy PDSCH UE/eNB test

* Minor refactors in NR workers and ue_dl

* Fix include issues

* fix compilation issues
4 years ago
Francisco b86d2ab7d0 move choice_type to adt folder 4 years ago
Andre Puschmann 07d2bc4fe8 change license header to agnostic version with hint to root LICENSE file 4 years ago
Francisco Paisana 7cd4f45d62 fsm refactor.
- avoid triggering directly a subfsm
- improved metafunctions
- other cleanups
4 years ago
Francisco Paisana caf862c99f moved expected, bounded_bitset, move_callback to adt folder. created a test for bitset 4 years ago
Francisco Paisana a9d882c1f1 fix task_scheduler_test. Fix potential reference invalidation in task_scheduler internal tasks data structure 4 years ago
faluco cfd3f51931
Import of srslog into srsepc and srsenb. (#1574)
* - Import of srslog into srsepc and srsenb.
* - Removed logger_file and logger_stdout files.
4 years ago
faluco efdff8ba4c
Import srslog into srsue (#1556)
- Import the srslog project into srslte.
- Ported srsue app to use the new logging framework.
- Implemented a wrapper that dispatches log entries to srslog.
- Renamed an existing log test to be more specific to avoid name clashes.
4 years ago
Andre Puschmann c8b4ba885b rename rlc_tx_queue to byte_buffer_queue
this data structure will be used by the PDCP layer as well.
4 years ago
Francisco Paisana 7c364070ee creation of task scheduler interface for classes/functions running outside the main control thread 4 years ago
Francisco Paisana 4f5e65781f created task scheduler class to deal with timers, thread pool, multiqueue, internal tasks 4 years ago
Francisco Paisana e550bf726d updated fsm to allow enter methods to receive event that caused them 4 years ago
Francisco Paisana e3e9bbcd62 fix PNF PDU size cutting 4 years ago
Francisco Paisana a0606669e2 fix ue nr gw initialization 4 years ago
Francisco Paisana e6418b4b39 fix variable naming 4 years ago
Francisco Paisana 1d07258458 created pnf bridge executable 4 years ago
Francisco Paisana 64e8f5e3ed update license year 4 years ago