Commit Graph

296 Commits

Author SHA1 Message Date
Andre Puschmann 89416a67c7 increase timeout for rlc stress tests
for valgrind where we sometimes hit the default timeout of 1500s
2019-06-12 20:44:23 +02:00
Francisco Paisana 415d3418b6 reorganized enb to mirror ue director/class structure with a stack class 2019-06-07 15:41:56 +02:00
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
2019-06-06 14:34:25 +02:00
Ismael Gomez ade720e032 Add RLC resume procedure 2019-06-06 14:34:25 +02:00
Andre Puschmann e47010130f extend thread class to set unique thread name in ctor
this will also extend all classes that use srslte::thread
to specify the name of the thread in the ctor as well
as to set the name of the worker threads in the thread pool
the thread name will be displayed in gdb.
2019-06-03 15:03:20 +02:00
Francisco Paisana 0e3baa0f2f Renamed the reset() method of byte_buffer_t to clear() 2019-05-16 12:35:01 +02:00
Francisco Paisana 3bedc93ba5 added _t to unique_byte_buffer type 2019-05-16 12:35:01 +02:00
Francisco Paisana f469e2178b replaced byte_buffer_t allocated by the buffer pool for unique_byte_buffer which is safer and easier to use 2019-05-16 12:35:01 +02:00
Francisco Paisana 7be183c223 rework scheduler 2019-05-14 22:34:50 +02:00
Andre Puschmann 723cd71a3a remove usage of <assert> in rlc_um_test 2019-05-03 10:58:05 +02:00
Andre Puschmann 46cc5a1985 use buffer pool in rlc_um_test 2019-05-03 10:52:16 +02:00
Pedro Alvarez f2530eb57b Fix rlc_am_data_test to avoid compiler warning from memset 2019-05-02 11:41:59 +02:00
Pedro Alvarez 3a502ccd13 Removed memset from rlc_status_pdu in test, to avoid compiler warnings. 2019-05-02 11:41:59 +02:00
Andre Puschmann 4b01a2e4a0 update copyright notice 2019-04-29 09:20:02 +02:00
Francisco Paisana 0204db2e12 new asn1 rrc library 2019-01-17 17:43:13 +01:00
Andre Puschmann db3ce8ade9 remove clang-tidy execution for srslte_upper 2018-12-18 11:53:12 +01:00
Andre Puschmann 398e271eee add out-of-order test for RLC AM PDUs 2018-11-22 13:18:53 +01:00
Andre Puschmann cecc28540b add crash handler to rlc_stress_test 2018-10-09 21:18:05 +02:00
Andre Puschmann f7d907f1b2 remove pedantic flag from RLC stress test 2018-10-09 21:17:17 +02:00
Andre Puschmann a1eca433b0 fix RLC AM tests accordingly 2018-10-03 14:58:24 +02:00
Andre Puschmann 57b472983e fix RLC TM stress test params 2018-10-03 14:58:24 +02:00
Andre Puschmann f20535657f add option to randomize MAC opportunities in RLC tester 2018-10-03 14:58:24 +02:00
Andre Puschmann 58d5208bfc fix RLC AM test 2018-09-26 16:55:46 +02:00
Andre Puschmann 601b2a357b fix fail logic in RLC stress test 2018-09-25 16:23:00 +02:00
Andre Puschmann f5c3bd5328 cleaup RLC stress test 2018-09-25 11:00:35 +02:00
Andre Puschmann 7572299615 enable clang-tidy for srslte_upper library 2018-09-25 10:46:36 +02:00
Andre Puschmann 34535c7efb fix RLC AM issues reported by clang-tidy 2018-09-25 10:46:36 +02:00
Andre Puschmann 6c4aaa6e10 adapt AM test to new MAC timer 2018-09-25 10:45:15 +02:00
Andre Puschmann 9a4ce125fb fix RLC stress test with respect to timer handling 2018-09-21 10:29:41 +02:00
Andre Puschmann 4b0171ccea fix MAC timer handling in rlc_stress_test 2018-09-21 10:29:41 +02:00
Andre Puschmann d981f129e0 Merge branch 'master' into next 2018-09-20 12:54:05 +02:00
Andre Puschmann 6c896c4962 fix RLC AM test in release 2018-09-07 10:49:52 +02:00
Andre Puschmann f14ee09ed3 adapt AM test to new MAC timer 2018-09-07 10:49:52 +02:00
Andre Puschmann 55edb92ac5 fix RLC AM test and account for additional header room for retx segments 2018-07-30 16:35:57 +02:00
Andre Puschmann a20a8b18ad fix rlc_stress_test, stop RLC instances and remove hard thread canceling 2018-07-30 14:57:17 +02:00
Andre Puschmann 1160dac54f add new RLC AM test for checking correct stopping 2018-07-30 14:56:22 +02:00
Andre Puschmann 3950629a75 remove obsolete RLC_MODE struct and move existing one to rlc_interface.h 2018-07-25 16:06:42 +02:00
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
2018-07-23 17:30:32 +02:00
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
2018-07-05 11:00:19 +02:00
Andre Puschmann cb15dee3d4 Merge branch 'embms_merge_final' into next 2018-05-23 21:25:37 +02:00
Andre Puschmann ad5c06f64b limit SDU generation rate in AM stress test 2018-05-22 14:52:47 +02:00
Andre Puschmann 61d525ea80 Merge branch 'next' into embms_merge_final 2018-05-22 10:39:05 +02:00
Andre Puschmann 9ce3be974a Merge branch 'next' into embms_merge_final 2018-05-15 22:32:56 +02:00
Andre Puschmann 2fb0dc62a0 refactor config for multicast RLC bearers 2018-05-15 22:23:21 +02:00
yagoda e4c3f0bc30 adding mbms-gw and mch generation tables 2018-05-15 17:27:10 +02:00
yagoda d80d49a9da adding tests for embms rlc functionality 2018-05-15 16:59:06 +02:00
Andre Puschmann fd9f847d2d dont let RLC stress test fail if buffer gets empty 2018-05-15 16:29:49 +02:00
Andre Puschmann e0e219fdce reduce default loglevel in RLC stress tests 2018-05-15 12:59:22 +02:00
Andre Puschmann 4a29f1f0f0 reduce default execution for RLC stress tests 2018-05-04 12:40:20 +02:00
Andre Puschmann d2d30ca90d fix typo in testcase command 2018-05-04 12:11:41 +02:00
Andre Puschmann 60a9e5d756 in rlc_stress_test only call usleep if not null 2018-05-04 10:46:37 +02:00
Andre Puschmann 3da5133591 adding two more RLC UM tests for checking reassembly 2018-05-04 10:27:46 +02:00
Andre Puschmann 371e2f90fd print RLC throughput after finishing stress test
- also exit with failure when malformed PDU is received in release mode
2018-05-04 09:39:15 +02:00
Andre Puschmann f913db6d82 add TM testcase 2018-04-27 16:26:24 +02:00
Andre Puschmann d63b3e0376 add TM support to rlc_stress_test 2018-04-27 16:25:37 +02:00
Andre Puschmann a5d31f5c02 rename rlc_stress_test 2018-04-27 15:42:13 +02:00
Andre Puschmann 8fde56c582 unify rlc_am_stress test to allow also UM tests 2018-04-27 15:40:05 +02:00
Andre Puschmann 2935def9fc remove mutex in rlc stress tester 2018-04-04 17:07:40 +02:00
Andre Puschmann 38a3172224 fix RLC AM test 2018-04-04 17:02:45 +02:00
Andre Puschmann f3482445b5 add RLC AM data header parsing test 2018-03-28 17:10:56 +02:00
Andre Puschmann 619a653d4e add another RLC AM resegment test 2018-03-28 16:06:28 +02:00
Andre Puschmann 5fe09666d7 add new RLC AM test for retransmitted PDU segments 2018-03-28 10:45:59 +02:00
Andre Puschmann 20fa7b947d expos various params of stress tester and add pcap functionality 2018-03-28 10:45:59 +02:00
Andre Puschmann d84f6d3d41 add parameter to change loglevel in rlc am stresser 2018-03-06 14:04:17 +01:00
Andre Puschmann 07c704b0dd extend RLC AM stress tester to mimic reestablishment 2018-03-04 21:53:06 +01:00
Andre Puschmann 507ce037bf parameterize RLC AM stress tester and add to ctest suite 2018-03-04 21:53:06 +01:00
Andre Puschmann 94fe9d4a47 rlc: add basic RLC AM reset test 2018-02-20 12:27:02 +01:00
Andre Puschmann a6ccb05bb1 fix mem leak in RLC UM test and RLC AM stress tester 2018-02-16 21:32:53 +01:00
Andre Puschmann b5b1c0bf4b fix memory leaks RLC AM test 2018-02-16 12:41:13 +01:00
Paul Sutton a1f9b35db3 Minor rlc_am_stress_test fix 2018-02-12 17:24:48 +00:00
Paul Sutton e18cb5ba5b Fixing RLC AM tests, adding extra check for segment handling 2018-02-12 13:42:59 +00:00
Paul Sutton 4cf79c1ead Initial fix for segment handling in RLC AM 2018-02-12 13:09:31 +00:00
Andre Puschmann ccfb9314bc fix various coverity bugs 2018-02-11 10:59:56 +01:00
Ismael Gomez 86818ad65f Fix compilations warnings and remove printf debugs 2018-02-09 17:36:44 +01:00
Andre Puschmann 22117156b3 rlc_am: disable stress tester as test 2018-02-09 11:48:26 +01:00
Paul Sutton d1d6cea737 Adding debug helpers 2018-02-07 23:13:59 +00:00
Paul Sutton 60b059f3cc Adding RLC AM stress test 2018-02-07 21:59:50 +00:00
Paul Sutton c40f5e6ef8 Fixes for RLC AM tests 2018-02-05 09:30:58 +00:00
Xavier Arteaga 99ef760b6f More Coverity fixes 2018-01-31 16:49:14 +01:00
Paul Sutton 13b53c4518 Fix for rlc_um_test 2018-01-26 09:17:14 +00:00
Paul Sutton 7848621d8a Fix for RLC AM tests 2018-01-16 09:17:13 +00:00
Paul Sutton ac8cbcaaea 1-byte PDU fix for RLC AM 2017-10-25 11:18:49 +01:00
Paul Sutton 49a105baed Fix for tests, minor fix for RLC UM 2017-10-19 22:21:18 +01:00
Ismael Gomez 6556941e6d simplified MAC timers. Unified mac and upper timers in same background task 2017-09-19 17:51:35 +02:00
Ismael Gomez 5359c42b46 RLC UM release timer at stop() 2017-09-19 15:15:25 +02:00
Andre Puschmann 7ca0988ea3 refactor RLC to use RAT-agnostic config 2017-07-04 18:29:49 +02:00
Andre Puschmann 8dbabb2834 rework bearer/LCID handling
This is a larger patch that reworks the LCID handling throughout the
code.

