326 Commits (2e7ddef0387721f46f40ad2a880358f8844cada2)

Author SHA1 Message Date
Francisco Paisana c413fadea9 created a queue-based thread pool. Tasks are inserted into a queue and then popped by the thread pool workers to be processed. 5 years ago
Andre Puschmann 57317fab7c expose debug_long to class log and use in RRC to log ASN1 structs 5 years ago
Francisco Paisana 14267640ee implemented andre's PR review requests 5 years ago
Francisco Paisana ceba00f00e extended multiqueue to support blocking push 5 years ago
Francisco Paisana 647c624423 created a multiqueue handler, and started using it for the ue stack 5 years ago
Andre Puschmann 95b2239dd5 add base class for socket handler using netsource object 5 years ago
Andre Puschmann 6baa89cd2c add MAC NR PDU packing and associated unit tests 5 years ago
Andre Puschmann 090f2b4110 add MAC-NR PCAP support 5 years ago
Francisco Paisana cd521a84cb bigger log buffer. Now it is 1024 chars (#649)
Use dynamic string for debug_long() function and known relation of size between log_str and log_filter
5 years ago
Andre Puschmann 5189bbad69 add stop() to logger_file
this allows to close and currently running log process, flush the content
to the file, continue logging during that time, open a new file
and write the new log entries to that new file

basically it allows to use the logger_file multiple times without
needing to destroy the object

this is used in the UE tester to write each testcase into a separate
log file
5 years ago
Pedro Alvarez 1d3e541069 Fixed warning on bytes_to_mnc 5 years ago
Pedro Alvarez 9b20a0de16 Added comment to zuc.cc and zuc.h 5 years ago
Pedro Alvarez 004db4a067 Applied clang-format to zuc_support PR. 5 years ago
David Rupprecht 50332089ce Add EEA3 and EIA3 support for UE/enodeb and MME 5 years ago
David Rupprecht d580a94dab Add EIA3 and test case 5 years ago
David Rupprecht 7e13860dd5 Add decryption function and all tests for enc 5 years ago
David Rupprecht 0841d837de Make ZUC state ful no global vars 5 years ago
David Rupprecht ef4cf7aa52 First ZUC working test case 5 years ago
Ismael Gomez c92c61d560
Optimized front-end logging processing (#641)
Avoid memory allocation and stringstream in log frontend calls (executed from worker threads). Uses a buffer pool of fixed buffer and vsnprintf
5 years ago
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
Francisco Paisana c9d3b61038 added resumable procedures to make RRC and NAS non-blocking 5 years ago
Andre Puschmann e42449532b fix wrong namespace definition in various places 5 years ago
Pedro Alvarez 6efa944b5e Removed srslte prefix from pdcp_config_t 5 years ago
Pedro Alvarez 3da0391fff Adding default initializers to PDCP config. 5 years ago
Pedro Alvarez 494be243c0 Changed security direction to use an enum. 5 years ago
Pedro Alvarez f90b69e5f4 More clang-format for PDCP 5 years ago
Pedro Alvarez 491695ab77 Clang-formated PDCP NR PR. 5 years ago
Pedro Alvarez d3b6828082 Changed PDCP configuration to explicitly have tx and rx direction. Decrypt on PDCP NR seems fine. 5 years ago
Pedro Alvarez 73e30743d1 Added enum to PDCP config to replace two bools. 5 years ago
Pedro Alvarez 457f35699d Reverted back to a single config structure between PDCP NR and PDCP LTE. 5 years ago
Pedro Alvarez 9d0db108c6 Continue to add PDCP tx test 5 years ago
Pedro Alvarez 2081b22465 Added PDCP_SN_LEN constants. Added bearer_id and direction back to the pdcp_entity_base. 5 years ago
Pedro Alvarez 52f75c3cf2 Starting to add PDCP NR state variables. 5 years ago
Pedro Alvarez 1944bf9a80 Continue to split pdcp_entity_lte and pdcp_entity_nr. Compiling now. 5 years ago
Pedro Alvarez 005d03cb1a Starting to split pdcp_entity into pdcp_entity_lte and pdcp_entity_nr to support NR PDCP 5 years ago
Andre Puschmann 09610ce788 add type setter to sch_subh and use it for MCH PDUs 6 years ago
yagoda 408400bee6 adding fixes and tests for eMBMS 6 years ago
Andre Puschmann 9ee415ac82 correct the max size for a single TB
since the size in bits is counted per TB we don't need to allocate
space for the 2x2 MIMO case. Both CW have their own buffer.
6 years ago
Ismael Gomez c9c43e44e9 Fixed PDU buffer size 6 years ago
Pedro Alvarez 9597cc4c14 Clang-formated liblte_* 6 years ago
Andre Puschmann 4e86b2f6b2 introduce layerd architecture we use for UE to eNB
- this allows flexible use of different PHYs and radios
- use common radio_multi (moved to lib)
6 years ago
Andre Puschmann 92f0d58856 mac: move further init/config into ctor to allow early logging, etc. 6 years ago
Francisco Paisana b936629221 removed rrc asn1 header from bcd_helpers, from rlc_interface, and rlc tests 6 years ago
Francisco Paisana bb0dbf0f1c created a asn1 utils with helper functions and types related to the asn1. These types/functions will help isolate the rrc_asn1 lib from most of the layers, reducing this way the compile times, and leading to better isolation. This will also make the transition to NR smoother. I removed the asn1 types from the NAS and USIM interface so far. 6 years ago
Andre Puschmann 82a69fb51c mux: fix packing of short MAC PDUs 6 years ago
Andre Puschmann 4aaa0473b9 pdu: remove unused variable total_sdu_len 6 years ago
Andre Puschmann b6d7fd5def improve error handling in PDU packing 6 years ago
Andre Puschmann da35f41dd5 rework MAC logical channel prioritization 6 years ago
Andre Puschmann 414e55fafc pcap: add dtor
this fixes issue if object is destroyed and PCAP is still open
6 years ago
Pedro Alvarez d67d18cc6b Removing deplicated error codes. 6 years ago
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.
6 years ago
Andre Puschmann 0e95867f13 remove task dispatcher class 6 years ago
Andre Puschmann 709e769d0d pdu: fix formatting 6 years ago
Andre Puschmann ea2e692836 pdu: fix MAC RAR PDU packing and unpacking with backoff indicator 6 years ago
Francisco Paisana 00256f2cd9 fix the hanging in the UE during shutdown 6 years ago
Andre Puschmann 58b09c8677 fix pool_allocate macros for new unique_buffer 6 years ago
Andre Puschmann 65f50cd7ba introduce new UE layer design
- abstract UE object now consists of a radio, a PHY, and a stack layer
- add new stack abstraction layer that combines MAC, RLC, RRC, PDCP, NAS and GW
- PHY layer now has a single stack interface and does not talk to MAC and RRC seperatly
6 years ago
Francisco Paisana 0e3baa0f2f Renamed the reset() method of byte_buffer_t to clear() 6 years ago
Francisco Paisana 3bedc93ba5 added _t to unique_byte_buffer type 6 years ago
Francisco Paisana bc01a5ecda changed block_queue api to return back the unique buffer in case it fails to push it to the queue 6 years ago
Francisco Paisana f4aa03154d change queue read and other functions apis 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
Francisco Paisana 0976ea6f27 created a unique byte buffer that automatically deallocates 6 years ago
Andre Puschmann 62dad5e21d add nb-iot tag support to PCAP writer 6 years ago
Francisco Paisana 7be183c223 rework scheduler 6 years ago
Xavier Arteaga 2aa36dd11c Added backtrace print helper 6 years ago
Andre Puschmann fcd086a1c5 fix metrics_hub compilation for older gcc using std::chrono 6 years ago
Andre Puschmann 0f6997170b fix unitialized var in pdu.h 6 years ago
Francisco Paisana 1674c8939f automatically resolve invalid prach_offset for prb6 6 years ago
yagoda 3842beab0f - fixing pmch file test for standard LTE rates
- adding special value for MTCH stop
- adding error messages for config values incompatible with MBMS
6 years ago
Andre Puschmann 4b01a2e4a0 update copyright notice 6 years ago
Andre Puschmann 205db6f229 add missing license headers 6 years ago
Ismael Gomez 7780b1aba5 add tdd/ca support 6 years ago
Andre Puschmann afb591ee97 add ctor for worker class in thread_pool 6 years ago
Andre Puschmann c8f8c16d50
make EIA and EEA algorithms configurable (#323)
this patch allows to configure the EIA and EEA algorithms
the UE uses and announces during attach. They can
be specified as a comma-separated list.

The patch also removes a dedicated NAS config class and uses
the default nas_args_t type for this. There was a full
duplication of members before.

The patch also converts nas_args_t and usim_args_t into a class
with a default constructor that initialize all booleans.
6 years ago
Andre Puschmann 2e1b8240e6 fix uninitialized timeval struct in metrics_hub
This was causing issue in some builds done on the Ubuntu
PPA systems leading to an SIGILL when starting the UE/eNB
6 years ago
Andre Puschmann 77ca1d9882 load config file from user's home directory first before checking etc 6 years ago
Francisco Paisana 0204db2e12 new asn1 rrc library 6 years ago
Andre Puschmann c88cc35fdf try to load config files from /etc/srslte before checking users's home 6 years ago
Andre Puschmann df40259c26 fix issue in PDCP when bearer ID for DRBs was not starting with 1 6 years ago
Pedro Alvarez 25108e2e2b Added configuration options to UE for IPv6 PDN. Starting to send PDN connectivity requesting IPv6. 6 years ago
Andre Puschmann 3f36594f1e fix copy ctors in bit_buffer_t 6 years ago
Andre Puschmann 481a1829dd stop metrics hub thread before calling stop on listeners 6 years ago
Andre Puschmann 270707b7a8 add missing initialization in block_queue 6 years ago
Andre Puschmann 93d17fed3e disable buffer pool logging by default 6 years ago
Andre Puschmann bd6bb6903f fix block_queue pop and clear methods
- pop was bzero'ing the popped object which
  causes for more complex objects like std::string
- clear wasn't actually emptying the queue
6 years ago
Andre Puschmann e64de7ec6b increase maximum buffer size to accomodate max TBS for Cat4 UEs 6 years ago
Pedro Alvarez b577c9ac8c Merge branch 'mnc_plmn_217' into next 6 years ago
Andre Puschmann 1985d7b37c fix byte_buffer copy and assignment ctor 6 years ago
Andre Puschmann 07e42c1964 Merge branch 'rlc_am_subclass' into next 6 years ago
Pedro Alvarez c4a5af11d5 Fixed nibble order in mccmnc_to_plmn and plmn_to_mccmnc. Fixed corresponding PLMN test 6 years ago
Andre Puschmann c9186f110c add log_filter dtor 6 years ago
Pedro Alvarez 49c44a2bd4 Moved int_helpers to lib so that the EPC can use those functions too. 6 years ago
Andre Puschmann d981f129e0 Merge branch 'master' into next 6 years ago
Andre Puschmann adbec3ee70 fix warning in common.h reported by clang-tidy 6 years ago
Andre Puschmann 2ef2baf72a increase size of buffer_pool
- This solves an issue where in the worst-case an RLC AM instance would
  block because no new data nor control PDUs could be created to flush
  the buffers, effectivly causing a system stall.
- Happens in RLC AM stress test regularly with higher drop rates.
7 years ago
David Rupprecht bf4c84ef7b Fixed clear function in blocked queue (#199) 7 years ago
Andre Puschmann be3b2fbc08
Merge pull request #239 from softwareradiosystems/epc_stacktrace
Epc stacktrace
7 years ago
Pedro Alvarez 84e7925f69 Fixed up a comment. 7 years ago
Pedro Alvarez 597cf18b9d Changing common/debug.h to crash_handler.h 7 years ago