35 Commits (49279c89d8375d62e01dc7cd0c50b01028eff21f)

Author SHA1 Message Date
Francisco Paisana 67d6a25194 Moving mac timers to stack timers (#638)
* first step towards moving MAC timers to stack. Mac is still using its own timers. srslte::timers class can be restructured.

* moved timers out of the UE MAC
5 years ago
Andre Puschmann e42449532b fix wrong namespace definition in various places 5 years ago
Ismael Gomez 8c41625599 Add RLC suspend and resume 5 years ago
Francisco Paisana 58e2e51044 removed rlc_interfaces. The rlc_cnfg types are now part of the rrc_interface_types. Removed implicit RB initialization in the RLC. 5 years ago
Andre Puschmann acbe7fabe4 rlc: fix class member initialization
uninitialized member detected by coverity, now converted all default
initialization to be done in class definition
6 years ago
Andre Puschmann e8d6236975 remove init for all RLC TM/UM/AM
- all RLC entities are now initialized during contruction
- there is no need to check for, e.g., existance of timers, during
  runtime
- there is also no need to call re-init during resume
- timers are freed in dtor
6 years ago
Ismael Gomez ade720e032 Add RLC resume procedure 6 years ago
Francisco Paisana 3bedc93ba5 added _t to unique_byte_buffer type 6 years ago
Francisco Paisana f469e2178b replaced byte_buffer_t allocated by the buffer pool for unique_byte_buffer which is safer and easier to use 6 years ago
Andre Puschmann 4b01a2e4a0 update copyright notice 6 years ago
Andre Puschmann e84d26ae4e fix RLC UM reestablishment 6 years ago
Andre Puschmann 86232c143e expose RLC tx queue length through config struct 6 years ago
Andre Puschmann c3441046c9 simplify RLC buffer status query procedures
- add a simple and low-overhead has_data() method to check whether
  an RLC entity has data to transmit or not
- use this method for all calls that are actually not interested
  in the amount of data to send
- use the more expensive get_buffer_state() for all cases where
  the actual size of the buffer is of importance
6 years ago
Andre Puschmann 6ca0d4494a do not transmit new PDUs after calling stop 6 years ago
Andre Puschmann e06e5b8b60 limit maximum allowd RLC SDU size 6 years ago
Andre Puschmann a6d9181881 fix RLC UM issue with very large MAC grants 6 years ago
Andre Puschmann 22b4396c39 increase default tx_queue length for RLC UM and AM
- With the current default tx queue length (16 SDUs) the BSR reported by the UE
  is too low if the size of the SDU is relativly small (e.g. 100 B).
  This effectivly causes the eNB to only allocate a small grant
  to the UE and thus reduces the UL throughput for small SDUs.
6 years ago
Andre Puschmann 89df8f1582 unify RLC interface for writing SDUs w/ and w/o blocking 6 years ago
Andre Puschmann 27d3d697df refactor RLC part#2
- move metrics into entities
- make configure interface return true/false on success/failure
- add own srslte mode type
6 years ago
Ismael Gomez 3cb9f51460 Merge branch 'next' of github.com:softwareradiosystems/srsLTE into next 6 years ago
Andre Puschmann a9b023258c refactor RLC UM to have separate tx/rx objects 6 years ago
Ismael Gomez 005fe87ae9 RLC reestablish to re-enable tx_enabled 6 years ago
Ismael Gomez 589e569ce9
Changes on srsENB mutexing logic to fix general race condition and deadlock issues (#229)
* fixed some issues with the UL scheduling

* Hack to fix UL scheduler

* minor fix

* Cleaned up code and fixed issue with the update_allocation function

* fixed the console printing in the enb

* log/console fix

* fixed the log print

* added a normalization factor

* RLC: entity uses dynamic instances. Simplified stop/reset/reestablish procedure. Added non-blocking interface

* Limit decimals in metrics stdout

* Changed mutexes to rwlock in RLC/RRC/MAC/PDCP to fix race conditions when removing users

* Fix deadlock bug for MIMO

* Remove headers

* Fix missing unlock causing overflows

* Do not decrease CQI when PUCCH (this is a temporal fix, requires to reduce the maximum MCS)

* Fix mutex unlock in worker

* Configurable RLC tx buffer. Default to 512 for enodeb

* Check NULL SDU in write_sdu()

* Protect RLC objects and tx_queue from being destroyed while using it

* Remove superfluous code

* Disable SIB logging

* Fix block_queue for enb
6 years ago
yagoda 65f2747a8e removing mch handler in rlc, fixing embms autostart 7 years ago
Andre Puschmann 2fb0dc62a0 refactor config for multicast RLC bearers 7 years ago
yagoda 49c3578f64 introducing embms support in common upper layer functions 7 years ago
Ismael Gomez 040c33497d merged PR#189 and added check for non-empty queue in get size tail 7 years ago
David Rupprecht 9d71bec7b6 Unified include guards 7 years ago
Andre Puschmann 1be93d4682 add RLC UM destructor 7 years ago
Ismael Gomez 6556941e6d simplified MAC timers. Unified mac and upper timers in same background task 7 years ago
Ismael Gomez 5359c42b46 RLC UM release timer at stop() 7 years ago
Andre Puschmann 7ca0988ea3 refactor RLC to use RAT-agnostic config 7 years ago
Ismael Gomez 8a367bf825 changed srsue namespace to srslte for all common objects 8 years ago
Ismael Gomez e75daee148 renamed include paths for common objects 8 years ago
Andre Puschmann d079d25b2c rename srslte folder and src subfolder 8 years ago