- It first moves the RB/LCID mapping out of common.h into the RRC object
  because different RATs may have different mappings.
- It adds a interface to RRC that other objects like RLC/PDCP/etc. may
  use to get the bearer name of a specific LCID.
- The patch also introduces a PDCP config class.
2017-07-04 17:48:39 +02:00
Ismael Gomez 6037a2f2bd changed logger classes 2017-06-23 16:29:46 +02:00
Andre Puschmann eb5460174d fixing namespace issue in debug build 2017-06-05 13:12:02 +02:00
Ismael Gomez 8a367bf825 changed srsue namespace to srslte for all common objects 2017-06-01 12:25:42 +02:00
Ismael Gomez e75daee148 renamed include paths for common objects 2017-05-31 23:39:17 +02:00
Andre Puschmann 1d1916d6e0 Merge branch 'restruct_update' into restruct_update_paul 2017-05-31 16:21:18 +02:00
Andre Puschmann c51c4d2a38 fix compile warnings 2017-05-31 13:45:01 +02:00
Paul Sutton 80140c7c38 minor cmake edits 2017-05-30 18:14:41 +01:00
Andre Puschmann 5d66e9701f fixing CMake scripts and include paths 2017-05-30 15:10:19 +02:00
Andre Puschmann d079d25b2c rename srslte folder and src subfolder 2017-05-30 13:05:04 +02:00