Francisco Paisana
8d3427e88a
removed namespacing from state printing
2020-04-09 18:57:18 +01:00
Francisco Paisana
b699e0e490
enter/exit moved outside of the states, into the fsm. Now i just use the type_name function to get a state name
2020-04-09 18:57:18 +01:00
Francisco Paisana
4a4827a603
created a method to detect unhandled events
2020-04-09 18:57:18 +01:00
Francisco Paisana
ec3ef4474e
created a simple procedure fsm
2020-04-09 18:57:18 +01:00
Francisco Paisana
1aae510e9d
enter/exit are now being called in order
2020-04-09 18:57:18 +01:00
Francisco Paisana
dd377becaa
small fixes in state transitions
2020-04-09 18:57:18 +01:00
Francisco Paisana
dc0427804f
clean up comments and add some util functions
2020-04-09 18:57:18 +01:00
Francisco Paisana
7dc1489ea7
reintroduced optional enter/exit methods for each state
2020-04-09 18:57:18 +01:00
Francisco Paisana
7c76a64238
fix move/copy correctness
2020-04-09 18:57:18 +01:00
Francisco Paisana
be5a33f9b7
deleted unused fsm methods
2020-04-09 18:57:18 +01:00
Francisco Paisana
6675e92806
implement fsm based on choice type
2020-04-09 18:57:18 +01:00
Francisco Paisana
018f9e7db2
implement visit pattern
2020-04-09 18:57:18 +01:00
Francisco Paisana
278a1686fb
creation of choice/variant type
2020-04-09 18:57:18 +01:00
Francisco Paisana
7932a6bed7
allow the use of move_tasks in procedures
2020-04-08 14:55:33 +01:00
Andre Puschmann
057844d7d6
signal_handler: increase alarm timeout to 5s and use raise instead of exit()
...
it seems that exit() causes problems when threads couldn't be stopped
properly, which is the reason why we have to call alarm() in the first place.
therefore, send a SIGKILL to our process and make sure we don't leave any
zombie threads running.
2020-04-03 22:22:04 +02:00
Francisco Paisana
c661025cda
fix log tti, and print a warning when the ul_harq tti does not match existing ones
2020-04-01 15:02:21 +01:00
Francisco Paisana
30ae2226c1
common interface for stack multiqueue tasks, background tasks and timers
2020-03-31 13:42:06 +01:00
Andre Puschmann
62e4bd9469
log_ptr: fix issue if accessing log_ptr that was reset already
...
during deinit of the UE/eNB it could happen that the log_ptr
was already set to null but the stack thread was still accessing
it through log_h->info()
i've moved the old macro into a new header and used as as much
as possible. there are still places in the code where similar
macros are used but we would need to change the variable name
to replace them
2020-03-31 12:32:52 +02:00
Francisco Paisana
344eaf49ec
use logmap in the whole enb and ue
2020-03-25 15:50:30 +00:00
Francisco Paisana
8e837e173d
printf has already a way to pad spaces. If we use it, we can avoid accidentally adding extra logs because we did srslte::logmap::get("MAC") instead of srslte::logmap::get("MAC ")
2020-03-24 22:36:27 +00:00
Ismael Gomez
fd3d4a7874
Refactor thread_pool: use std::mutex and fix some hidden potential bugs
2020-03-22 08:48:40 +01:00
Francisco Paisana
82cb6baef0
now the whole ue and enb mac uses the logmap
2020-03-20 11:32:03 +00:00
Francisco Paisana
fb967d17a2
now we can disable tprofs individually
2020-03-19 10:59:37 +00:00
Francisco Paisana
e73cbb09b0
created tprof statistic for sliding windows
2020-03-19 10:59:37 +00:00
Francisco Paisana
2601d106f5
fix license string
2020-03-19 10:59:37 +00:00
Francisco Paisana
deb76d5dbd
improved design to avoid data structures, and allow guarded start/stop even in lambdas
2020-03-19 10:59:37 +00:00
Francisco Paisana
8a54aef89d
created a better/more composable design for time measures
2020-03-19 10:59:37 +00:00
Francisco Paisana
854211496b
redesign of tprof for thread safety
2020-03-19 10:59:37 +00:00
Francisco Paisana
269c852767
created a class for time profiling. An object of such class, if disabled, has almost zero overhead. Added a compile-time flag to turn on/off time profiling
2020-03-19 10:59:37 +00:00
Andre Puschmann
ac17ec6452
add common signal_handler for srsUE/srsENB/srsEPC
...
the signal handler is the same for all three apps. The "running" flag
as well as the file_logger object are in the common header in order
to allow the signal handler to flush the file if the alarm goes off.
2020-03-17 09:58:01 +01:00
Andre Puschmann
4e3e537982
fix doxygen file description
2020-03-17 09:58:01 +01:00
Xavier Arteaga
e832769ae6
Updated copyright
2020-03-16 11:26:06 +01:00
Francisco Paisana
5330249625
created tti_point type and unit test. Added also the tti_point to the scheduler harqs, and rrc procedure
2020-03-13 19:20:40 +00:00
Ismael Gomez
e8b8c9922e
Add RF per-channel frequency band constraints ( #1026 )
2020-03-12 23:06:09 +01:00
Francisco Paisana
7548402632
change scell activation interface to use arrays. Added a method to the scheduler to get the current set of activated carriers
2020-03-11 21:56:33 +01:00
Xavier Arteaga
590847e794
TTI semaphore requires protection in wait_all
2020-03-11 21:17:13 +01:00
Xavier Arteaga
76408b195e
Rename TX_DELAY and FDD_HARQ_DELAY_MS
2020-03-11 21:16:36 +01:00
Pedro Alvarez
96c82b3fc6
Moved PDCP configs to pdcp_config.h. Added `as_security_cfg_t` structure to hold access stratum keys.
...
Refactored PDCP, RRC and USIM accordingly.
2020-03-11 09:00:38 +00:00
Francisco Paisana
e62972d38e
fix fdd delays in scheduler
2020-03-10 14:17:49 +01:00
Ismael Gomez
4e12405fff
Remove radio_multi class and organize channels, ports and carrier buffers ( #1019 )
2020-03-06 15:26:48 +01:00
Xavier Arteaga
96ffe1c3ad
Commented class tti_semaphore
2020-03-06 12:24:28 +01:00
Andre Puschmann
664170fec6
pcap: add CC index when writing PCAP
2020-03-05 20:46:14 +01:00
Francisco Paisana
fed06138b9
moved rach_detected to stack thread. Created a more friendly interface to enqueue tasks in stack
2020-03-03 21:03:21 +00:00
Andre Puschmann
a8bbe551ac
move thread class into srslte namespace to avoid ambiguity between std::thread
2020-03-03 16:22:04 +01:00
Francisco Paisana
79e5bd94cf
remove timers from priority queue for which run() or stop() was called.
2020-02-29 18:00:11 +00:00
Francisco Paisana
5b2da779b7
new method in timer_handler to dispatch calls without an associated unique_timer
2020-02-29 18:00:11 +00:00
Francisco Paisana
32c347fbb1
hide logmap implementation in source file. Export symbols so they can be used by srsASN1 project
2020-02-28 11:33:26 +00:00
Francisco Paisana
e859d622c7
added logref class to forbid logmap pointer invalidation. Created a test for the logref, and introduced it in the scheduler, rrc and nas
2020-02-28 11:33:26 +00:00
Andre Puschmann
b88e877b4c
ttcn3: make SS single threaded and use SCTP for test ports
...
- remove all threading from SS
- use epoll to handle test port connections, signals, and timers
- convert testport interface to SCTP
2020-02-25 21:28:15 +01:00
Pedro Alvarez
aecfb151ce
Apply clang-format to the lib in preperation for PR.
2020-02-20 20:53:27 +01:00