Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
OpenXG-RAN
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Michael Black
OpenXG-RAN
Commits
203ac178
Commit
203ac178
authored
Sep 04, 2022
by
Robert Schmidt
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/by-core-thread-pool' into integration_2022_wk35b
parents
0b970e9e
6f862c0d
Changes
73
Hide whitespace changes
Inline
Side-by-side
Showing
73 changed files
with
122 additions
and
212 deletions
+122
-212
ci-scripts/cls_containerize.py
ci-scripts/cls_containerize.py
+1
-1
ci-scripts/conf_files/benetel-5g.conf
ci-scripts/conf_files/benetel-5g.conf
+0
-1
ci-scripts/conf_files/gNB_SA_DU.conf
ci-scripts/conf_files/gNB_SA_DU.conf
+0
-1
ci-scripts/conf_files/gNB_SA_n78_106PRB.2x2_usrpn310.conf
ci-scripts/conf_files/gNB_SA_n78_106PRB.2x2_usrpn310.conf
+0
-1
ci-scripts/conf_files/gNB_SA_n78_133PRB.2x2_usrpn310.conf
ci-scripts/conf_files/gNB_SA_n78_133PRB.2x2_usrpn310.conf
+0
-1
ci-scripts/conf_files/gnb.band261.tm1.32PRB.usrpn300.conf
ci-scripts/conf_files/gnb.band261.tm1.32PRB.usrpn300.conf
+0
-1
ci-scripts/conf_files/gnb.band66.tm1.106PRB.usrpn300.conf
ci-scripts/conf_files/gnb.band66.tm1.106PRB.usrpn300.conf
+0
-1
ci-scripts/conf_files/gnb.band78.nsa_2x2.106PRB.usrpn310.conf
...cripts/conf_files/gnb.band78.nsa_2x2.106PRB.usrpn310.conf
+0
-1
ci-scripts/conf_files/gnb.band78.sa.fr1.106PRB.2x2.usrpn310.asue.conf
...onf_files/gnb.band78.sa.fr1.106PRB.2x2.usrpn310.asue.conf
+0
-1
ci-scripts/conf_files/gnb.band78.sa.fr1.106PRB.2x2.usrpn310.conf
...pts/conf_files/gnb.band78.sa.fr1.106PRB.2x2.usrpn310.conf
+0
-1
ci-scripts/conf_files/gnb.band78.sa.fr1.106PRB.ddsuu.2x2.usrpn310.conf
...nf_files/gnb.band78.sa.fr1.106PRB.ddsuu.2x2.usrpn310.conf
+0
-1
ci-scripts/conf_files/gnb.band78.sa.fr1.162PRB.2x2.usrpn310.conf
...pts/conf_files/gnb.band78.sa.fr1.162PRB.2x2.usrpn310.conf
+0
-1
ci-scripts/conf_files/gnb.band78.tm1.106PRB.usrpn300.conf
ci-scripts/conf_files/gnb.band78.tm1.106PRB.usrpn300.conf
+0
-1
ci-scripts/conf_files/gnb.band78.tm1.fr1.106PRB.usrpb210.conf
...cripts/conf_files/gnb.band78.tm1.fr1.106PRB.usrpb210.conf
+0
-1
ci-scripts/conf_files/gnb.band78.tm1.fr1.106PRB.usrpn310.conf
...cripts/conf_files/gnb.band78.tm1.fr1.106PRB.usrpn310.conf
+0
-1
ci-scripts/xml_files/gnb_nr_ue_usrp_run.xml
ci-scripts/xml_files/gnb_nr_ue_usrp_run.xml
+1
-1
ci-scripts/xml_files/gnb_nr_ue_usrp_run_multi_thread.xml
ci-scripts/xml_files/gnb_nr_ue_usrp_run_multi_thread.xml
+1
-1
common/utils/ocp_itti/intertask_interface.cpp
common/utils/ocp_itti/intertask_interface.cpp
+21
-23
common/utils/ocp_itti/intertask_interface.h
common/utils/ocp_itti/intertask_interface.h
+1
-1
common/utils/threadPool/thread-pool.c
common/utils/threadPool/thread-pool.c
+13
-1
common/utils/threadPool/thread-pool.h
common/utils/threadPool/thread-pool.h
+2
-2
executables/main-ocp.c
executables/main-ocp.c
+1
-5
executables/nr-gnb.c
executables/nr-gnb.c
+2
-13
executables/nr-ue.c
executables/nr-ue.c
+1
-1
executables/nr-uesoftmodem.c
executables/nr-uesoftmodem.c
+2
-15
executables/nr-uesoftmodem.h
executables/nr-uesoftmodem.h
+1
-2
executables/softmodem-common.h
executables/softmodem-common.h
+1
-1
openair1/PHY/INIT/lte_init_ue.c
openair1/PHY/INIT/lte_init_ue.c
+3
-2
openair1/PHY/LTE_TRANSPORT/ulsch_decoding.c
openair1/PHY/LTE_TRANSPORT/ulsch_decoding.c
+4
-1
openair1/PHY/NR_UE_TRANSPORT/nr_dlsch_decoding.c
openair1/PHY/NR_UE_TRANSPORT/nr_dlsch_decoding.c
+3
-26
openair1/PHY/defs_gNB.h
openair1/PHY/defs_gNB.h
+0
-1
openair1/SCHED_NR_UE/defs.h
openair1/SCHED_NR_UE/defs.h
+0
-1
openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
+0
-1
openair1/SIMULATION/NR_PHY/dlschsim.c
openair1/SIMULATION/NR_PHY/dlschsim.c
+10
-2
openair1/SIMULATION/NR_PHY/dlsim.c
openair1/SIMULATION/NR_PHY/dlsim.c
+5
-13
openair1/SIMULATION/NR_PHY/pbchsim.c
openair1/SIMULATION/NR_PHY/pbchsim.c
+7
-0
openair1/SIMULATION/NR_PHY/prachsim.c
openair1/SIMULATION/NR_PHY/prachsim.c
+1
-6
openair1/SIMULATION/NR_PHY/pucchsim.c
openair1/SIMULATION/NR_PHY/pucchsim.c
+8
-0
openair1/SIMULATION/NR_PHY/ulschsim.c
openair1/SIMULATION/NR_PHY/ulschsim.c
+9
-2
openair1/SIMULATION/NR_PHY/ulsim.c
openair1/SIMULATION/NR_PHY/ulsim.c
+3
-17
openair2/GNB_APP/L1_nr_paramdef.h
openair2/GNB_APP/L1_nr_paramdef.h
+1
-1
openair2/GNB_APP/gnb_config.c
openair2/GNB_APP/gnb_config.c
+2
-2
openair2/LAYER2/MAC/config.c
openair2/LAYER2/MAC/config.c
+2
-4
openair2/RRC/LTE/rrc_UE.c
openair2/RRC/LTE/rrc_UE.c
+2
-4
openair3/NAS/UE/nas_ue_task.c
openair3/NAS/UE/nas_ue_task.c
+2
-3
openair3/SCTP/sctp_eNB_task.c
openair3/SCTP/sctp_eNB_task.c
+10
-15
openair3/SCTP/sctp_eNB_task.h
openair3/SCTP/sctp_eNB_task.h
+0
-2
openair3/ocp-gtpu/gtp_itf.cpp
openair3/ocp-gtpu/gtp_itf.cpp
+2
-3
targets/PROJECTS/GENERIC-LTE-EPC/CONF/benetel-5g.conf
targets/PROJECTS/GENERIC-LTE-EPC/CONF/benetel-5g.conf
+0
-1
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band257.tm1.32PRB.usrpn300.conf
.../GENERIC-LTE-EPC/CONF/gnb.band257.tm1.32PRB.usrpn300.conf
+0
-1
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band257.tm1.32PRB.usrpx300.conf
.../GENERIC-LTE-EPC/CONF/gnb.band257.tm1.32PRB.usrpx300.conf
+0
-1
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band257.tm1.66PRB.usrpn300.conf
.../GENERIC-LTE-EPC/CONF/gnb.band257.tm1.66PRB.usrpn300.conf
+0
-1
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band261.tm1.32PRB.usrpn300.conf
.../GENERIC-LTE-EPC/CONF/gnb.band261.tm1.32PRB.usrpn300.conf
+0
-1
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band66.tm1.106PRB.usrpn300.conf
.../GENERIC-LTE-EPC/CONF/gnb.band66.tm1.106PRB.usrpn300.conf
+0
-1
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band66.tm1.106PRB.usrpx300.conf
.../GENERIC-LTE-EPC/CONF/gnb.band66.tm1.106PRB.usrpx300.conf
+0
-1
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band66.tm1.25PRB.usrpn300.conf
...S/GENERIC-LTE-EPC/CONF/gnb.band66.tm1.25PRB.usrpn300.conf
+0
-1
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.106PRB.slave.conf
...ROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.106PRB.slave.conf
+0
-1
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.106PRB.PTRS.usrpx300.conf
...RIC-LTE-EPC/CONF/gnb.band78.tm1.106PRB.PTRS.usrpx300.conf
+0
-1
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.106PRB.usrpb210.conf
.../GENERIC-LTE-EPC/CONF/gnb.band78.tm1.106PRB.usrpb210.conf
+0
-1
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.106PRB.usrpn300.conf
.../GENERIC-LTE-EPC/CONF/gnb.band78.tm1.106PRB.usrpn300.conf
+0
-1
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.106PRB.usrpx300.conf
.../GENERIC-LTE-EPC/CONF/gnb.band78.tm1.106PRB.usrpx300.conf
+0
-1
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.217PRB.usrpn300.conf
.../GENERIC-LTE-EPC/CONF/gnb.band78.tm1.217PRB.usrpn300.conf
+0
-1
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.217PRB.usrpx300.conf
.../GENERIC-LTE-EPC/CONF/gnb.band78.tm1.217PRB.usrpx300.conf
+0
-1
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.24PRB.usrpb210.conf
...S/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.24PRB.usrpb210.conf
+0
-1
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.24PRB.usrpn300.conf
...S/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.24PRB.usrpn300.conf
+0
-1
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.24PRB.usrpx300.conf
...S/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.24PRB.usrpx300.conf
+0
-1
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.273PRB.usrpn300.conf
.../GENERIC-LTE-EPC/CONF/gnb.band78.tm1.273PRB.usrpn300.conf
+0
-1
targets/PROJECTS/GENERIC-LTE-EPC/CONF/oaiL1.nfapi.usrpx300.conf
...s/PROJECTS/GENERIC-LTE-EPC/CONF/oaiL1.nfapi.usrpx300.conf
+0
-1
targets/PROJECTS/GENERIC-LTE-EPC/CONF/testing_gnb.conf
targets/PROJECTS/GENERIC-LTE-EPC/CONF/testing_gnb.conf
+0
-1
targets/PROJECTS/GENERIC-LTE-EPC/CONF/testing_gnb_24PRB.conf
targets/PROJECTS/GENERIC-LTE-EPC/CONF/testing_gnb_24PRB.conf
+0
-1
targets/PROJECTS/GENERIC-LTE-EPC/CONF/testing_gnb_nsa_n310.conf
...s/PROJECTS/GENERIC-LTE-EPC/CONF/testing_gnb_nsa_n310.conf
+0
-1
targets/PROJECTS/GENERIC-NR-5GC/CONF/du_gnb.conf
targets/PROJECTS/GENERIC-NR-5GC/CONF/du_gnb.conf
+0
-1
targets/PROJECTS/GENERIC-NR-5GC/CONF/gnb.sa.band78.fr1.106PRB.usrpb210.sabox.conf
...-NR-5GC/CONF/gnb.sa.band78.fr1.106PRB.usrpb210.sabox.conf
+0
-1
No files found.
ci-scripts/cls_containerize.py
View file @
203ac178
...
...
@@ -675,7 +675,7 @@ class Containerize():
result
=
re
.
search
(
'service=(?P<svc_name>[a-zA-Z0-9\_]+)'
,
mySSH
.
getBefore
())
if
result
is
not
None
:
svcName
=
result
.
group
(
'svc_name'
)
mySSH
.
command
(
'docker-compose --file ci-docker-compose.yml up -d '
+
svcName
,
'\$'
,
1
0
)
mySSH
.
command
(
'docker-compose --file ci-docker-compose.yml up -d '
+
svcName
,
'\$'
,
1
5
)
# Checking Status
mySSH
.
command
(
'docker-compose --file ci-docker-compose.yml config'
,
'\$'
,
5
)
...
...
ci-scripts/conf_files/benetel-5g.conf
View file @
203ac178
...
...
@@ -214,7 +214,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
}
);
...
...
ci-scripts/conf_files/gNB_SA_DU.conf
View file @
203ac178
...
...
@@ -204,7 +204,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
prach_dtx_threshold
=
200
;
pucch0_dtx_threshold
=
150
;
ofdm_offset_divisor
=
8
;
#set this to UINT_MAX for offset 0
...
...
ci-scripts/conf_files/gNB_SA_n78_106PRB.2x2_usrpn310.conf
View file @
203ac178
...
...
@@ -231,7 +231,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
prach_dtx_threshold
=
120
;
pucch0_dtx_threshold
=
150
;
}
...
...
ci-scripts/conf_files/gNB_SA_n78_133PRB.2x2_usrpn310.conf
View file @
203ac178
...
...
@@ -228,7 +228,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
prach_dtx_threshold
=
120
;
}
);
...
...
ci-scripts/conf_files/gnb.band261.tm1.32PRB.usrpn300.conf
View file @
203ac178
...
...
@@ -211,7 +211,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
ofdm_offset_divisor
=
8
;
#set this to UINT_MAX for offset 0
}
);
...
...
ci-scripts/conf_files/gnb.band66.tm1.106PRB.usrpn300.conf
View file @
203ac178
...
...
@@ -181,7 +181,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
ofdm_offset_divisor
=
8
;
#set this to UINT_MAX for offset 0
}
);
...
...
ci-scripts/conf_files/gnb.band78.nsa_2x2.106PRB.usrpn310.conf
View file @
203ac178
...
...
@@ -210,7 +210,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
prach_dtx_threshold
=
120
;
pucch0_dtx_threshold
=
80
;
}
...
...
ci-scripts/conf_files/gnb.band78.sa.fr1.106PRB.2x2.usrpn310.asue.conf
View file @
203ac178
...
...
@@ -237,7 +237,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
prach_dtx_threshold
=
120
;
# pucch0_dtx_threshold = 150;
}
...
...
ci-scripts/conf_files/gnb.band78.sa.fr1.106PRB.2x2.usrpn310.conf
View file @
203ac178
...
...
@@ -234,7 +234,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
prach_dtx_threshold
=
120
;
# pucch0_dtx_threshold = 150;
}
...
...
ci-scripts/conf_files/gnb.band78.sa.fr1.106PRB.ddsuu.2x2.usrpn310.conf
View file @
203ac178
...
...
@@ -233,7 +233,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
prach_dtx_threshold
=
120
;
# pucch0_dtx_threshold = 150;
}
...
...
ci-scripts/conf_files/gnb.band78.sa.fr1.162PRB.2x2.usrpn310.conf
View file @
203ac178
...
...
@@ -235,7 +235,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
prach_dtx_threshold
=
120
;
# pucch0_dtx_threshold = 150;
}
...
...
ci-scripts/conf_files/gnb.band78.tm1.106PRB.usrpn300.conf
View file @
203ac178
...
...
@@ -194,7 +194,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
}
);
...
...
ci-scripts/conf_files/gnb.band78.tm1.fr1.106PRB.usrpb210.conf
View file @
203ac178
...
...
@@ -210,7 +210,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
6
;
ofdm_offset_divisor
=
8
;
#set this to UINT_MAX for offset 0
}
);
...
...
ci-scripts/conf_files/gnb.band78.tm1.fr1.106PRB.usrpn310.conf
View file @
203ac178
...
...
@@ -211,7 +211,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
6
;
}
);
...
...
ci-scripts/xml_files/gnb_nr_ue_usrp_run.xml
View file @
203ac178
...
...
@@ -52,7 +52,7 @@
<testCase
id=
"090102"
>
<class>
Initialize_OAI_UE
</class>
<desc>
Initialize NR UE USRP
</desc>
<Initialize_OAI_UE_args>
--phy-test --usrp-args "addr=192.168.30.2,second_addr=192.168.50.2,clock_source=external,time_source=external" --ue-rxgain 50 --rrc_config_path . --
dlsch-parallel 4 --
log_config.global_log_options level,nocolor,time
</Initialize_OAI_UE_args>
<Initialize_OAI_UE_args>
--phy-test --usrp-args "addr=192.168.30.2,second_addr=192.168.50.2,clock_source=external,time_source=external" --ue-rxgain 50 --rrc_config_path . --log_config.global_log_options level,nocolor,time
</Initialize_OAI_UE_args>
<air_interface>
NR
</air_interface>
</testCase>
...
...
ci-scripts/xml_files/gnb_nr_ue_usrp_run_multi_thread.xml
View file @
203ac178
...
...
@@ -52,7 +52,7 @@
<testCase
id=
"090104"
>
<class>
Initialize_OAI_UE
</class>
<desc>
Initialize NR UE USRP
</desc>
<Initialize_OAI_UE_args>
--phy-test --usrp-args "addr=192.168.30.2,second_addr=192.168.50.2,clock_source=external,time_source=external" --ue-rxgain 75 --rrc_config_path . --
dlsch-parallel 4 --
log_config.global_log_options level,nocolor,time
</Initialize_OAI_UE_args>
<Initialize_OAI_UE_args>
--phy-test --usrp-args "addr=192.168.30.2,second_addr=192.168.50.2,clock_source=external,time_source=external" --ue-rxgain 75 --rrc_config_path . --log_config.global_log_options level,nocolor,time
</Initialize_OAI_UE_args>
<air_interface>
NR
</air_interface>
</testCase>
...
...
common/utils/ocp_itti/intertask_interface.cpp
View file @
203ac178
...
...
@@ -45,9 +45,7 @@ extern "C" {
std
::
vector
<
MessageDef
*>
message_queue
;
std
::
map
<
long
,
timer_elm_t
>
timer_map
;
uint64_t
next_timer
=
UINT64_MAX
;
struct
epoll_event
*
events
=
NULL
;
int
nb_fd_epoll
=
0
;
int
nb_events
=
0
;
int
epoll_fd
=-
1
;
int
sem_fd
=-
1
;
}
task_list_t
;
...
...
@@ -167,8 +165,6 @@ extern "C" {
struct
epoll_event
event
;
task_list_t
*
t
=
tasks
[
task_id
];
t
->
nb_fd_epoll
++
;
t
->
events
=
(
struct
epoll_event
*
)
realloc
((
void
*
)
t
->
events
,
t
->
nb_fd_epoll
*
sizeof
(
struct
epoll_event
));
event
.
events
=
EPOLLIN
|
EPOLLERR
;
event
.
data
.
u64
=
0
;
event
.
data
.
fd
=
fd
;
...
...
@@ -185,10 +181,10 @@ extern "C" {
t
->
nb_fd_epoll
--
;
}
static
inline
int
itti_get_events_locked
(
task_id_t
task_id
,
struct
epoll_event
*
*
events
)
{
static
inline
int
itti_get_events_locked
(
task_id_t
task_id
,
struct
epoll_event
*
events
,
int
max_
events
)
{
task_list_t
*
t
=
tasks
[
task_id
];
uint64_t
current_time
=
0
;
int
nb_events
;
do
{
if
(
t
->
next_timer
!=
UINT64_MAX
)
{
struct
timespec
tp
;
...
...
@@ -234,40 +230,41 @@ extern "C" {
pthread_mutex_unlock
(
&
t
->
queue_cond_lock
);
LOG_D
(
ITTI
,
"enter blocking wait for %s, timeout: %d ms
\n
"
,
itti_get_task_name
(
task_id
),
epoll_timeout
);
t
->
nb_events
=
epoll_wait
(
t
->
epoll_fd
,
t
->
events
,
t
->
nb_fd_epoll
,
epoll_timeout
);
nb_events
=
epoll_wait
(
t
->
epoll_fd
,
events
,
max_events
,
epoll_timeout
);
if
(
t
->
nb_events
<
0
&&
(
errno
==
EINTR
||
errno
==
EAGAIN
)
)
if
(
nb_events
<
0
&&
(
errno
==
EINTR
||
errno
==
EAGAIN
)
)
pthread_mutex_lock
(
&
t
->
queue_cond_lock
);
}
while
(
t
->
nb_events
<
0
&&
(
errno
==
EINTR
||
errno
==
EAGAIN
)
);
}
while
(
nb_events
<
0
&&
(
errno
==
EINTR
||
errno
==
EAGAIN
)
);
AssertFatal
(
t
->
nb_events
>=
0
,
AssertFatal
(
nb_events
>=
0
,
"epoll_wait failed for task %s, nb fds %d, timeout %lu: %s!
\n
"
,
itti_get_task_name
(
task_id
),
t
->
nb_fd_epoll
,
t
->
next_timer
!=
UINT64_MAX
?
t
->
next_timer
-
current_time
:
-
1
,
strerror
(
errno
));
LOG_D
(
ITTI
,
"receive on %d descriptors for %s
\n
"
,
t
->
nb_events
,
itti_get_task_name
(
task_id
));
itti_get_task_name
(
task_id
),
t
->
nb_fd_epoll
,
t
->
next_timer
!=
UINT64_MAX
?
t
->
next_timer
-
current_time
:
-
1
,
strerror
(
errno
));
LOG_D
(
ITTI
,
"receive on %d descriptors for %s
\n
"
,
nb_events
,
itti_get_task_name
(
task_id
));
if
(
t
->
nb_events
==
0
)
if
(
nb_events
==
0
)
/* No data to read -> return */
return
0
;
for
(
int
i
=
0
;
i
<
t
->
nb_events
;
i
++
)
{
for
(
int
i
=
0
;
i
<
nb_events
;
i
++
)
{
/* Check if there is an event for ITTI for the event fd */
if
((
t
->
events
[
i
].
events
&
EPOLLIN
)
&&
(
t
->
events
[
i
].
data
.
fd
==
t
->
sem_fd
))
{
if
((
events
[
i
].
events
&
EPOLLIN
)
&&
(
events
[
i
].
data
.
fd
==
t
->
sem_fd
))
{
eventfd_t
sem_counter
;
/* Read will always return 1 */
AssertFatal
(
sizeof
(
sem_counter
)
==
read
(
t
->
sem_fd
,
&
sem_counter
,
sizeof
(
sem_counter
)),
""
);
/* Mark that the event has been processed */
t
->
events
[
i
].
events
&=
~
EPOLLIN
;
events
[
i
].
events
&=
~
EPOLLIN
;
}
}
*
events
=
t
->
events
;
return
t
->
nb_events
;
return
nb_events
;
}
int
itti_get_events
(
task_id_t
task_id
,
struct
epoll_event
*
*
even
ts
)
{
int
itti_get_events
(
task_id_t
task_id
,
struct
epoll_event
*
events
,
int
nb_ev
ts
)
{
pthread_mutex_lock
(
&
tasks
[
task_id
]
->
queue_cond_lock
);
return
itti_get_events_locked
(
task_id
,
events
);
return
itti_get_events_locked
(
task_id
,
events
,
nb_evts
);
}
void
itti_receive_msg
(
task_id_t
task_id
,
MessageDef
**
received_msg
)
{
...
...
@@ -275,15 +272,16 @@ extern "C" {
task_list_t
*
t
=
tasks
[
task_id
];
pthread_mutex_lock
(
&
t
->
queue_cond_lock
);
struct
epoll_event
events
[
t
->
nb_fd_epoll
];
// Weird condition to deal with crap legacy itti interface
if
(
t
->
nb_fd_epoll
==
1
)
{
while
(
t
->
message_queue
.
empty
())
{
itti_get_events_locked
(
task_id
,
&
t
->
events
);
itti_get_events_locked
(
task_id
,
events
,
t
->
nb_fd_epoll
);
pthread_mutex_lock
(
&
t
->
queue_cond_lock
);
}
}
else
{
if
(
t
->
message_queue
.
empty
())
{
itti_get_events_locked
(
task_id
,
&
t
->
events
);
itti_get_events_locked
(
task_id
,
events
,
t
->
nb_fd_epoll
);
pthread_mutex_lock
(
&
t
->
queue_cond_lock
);
}
}
...
...
common/utils/ocp_itti/intertask_interface.h
View file @
203ac178
...
...
@@ -479,7 +479,7 @@ void itti_unsubscribe_event_fd(task_id_t task_id, int fd);
\param events events list
@returns number of events to handle
**/
int
itti_get_events
(
task_id_t
task_id
,
struct
epoll_event
**
even
ts
);
int
itti_get_events
(
task_id_t
task_id
,
struct
epoll_event
*
events
,
int
nb_max_ev
ts
);
/** \brief Retrieves a message in the queue associated to task_id.
If the queue is empty, the thread is blocked till a new message arrives.
...
...
common/utils/threadPool/thread-pool.c
View file @
203ac178
...
...
@@ -111,7 +111,7 @@ void initNamedTpool(char *params,tpool_t *pool, bool performanceMeas, char *name
if
(
measr
)
{
mkfifo
(
measr
,
0666
);
AssertFatal
(
-
1
!=
(
pool
->
dummyTraceFd
=
AssertFatal
(
-
1
!=
(
pool
->
dummy
KeepReading
TraceFd
=
open
(
measr
,
O_RDONLY
|
O_NONBLOCK
)),
""
);
AssertFatal
(
-
1
!=
(
pool
->
traceFd
=
open
(
measr
,
O_WRONLY
|
O_APPEND
|
O_NOATIME
|
O_NONBLOCK
)),
""
);
...
...
@@ -130,6 +130,7 @@ void initNamedTpool(char *params,tpool_t *pool, bool performanceMeas, char *name
int
c
=
toupper
(
curptr
[
0
]);
switch
(
c
)
{
case
'N'
:
pool
->
activated
=
false
;
break
;
...
...
@@ -161,6 +162,17 @@ void initNamedTpool(char *params,tpool_t *pool, bool performanceMeas, char *name
}
}
void
initFloatingCoresTpool
(
int
nbThreads
,
tpool_t
*
pool
,
bool
performanceMeas
,
char
*
name
)
{
char
threads
[
1024
]
=
"n"
;
if
(
nbThreads
)
{
strcpy
(
threads
,
"-1"
);
for
(
int
i
=
1
;
i
<
nbThreads
;
i
++
)
strncat
(
threads
,
",-1"
,
sizeof
(
threads
-
1
));
}
threads
[
sizeof
(
threads
-
1
)]
=
0
;
initNamedTpool
(
threads
,
pool
,
performanceMeas
,
name
);
}
#ifdef TEST_THREAD_POOL
volatile
int
oai_exit
=
0
;
...
...
common/utils/threadPool/thread-pool.h
View file @
203ac178
...
...
@@ -256,9 +256,8 @@ typedef struct thread_pool {
bool
activated
;
bool
measurePerf
;
int
traceFd
;
int
dummyTraceFd
;
int
dummy
KeepReading
TraceFd
;
uint64_t
cpuCyclesMicroSec
;
uint64_t
startProcessingUE
;
int
nbThreads
;
notifiedFIFO_t
incomingFifo
;
struct
one_thread
*
allthreads
;
...
...
@@ -389,5 +388,6 @@ static inline int abortTpool(tpool_t *t) {
return
nbRemoved
;
}
void
initNamedTpool
(
char
*
params
,
tpool_t
*
pool
,
bool
performanceMeas
,
char
*
name
);
void
initFloatingCoresTpool
(
int
nbThreads
,
tpool_t
*
pool
,
bool
performanceMeas
,
char
*
name
);
#define initTpool(PARAMPTR,TPOOLPTR, MEASURFLAG) initNamedTpool(PARAMPTR,TPOOLPTR, MEASURFLAG, NULL)
#endif
executables/main-ocp.c
View file @
203ac178
...
...
@@ -1273,11 +1273,7 @@ int main ( int argc, char **argv ) {
L1proc
->
respEncode
=
(
notifiedFIFO_t
*
)
malloc
(
sizeof
(
notifiedFIFO_t
));
L1proc
->
respDecode
=
(
notifiedFIFO_t
*
)
malloc
(
sizeof
(
notifiedFIFO_t
));
if
(
strlen
(
get_softmodem_params
()
->
threadPoolConfig
)
>
0
)
initTpool
(
get_softmodem_params
()
->
threadPoolConfig
,
L1proc
->
threadPool
,
true
);
else
initTpool
(
"n"
,
L1proc
->
threadPool
,
true
);
initTpool
(
get_softmodem_params
()
->
threadPoolConfig
,
L1proc
->
threadPool
,
cpumeas
(
CPUMEAS_GETSTATE
));
initNotifiedFIFO
(
L1proc
->
respEncode
);
initNotifiedFIFO
(
L1proc
->
respDecode
);
}
...
...
executables/nr-gnb.c
View file @
203ac178
...
...
@@ -429,19 +429,8 @@ void init_gNB_Tpool(int inst) {
gNB
=
RC
.
gNB
[
inst
];
gNB_L1_proc_t
*
proc
=
&
gNB
->
proc
;
int
numCPU
=
sysconf
(
_SC_NPROCESSORS_ONLN
);
LOG_I
(
PHY
,
"Number of threads requested in config file: %d, Number of threads available on this machine: %d
\n
"
,
gNB
->
thread_pool_size
,
numCPU
);
int
threadCnt
=
min
(
numCPU
,
gNB
->
thread_pool_size
);
if
(
threadCnt
<
2
)
LOG_E
(
PHY
,
"Number of threads for gNB should be more than 1. Allocated only %d
\n
"
,
threadCnt
);
char
pool
[
80
];
sprintf
(
pool
,
"-1"
);
int
s_offset
=
0
;
for
(
int
icpu
=
1
;
icpu
<
threadCnt
;
icpu
++
)
{
sprintf
(
pool
+
2
+
s_offset
,
",-1"
);
s_offset
+=
3
;
}
if
(
getenv
(
"noThreads"
))
strcpy
(
pool
,
"n"
);
initTpool
(
pool
,
&
gNB
->
threadPool
,
cpumeas
(
CPUMEAS_GETSTATE
));
// ULSCH decoding threadpool
initTpool
(
get_softmodem_params
()
->
threadPoolConfig
,
&
gNB
->
threadPool
,
cpumeas
(
CPUMEAS_GETSTATE
));
// ULSCH decoder result FIFO
initNotifiedFIFO
(
&
gNB
->
respDecode
);
...
...
executables/nr-ue.c
View file @
203ac178
...
...
@@ -678,7 +678,7 @@ void processSlotRX(void *arg) {
phy_procedures_slot_parallelization_nrUE_RX
(
UE
,
proc
,
0
,
0
,
1
,
no_relay
,
NULL
);
#else
uint64_t
a
=
rdtsc_oai
();
phy_procedures_nrUE_RX
(
UE
,
proc
,
gNB_id
,
get_nrUE_params
()
->
nr_dlsch_parallel
,
&
phy_pdcch_config
,
&
rxtxD
->
txFifo
);
phy_procedures_nrUE_RX
(
UE
,
proc
,
gNB_id
,
&
phy_pdcch_config
,
&
rxtxD
->
txFifo
);
LOG_D
(
PHY
,
"In %s: slot %d, time %llu
\n
"
,
__FUNCTION__
,
proc
->
nr_slot_rx
,
(
rdtsc_oai
()
-
a
)
/
3500
);
#endif
...
...
executables/nr-uesoftmodem.c
View file @
203ac178
...
...
@@ -243,20 +243,7 @@ uint64_t set_nrUE_optmask(uint64_t bitmask) {
nrUE_params_t
*
get_nrUE_params
(
void
)
{
return
&
nrUE_params
;
}
/* initialie thread pools used for NRUE processing paralleliation */
void
init_tpools
(
uint8_t
nun_dlsch_threads
)
{
char
params
[
NR_RX_NB_TH
*
NR_NB_TH_SLOT
*
3
+
1
]
=
{
0
};
for
(
int
i
=
0
;
i
<
NR_RX_NB_TH
*
NR_NB_TH_SLOT
;
i
++
)
{
memcpy
(
params
+
(
i
*
3
),
"-1,"
,
3
);
}
if
(
getenv
(
"noThreads"
))
{
initTpool
(
"n"
,
&
(
nrUE_params
.
Tpool
),
false
);
init_dlsch_tpool
(
0
);
}
else
{
initTpool
(
params
,
&
(
nrUE_params
.
Tpool
),
false
);
init_dlsch_tpool
(
nun_dlsch_threads
);
}
}
static
void
get_options
(
void
)
{
paramdef_t
cmdline_params
[]
=
CMDLINE_NRUEPARAMS_DESC
;
...
...
@@ -438,7 +425,7 @@ int main( int argc, char **argv ) {
#if T_TRACER
T_Config_Init
();
#endif
init
_tpools
(
nrUE_params
.
nr_dlsch_parallel
);
init
Tpool
(
get_softmodem_params
()
->
threadPoolConfig
,
&
(
nrUE_params
.
Tpool
),
cpumeas
(
CPUMEAS_GETSTATE
)
);
//randominit (0);
set_taus_seed
(
0
);
...
...
executables/nr-uesoftmodem.h
View file @
203ac178
...
...
@@ -31,7 +31,7 @@
#define CMDLINE_NRUEPARAMS_DESC { \
{"usrp-args", CONFIG_HLP_USRP_ARGS, 0, strptr:&usrp_args, defstrval:"type=b200", TYPE_STRING, 0}, \
{"single-thread-disable", CONFIG_HLP_NOSNGLT, PARAMFLAG_BOOL, iptr:&single_thread_flag, defintval:1, TYPE_INT, 0}, \
{"dlsch-parallel", CONFIG_HLP_DLSCH_PARA, 0, u8ptr:
&nrUE_params.nr_dlsch_parallel
, defintval:0, TYPE_UINT8, 0}, \
{"dlsch-parallel", CONFIG_HLP_DLSCH_PARA, 0, u8ptr:
NULL
, defintval:0, TYPE_UINT8, 0}, \
{"offset-divisor", CONFIG_HLP_OFFSET_DIV, 0, uptr:&nrUE_params.ofdm_offset_divisor, defuintval:8, TYPE_UINT32, 0}, \
{"max-ldpc-iterations", CONFIG_HLP_MAX_LDPC_ITERATIONS, 0, u8ptr:&nrUE_params.max_ldpc_iterations, defuintval:5, TYPE_UINT8, 0}, \
{"nr-dlsch-demod-shift", CONFIG_HLP_DLSHIFT, 0, iptr:(int32_t *)&nr_dlsch_demod_shift, defintval:0, TYPE_INT, 0}, \
...
...
@@ -78,7 +78,6 @@
typedef
struct
{
uint64_t
optmask
;
//mask to store boolean config options
uint32_t
ofdm_offset_divisor
;
// Divisor for sample offset computation for each OFDM symbol
uint8_t
nr_dlsch_parallel
;
// number of threads for dlsch decoding, 0 means no parallelization
uint8_t
max_ldpc_iterations
;
// number of maximum LDPC iterations
tpool_t
Tpool
;
// thread pool
}
nrUE_params_t
;
...
...
executables/softmodem-common.h
View file @
203ac178
...
...
@@ -139,7 +139,7 @@ extern int usrp_tx_thread;
#define CMDLINE_PARAMS_DESC { \
{"rf-config-file", CONFIG_HLP_RFCFGF, 0, strptr:&RF_CONFIG_FILE, defstrval:NULL, TYPE_STRING, 0},\
{"split73", CONFIG_HLP_SPLIT73, 0, strptr:&SPLIT73, defstrval:NULL, TYPE_STRING, 0}, \
{"thread-pool", CONFIG_HLP_TPOOL, 0, strptr:&TP_CONFIG, defstrval:"
n
", TYPE_STRING, 0}, \
{"thread-pool", CONFIG_HLP_TPOOL, 0, strptr:&TP_CONFIG, defstrval:"
-1,-1,-1,-1,-1,-1,-1,-1
", TYPE_STRING, 0}, \
{"phy-test", CONFIG_HLP_PHYTST, PARAMFLAG_BOOL, iptr:&PHY_TEST, defintval:0, TYPE_INT, 0}, \
{"do-ra", CONFIG_HLP_DORA, PARAMFLAG_BOOL, iptr:&DO_RA, defintval:0, TYPE_INT, 0}, \
{"sa", CONFIG_HLP_SA, PARAMFLAG_BOOL, iptr:&SA, defintval:0, TYPE_INT, 0}, \
...
...
openair1/PHY/INIT/lte_init_ue.c
View file @
203ac178
...
...
@@ -689,8 +689,9 @@ int init_lte_ue_signal(PHY_VARS_UE *ue,
int
idx
=
(
j
<<
1
)
+
i
;
for
(
th_id
=
0
;
th_id
<
RX_NB_TH_MAX
;
th_id
++
)
{
common_vars
->
common_vars_rx_data_per_thread
[
th_id
].
dl_ch_estimates
[
eNB_id
][
idx
]
=
(
int32_t
*
)
malloc16_clear
(
sizeof
(
int32_t
)
*
fp
->
symbols_per_tti
*
(
fp
->
ofdm_symbol_size
+
LTE_CE_FILTER_LENGTH
)
);
common_vars
->
common_vars_rx_data_per_thread
[
th_id
].
dl_ch_estimates_time
[
eNB_id
][
idx
]
=
(
int32_t
*
)
malloc16_clear
(
sizeof
(
int32_t
)
*
fp
->
ofdm_symbol_size
*
2
);
common_vars
->
common_vars_rx_data_per_thread
[
th_id
].
dl_ch_estimates
[
eNB_id
][
idx
]
=
(
int32_t
*
)
malloc16_clear
(
sizeof
(
int32_t
)
*
max
(
fp
->
symbols_per_tti
*
(
fp
->
ofdm_symbol_size
+
LTE_CE_FILTER_LENGTH
),
6144
)
);
common_vars
->
common_vars_rx_data_per_thread
[
th_id
].
dl_ch_estimates_time
[
eNB_id
][
idx
]
=
(
int32_t
*
)
malloc16_clear
(
sizeof
(
int32_t
)
*
max
(
fp
->
ofdm_symbol_size
*
2
,
6144
)
);
}
}
}
...
...
openair1/PHY/LTE_TRANSPORT/ulsch_decoding.c
View file @
203ac178
...
...
@@ -335,7 +335,10 @@ int ulsch_decoding_data(PHY_VARS_eNB *eNB, L1_rxtx_proc_t *proc,
}
union
turboReqUnion
id
=
{.
s
=
{
ulsch
->
rnti
,
proc
->
frame_rx
,
proc
->
subframe_rx
,
0
,
0
}};
notifiedFIFO_elt_t
*
req
=
newNotifiedFIFO_elt
(
sizeof
(
turboDecode_t
),
id
.
p
,
proc
->
respDecode
,
processULSegment
);
notifiedFIFO_elt_t
*
req
=
newNotifiedFIFO_elt
(
sizeof
(
turboDecode_t
),
id
.
p
,
proc
->
respDecode
,
processULSegment
);
turboDecode_t
*
rdata
=
(
turboDecode_t
*
)
NotifiedFifoData
(
req
);
rdata
->
eNB
=
eNB
;
...
...
openair1/PHY/NR_UE_TRANSPORT/nr_dlsch_decoding.c
View file @
203ac178
...
...
@@ -57,29 +57,6 @@ notifiedFIFO_t freeBlocks_dl;
notifiedFIFO_elt_t
*
msgToPush_dl
;
int
nbDlProcessing
=
0
;
static
tpool_t
pool_dl
;
//extern double cpuf;
void
init_dlsch_tpool
(
uint8_t
num_dlsch_threads
)
{
char
*
params
=
NULL
;
if
(
num_dlsch_threads
==
0
)
{
params
=
calloc
(
1
,
2
);
memcpy
(
params
,
"N"
,
1
);
}
else
{
params
=
calloc
(
1
,(
num_dlsch_threads
*
3
)
+
1
);
for
(
int
i
=
0
;
i
<
num_dlsch_threads
;
i
++
)
{
memcpy
(
params
+
(
i
*
3
),
"-1,"
,
3
);
}
}
initNamedTpool
(
params
,
&
pool_dl
,
false
,
"dlsch"
);
free
(
params
);
}
void
free_nr_ue_dlsch
(
NR_UE_DLSCH_t
**
dlschptr
,
uint16_t
N_RB_DL
)
{
uint16_t
a_segments
=
MAX_NUM_NR_DLSCH_SEGMENTS_PER_LAYER
*
NR_MAX_NB_LAYERS
;
...
...
@@ -207,7 +184,7 @@ bool nr_ue_postDecode(PHY_VARS_NR_UE *phy_vars_ue, notifiedFIFO_elt_t *req, bool
}
else
{
if
(
!
last
)
{
int
nb
=
abortTpoolJob
(
&
(
pool_dl
)
,
req
->
key
);
int
nb
=
abortTpoolJob
(
&
get_nrUE_params
()
->
Tpool
,
req
->
key
);
nb
+=
abortNotifiedFIFOJob
(
nf_p
,
req
->
key
);
LOG_D
(
PHY
,
"downlink segment error %d/%d, aborted %d segments
\n
"
,
rdata
->
segment_r
,
rdata
->
nbSegments
,
nb
);
LOG_D
(
PHY
,
"DLSCH %d in error
\n
"
,
rdata
->
dlsch_id
);
...
...
@@ -606,7 +583,7 @@ uint32_t nr_dlsch_decoding(PHY_VARS_NR_UE *phy_vars_ue,
reset_meas
(
&
rdata
->
ts_deinterleave
);
reset_meas
(
&
rdata
->
ts_rate_unmatch
);
reset_meas
(
&
rdata
->
ts_ldpc_decode
);
pushTpool
(
&
(
pool_dl
)
,
req
);
pushTpool
(
&
get_nrUE_params
()
->
Tpool
,
req
);
nbDecode
++
;
LOG_D
(
PHY
,
"Added a block to decode, in pipe: %d
\n
"
,
nbDecode
);
r_offset
+=
E
;
...
...
@@ -614,7 +591,7 @@ uint32_t nr_dlsch_decoding(PHY_VARS_NR_UE *phy_vars_ue,
//////////////////////////////////////////////////////////////////////////////////////////
}
for
(
r
=
0
;
r
<
nbDecode
;
r
++
)
{
notifiedFIFO_elt_t
*
req
=
pullTpool
(
&
nf
,
&
(
pool_dl
)
);
notifiedFIFO_elt_t
*
req
=
pullTpool
(
&
nf
,
&
get_nrUE_params
()
->
Tpool
);
if
(
req
==
NULL
)
break
;
// Tpool has been stopped
bool
last
=
false
;
...
...
openair1/PHY/defs_gNB.h
View file @
203ac178
...
...
@@ -894,7 +894,6 @@ typedef struct PHY_VARS_gNB_s {
notifiedFIFO_t
resp_RU_tx
;
tpool_t
threadPool
;
int
nbDecode
;
uint8_t
thread_pool_size
;
int
number_of_nr_dlsch_max
;
int
number_of_nr_ulsch_max
;
void
*
scopeData
;
...
...
openair1/SCHED_NR_UE/defs.h
View file @
203ac178
...
...
@@ -126,7 +126,6 @@ void phy_procedures_nrUE_TX(PHY_VARS_NR_UE *ue, UE_nr_rxtx_proc_t *proc, uint8_t
int
phy_procedures_nrUE_RX
(
PHY_VARS_NR_UE
*
ue
,
UE_nr_rxtx_proc_t
*
proc
,
uint8_t
gNB_id
,
uint8_t
dlsch_parallel
,
NR_UE_PDCCH_CONFIG
*
phy_pdcch_config
,
notifiedFIFO_t
*
txFifo
);
...
...
openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
View file @
203ac178
...
...
@@ -1325,7 +1325,6 @@ void *UE_thread_slot1_dl_processing(void *arg) {
int
phy_procedures_nrUE_RX
(
PHY_VARS_NR_UE
*
ue
,
UE_nr_rxtx_proc_t
*
proc
,
uint8_t
gNB_id
,
uint8_t
dlsch_parallel
,
NR_UE_PDCCH_CONFIG
*
phy_pdcch_config
,
notifiedFIFO_t
*
txFifo
)
{
...
...
openair1/SIMULATION/NR_PHY/dlschsim.c
View file @
203ac178
...
...
@@ -48,6 +48,7 @@
#include "openair1/SIMULATION/NR_PHY/nr_unitary_defs.h"
#include "openair1/SIMULATION/NR_PHY/nr_dummy_functions.c"
#include "openair2/LAYER2/NR_MAC_COMMON/nr_mac_common.h"
#include "executables/nr-uesoftmodem.h"
//#define DEBUG_NR_DLSCHSIM
...
...
@@ -74,6 +75,13 @@ openair0_config_t openair0_cfg[MAX_CARDS];
void
init_downlink_harq_status
(
NR_DL_UE_HARQ_t
*
dl_harq
)
{}
nrUE_params_t
nrUE_params
=
{
0
};
nrUE_params_t
*
get_nrUE_params
(
void
)
{
return
&
nrUE_params
;
}
int
main
(
int
argc
,
char
**
argv
)
{
char
c
;
...
...
@@ -345,7 +353,6 @@ int main(int argc, char **argv)
if
(
snr1set
==
0
)
snr1
=
snr0
+
10
;
init_dlsch_tpool
(
dlsch_threads
);
if
(
ouput_vcd
)
vcd_signal_dumper_init
(
"/tmp/openair_dump_nr_dlschsim.vcd"
);
...
...
@@ -364,7 +371,8 @@ int main(int argc, char **argv)
RC
.
gNB
=
(
PHY_VARS_gNB
**
)
malloc
(
sizeof
(
PHY_VARS_gNB
*
));
RC
.
gNB
[
0
]
=
calloc
(
1
,
sizeof
(
PHY_VARS_gNB
));
gNB
=
RC
.
gNB
[
0
];
initTpool
(
gNBthreads
,
&
gNB
->
threadPool
,
true
);
initNamedTpool
(
gNBthreads
,
&
gNB
->
threadPool
,
true
,
"gNB-tpool"
);
initFloatingCoresTpool
(
dlsch_threads
,
&
nrUE_params
.
Tpool
,
false
,
"UE-tpool"
);
//gNB_config = &gNB->gNB_config;
frame_parms
=
&
gNB
->
frame_parms
;
//to be initialized I suppose (maybe not necessary for PBCH)
frame_parms
->
nb_antennas_tx
=
n_tx
;
...
...
openair1/SIMULATION/NR_PHY/dlsim.c
View file @
203ac178
...
...
@@ -73,6 +73,7 @@
#include <executables/softmodem-common.h>
#include <openair3/ocp-gtpu/gtp_itf.h>
#include <executables/nr-uesoftmodem.h>
const
char
*
__asan_default_options
()
{
...
...
@@ -362,12 +363,6 @@ void nr_dlsim_preprocessor(module_id_t module_id,
AssertFatal
(
current_BWP
->
mcsTableIdx
>=
0
&&
current_BWP
->
mcsTableIdx
<=
2
,
"invalid mcsTableIdx %d
\n
"
,
current_BWP
->
mcsTableIdx
);
}
typedef
struct
{
uint64_t
optmask
;
//mask to store boolean config options
uint8_t
nr_dlsch_parallel
;
// number of threads for dlsch decoding, 0 means no parallelization
tpool_t
Tpool
;
// thread pool
}
nrUE_params_t
;
nrUE_params_t
nrUE_params
;
nrUE_params_t
*
get_nrUE_params
(
void
)
{
...
...
@@ -475,7 +470,7 @@ int main(int argc, char **argv)
FILE
*
scg_fd
=
NULL
;
while
((
c
=
getopt
(
argc
,
argv
,
"f:hA:pf:g:i:n:s:S:t:x:y:z:M:N:F:GR:d
PI:L:Ea:b:d
:e:m:w:T:U:q:X:Y"
))
!=
-
1
)
{
while
((
c
=
getopt
(
argc
,
argv
,
"f:hA:pf:g:i:n:s:S:t:x:y:z:M:N:F:GR:d
:PI:L:Ea:b
:e:m:w:T:U:q:X:Y"
))
!=
-
1
)
{
switch
(
c
)
{
case
'f'
:
scg_fd
=
fopen
(
optarg
,
"r"
);
...
...
@@ -642,7 +637,7 @@ int main(int argc, char **argv)
g_rbSize
=
atoi
(
optarg
);
break
;
case
'
D
'
:
case
'
d
'
:
dlsch_threads
=
atoi
(
optarg
);
break
;
...
...
@@ -748,8 +743,6 @@ int main(int argc, char **argv)
if
(
snr1set
==
0
)
snr1
=
snr0
+
10
;
init_dlsch_tpool
(
dlsch_threads
);
RC
.
gNB
=
(
PHY_VARS_gNB
**
)
malloc
(
sizeof
(
PHY_VARS_gNB
*
));
RC
.
gNB
[
0
]
=
(
PHY_VARS_gNB
*
)
malloc
(
sizeof
(
PHY_VARS_gNB
));
...
...
@@ -1001,7 +994,7 @@ int main(int argc, char **argv)
unsigned
char
*
test_input_bit
;
unsigned
int
errors_bit
=
0
;
init
Tpool
(
"N"
,
&
(
nrUE_params
.
Tpool
),
false
);
init
FloatingCoresTpool
(
dlsch_threads
,
&
nrUE_params
.
Tpool
,
false
,
"UE-tpool"
);
test_input_bit
=
(
unsigned
char
*
)
malloc16
(
sizeof
(
unsigned
char
)
*
16
*
68
*
384
);
estimated_output_bit
=
(
unsigned
char
*
)
malloc16
(
sizeof
(
unsigned
char
)
*
16
*
68
*
384
);
...
...
@@ -1042,7 +1035,7 @@ int main(int argc, char **argv)
snrRun
=
0
;
int
n_errs
=
0
;
init
Tpool
(
gNBthreads
,
&
gNB
->
threadPool
,
true
);
init
NamedTpool
(
gNBthreads
,
&
gNB
->
threadPool
,
true
,
"gNB-tpool"
);
initNotifiedFIFO
(
&
gNB
->
L1_tx_free
);
initNotifiedFIFO
(
&
gNB
->
L1_tx_filled
);
initNotifiedFIFO
(
&
gNB
->
L1_tx_out
);
...
...
@@ -1268,7 +1261,6 @@ int main(int argc, char **argv)
phy_procedures_nrUE_RX
(
UE
,
&
UE_proc
,
0
,
dlsch_threads
,
&
phy_pdcch_config
,
NULL
);
...
...
openair1/SIMULATION/NR_PHY/pbchsim.c
View file @
203ac178
...
...
@@ -50,6 +50,7 @@
#include "openair1/SIMULATION/NR_PHY/nr_dummy_functions.c"
#include "openair1/PHY/MODULATION/nr_modulation.h"
#include <executables/softmodem-common.h>
#include <executables/nr-uesoftmodem.h>
//#define DEBUG_NR_PBCHSIM
PHY_VARS_gNB
*
gNB
;
...
...
@@ -72,6 +73,12 @@ softmodem_params_t *get_softmodem_params(void) {
return
&
softmodem_params
;
}
nrUE_params_t
nrUE_params
=
{
0
};
nrUE_params_t
*
get_nrUE_params
(
void
)
{
return
&
nrUE_params
;
}
void
init_downlink_harq_status
(
NR_DL_UE_HARQ_t
*
dl_harq
)
{}
int
nr_ue_pdcch_procedures
(
uint8_t
gNB_id
,
...
...
openair1/SIMULATION/NR_PHY/prachsim.c
View file @
203ac178
...
...
@@ -54,6 +54,7 @@
#include <openair2/RRC/NR_UE/rrc_defs.h>
//#include "openair1/SIMULATION/NR_PHY/nr_dummy_functions.c"
#include <openair3/ocp-gtpu/gtp_itf.h>
#include "executables/nr-uesoftmodem.h"
#define NR_PRACH_DEBUG 1
#define PRACH_WRITE_OUTPUT_DEBUG 1
...
...
@@ -223,12 +224,6 @@ int DU_send_INITIAL_UL_RRC_MESSAGE_TRANSFER(module_id_t module_idP,
return
0
;
}
typedef
struct
{
uint64_t
optmask
;
//mask to store boolean config options
uint8_t
nr_dlsch_parallel
;
// number of threads for dlsch decoding, 0 means no parallelization
tpool_t
Tpool
;
// thread pool
}
nrUE_params_t
;
nrUE_params_t
nrUE_params
;
nrUE_params_t
*
get_nrUE_params
(
void
)
{
...
...
openair1/SIMULATION/NR_PHY/pucchsim.c
View file @
203ac178
...
...
@@ -47,6 +47,7 @@
#include "openair1/SIMULATION/RF/rf.h"
#include "openair1/SIMULATION/NR_PHY/nr_unitary_defs.h"
#include "openair1/SIMULATION/NR_PHY/nr_dummy_functions.c"
#include "executables/nr-uesoftmodem.h"
THREAD_STRUCT
thread_struct
;
PHY_VARS_gNB
*
gNB
;
...
...
@@ -67,6 +68,13 @@ PHY_VARS_NR_UE * PHY_vars_UE_g[1][1]={{NULL}};
void
init_downlink_harq_status
(
NR_DL_UE_HARQ_t
*
dl_harq
)
{}
nrUE_params_t
nrUE_params
=
{
0
};
nrUE_params_t
*
get_nrUE_params
(
void
)
{
return
&
nrUE_params
;
}
int
main
(
int
argc
,
char
**
argv
)
{
char
c
;
...
...
openair1/SIMULATION/NR_PHY/ulschsim.c
View file @
203ac178
...
...
@@ -48,6 +48,7 @@
#include "openair1/SIMULATION/NR_PHY/nr_dummy_functions.c"
#include "common/utils/threadPool/thread-pool.h"
#include "openair2/LAYER2/NR_MAC_COMMON/nr_mac_common.h"
#include "executables/nr-uesoftmodem.h"
//#define DEBUG_NR_ULSCHSIM
...
...
@@ -110,6 +111,13 @@ int nr_postDecode_sim(PHY_VARS_gNB *gNB, notifiedFIFO_elt_t *req) {
ulsch
->
last_iteration_cnt
=
rdata
->
decodeIterations
;
return
0
;
}
nrUE_params_t
nrUE_params
;
nrUE_params_t
*
get_nrUE_params
(
void
)
{
return
&
nrUE_params
;
}
int
main
(
int
argc
,
char
**
argv
)
{
char
c
;
...
...
@@ -388,8 +396,7 @@ int main(int argc, char **argv)
gNB
=
RC
.
gNB
[
0
];
//gNB_config = &gNB->gNB_config;
char
tp_param
[]
=
"n"
;
initTpool
(
tp_param
,
&
gNB
->
threadPool
,
true
);
initTpool
(
"n"
,
&
gNB
->
threadPool
,
true
);
initNotifiedFIFO
(
&
gNB
->
respDecode
);
frame_parms
=
&
gNB
->
frame_parms
;
//to be initialized I suppose (maybe not necessary for PBCH)
frame_parms
->
N_RB_DL
=
N_RB_DL
;
...
...
openair1/SIMULATION/NR_PHY/ulsim.c
View file @
203ac178
...
...
@@ -67,6 +67,7 @@
#include <executables/softmodem-common.h>
#include "PHY/NR_REFSIG/ul_ref_seq_nr.h"
#include <openair3/ocp-gtpu/gtp_itf.h>
#include "executables/nr-uesoftmodem.h"
//#define DEBUG_ULSIM
const
char
*
__asan_default_options
()
...
...
@@ -254,12 +255,6 @@ int nr_derive_key(int alg_type, uint8_t alg_id,
return
0
;
}
typedef
struct
{
uint64_t
optmask
;
//mask to store boolean config options
uint8_t
nr_dlsch_parallel
;
// number of threads for dlsch decoding, 0 means no parallelization
tpool_t
Tpool
;
// thread pool
}
nrUE_params_t
;
void
processSlotTX
(
void
*
arg
)
{}
nrUE_params_t
nrUE_params
;
...
...
@@ -712,18 +707,9 @@ int main(int argc, char **argv)
RC
.
gNB
[
0
]
=
calloc
(
1
,
sizeof
(
PHY_VARS_gNB
));
gNB
=
RC
.
gNB
[
0
];
gNB
->
ofdm_offset_divisor
=
UINT_MAX
;
char
tp_param
[
80
];
if
(
threadCnt
>
0
)
sprintf
(
tp_param
,
"-1"
);
else
tp_param
[
0
]
=
'n'
;
int
s_offset
=
0
;
for
(
int
icpu
=
1
;
icpu
<
threadCnt
;
icpu
++
)
{
sprintf
(
tp_param
+
2
+
s_offset
,
",-1"
);
s_offset
+=
3
;
}
initNotifiedFIFO
(
&
gNB
->
respDecode
);
init
Tpool
(
tp_param
,
&
gNB
->
threadPool
,
false
);
init
FloatingCoresTpool
(
threadCnt
,
&
gNB
->
threadPool
,
false
,
"gNB-tpool"
);
initNotifiedFIFO
(
&
gNB
->
respDecode
);
initNotifiedFIFO
(
&
gNB
->
L1_tx_free
);
initNotifiedFIFO
(
&
gNB
->
L1_tx_filled
);
...
...
openair2/GNB_APP/L1_nr_paramdef.h
View file @
203ac178
...
...
@@ -66,7 +66,7 @@
{CONFIG_STRING_L1_REMOTE_N_PORTC, NULL, 0, uptr:NULL, defintval:50030, TYPE_UINT, 0}, \
{CONFIG_STRING_L1_LOCAL_N_PORTD, NULL, 0, uptr:NULL, defintval:50031, TYPE_UINT, 0}, \
{CONFIG_STRING_L1_REMOTE_N_PORTD, NULL, 0, uptr:NULL, defintval:50031, TYPE_UINT, 0}, \
{CONFIG_STRING_L1_THREAD_POOL_SIZE, "
Maximum number of CPU cores for L1 processing (either max HW CPU cores or this value is used)", 0, uptr:NULL, defintval:4
, TYPE_UINT, 0}, \
{CONFIG_STRING_L1_THREAD_POOL_SIZE, "
thread_pool_size paramter removed, please use --thread-pool", 0, uptr:NULL, defintval:2022
, TYPE_UINT, 0}, \
{CONFIG_STRING_L1_OFDM_OFFSET_DIVISOR, NULL, 0, uptr:NULL, defuintval:8, TYPE_UINT, 0}, \
{CONFIG_STRING_L1_PUCCH0_DTX_THRESHOLD, NULL, 0, uptr:NULL, defintval:100, TYPE_UINT, 0}, \
{CONFIG_STRING_L1_PRACH_DTX_THRESHOLD, NULL, 0, uptr:NULL, defintval:150, TYPE_UINT, 0}, \
...
...
openair2/GNB_APP/gnb_config.c
View file @
203ac178
...
...
@@ -725,8 +725,8 @@ void RCconfig_NR_L1(void) {
memset
(
RC
.
gNB
[
j
],
0
,
sizeof
(
PHY_VARS_gNB
));
RC
.
gNB
[
j
]
->
Mod_id
=
j
;
}
RC
.
gNB
[
j
]
->
thread_pool_size
=
*
(
L1_ParamList
.
paramarray
[
j
][
L1_THREAD_POOL_SIZE
].
uptr
);
AssertFatal
(
*
L1_ParamList
.
paramarray
[
j
][
L1_THREAD_POOL_SIZE
].
uptr
==
2022
,
"thread_pool_size removed, please use --thread-pool
\n
"
);
RC
.
gNB
[
j
]
->
ofdm_offset_divisor
=
*
(
L1_ParamList
.
paramarray
[
j
][
L1_OFDM_OFFSET_DIVISOR
].
uptr
);
RC
.
gNB
[
j
]
->
pucch0_thres
=
*
(
L1_ParamList
.
paramarray
[
j
][
L1_PUCCH0_DTX_THRESHOLD
].
uptr
);
RC
.
gNB
[
j
]
->
prach_thres
=
*
(
L1_ParamList
.
paramarray
[
j
][
L1_PRACH_DTX_THRESHOLD
].
uptr
);
...
...
openair2/LAYER2/MAC/config.c
View file @
203ac178
...
...
@@ -1009,13 +1009,11 @@ int rrc_mac_config_req_eNB(module_id_t Mod_idP,
LOG_I
(
MAC
,
"[eNB %d][CONFIG] LTE_MBSFNAreaConfiguration_r9_t(%p) commonSF_AllocPeriod_r9(%d)
\n
"
,
Mod_idP
,
mbms_AreaConfig
,
RC
.
mac
[
Mod_idP
]
->
common_channels
[
0
].
commonSF_AllocPeriod_r9
);
for
(
i
=
0
;
i
<
mbms_AreaConfig
->
commonSF_Alloc_r9
.
list
.
count
;
i
++
){
RC
.
mac
[
Mod_idP
]
->
common_channels
[
0
].
commonSF_Alloc_r9_mbsfn_SubframeConfig
[
i
]
=
mbms_AreaConfig
->
commonSF_Alloc_r9
.
list
.
array
[
i
];
LOG_I
(
RRC
,
"[eNB %d][CONFIG] MBSFNArea[%d] commonSF_Alloc_r9: radioframeAllocationPeriod(%ldn),radioframeAllocationOffset(%ld), subframeAllocation(%x
,%x,%x
)
\n
"
LOG_I
(
RRC
,
"[eNB %d][CONFIG] MBSFNArea[%d] commonSF_Alloc_r9: radioframeAllocationPeriod(%ldn),radioframeAllocationOffset(%ld), subframeAllocation(%x)
\n
"
,
Mod_idP
,
i
,
RC
.
mac
[
Mod_idP
]
->
common_channels
[
0
].
commonSF_Alloc_r9_mbsfn_SubframeConfig
[
i
]
->
radioframeAllocationPeriod
,
RC
.
mac
[
Mod_idP
]
->
common_channels
[
0
].
commonSF_Alloc_r9_mbsfn_SubframeConfig
[
i
]
->
radioframeAllocationOffset
,
RC
.
mac
[
Mod_idP
]
->
common_channels
[
0
].
commonSF_Alloc_r9_mbsfn_SubframeConfig
[
i
]
->
subframeAllocation
.
choice
.
oneFrame
.
buf
[
0
]
,
RC
.
mac
[
Mod_idP
]
->
common_channels
[
0
].
commonSF_Alloc_r9_mbsfn_SubframeConfig
[
i
]
->
subframeAllocation
.
choice
.
oneFrame
.
buf
[
1
]
,
RC
.
mac
[
Mod_idP
]
->
common_channels
[
0
].
commonSF_Alloc_r9_mbsfn_SubframeConfig
[
i
]
->
subframeAllocation
.
choice
.
oneFrame
.
buf
[
2
]);
,
RC
.
mac
[
Mod_idP
]
->
common_channels
[
0
].
commonSF_Alloc_r9_mbsfn_SubframeConfig
[
i
]
->
subframeAllocation
.
choice
.
oneFrame
.
buf
[
0
]);
}
}
...
...
openair2/RRC/LTE/rrc_UE.c
View file @
203ac178
...
...
@@ -4768,13 +4768,11 @@ void decode_MBSFNAreaConfiguration( module_id_t ue_mod_idP, uint8_t eNB_index, f
// Configure commonSF_Alloc
for
(
i
=
0
;
i
<
UE_rrc_inst
[
ue_mod_idP
].
mcch_message
[
eNB_index
]
->
commonSF_Alloc_r9
.
list
.
count
;
i
++
)
{
LOG_W
(
RRC
,
"[UE %d] Frame %d, commonSF_Alloc_r9: radioframeAllocationPeriod(%ldn),radioframeAllocationOffset(%ld), subframeAllocation(%x
,%x,%x
)
\n
"
,
LOG_W
(
RRC
,
"[UE %d] Frame %d, commonSF_Alloc_r9: radioframeAllocationPeriod(%ldn),radioframeAllocationOffset(%ld), subframeAllocation(%x)
\n
"
,
ue_mod_idP
,
frameP
,
UE_rrc_inst
[
ue_mod_idP
].
mcch_message
[
eNB_index
]
->
commonSF_Alloc_r9
.
list
.
array
[
i
]
->
radioframeAllocationPeriod
<<
1
,
UE_rrc_inst
[
ue_mod_idP
].
mcch_message
[
eNB_index
]
->
commonSF_Alloc_r9
.
list
.
array
[
i
]
->
radioframeAllocationOffset
,
UE_rrc_inst
[
ue_mod_idP
].
mcch_message
[
eNB_index
]
->
commonSF_Alloc_r9
.
list
.
array
[
i
]
->
subframeAllocation
.
choice
.
oneFrame
.
buf
[
0
],
UE_rrc_inst
[
ue_mod_idP
].
mcch_message
[
eNB_index
]
->
commonSF_Alloc_r9
.
list
.
array
[
i
]
->
subframeAllocation
.
choice
.
oneFrame
.
buf
[
1
],
UE_rrc_inst
[
ue_mod_idP
].
mcch_message
[
eNB_index
]
->
commonSF_Alloc_r9
.
list
.
array
[
i
]
->
subframeAllocation
.
choice
.
oneFrame
.
buf
[
2
]);
UE_rrc_inst
[
ue_mod_idP
].
mcch_message
[
eNB_index
]
->
commonSF_Alloc_r9
.
list
.
array
[
i
]
->
subframeAllocation
.
choice
.
oneFrame
.
buf
[
0
]);
UE_mac_inst
[
ue_mod_idP
].
commonSF_Alloc_r9_mbsfn_SubframeConfig
[
i
]
=
UE_rrc_inst
[
ue_mod_idP
].
mcch_message
[
eNB_index
]
->
commonSF_Alloc_r9
.
list
.
array
[
i
];
}
...
...
openair3/NAS/UE/nas_ue_task.c
View file @
203ac178
...
...
@@ -86,7 +86,6 @@ void nas_user_api_id_initialize(nas_user_t *user) {
void
*
nas_ue_task
(
void
*
args_p
)
{
int
nb_events
;
struct
epoll_event
*
events
;
MessageDef
*
msg_p
;
instance_t
instance
;
unsigned
int
Mod_id
;
...
...
@@ -306,8 +305,8 @@ void *nas_ue_task(void *args_p)
AssertFatal
(
result
==
EXIT_SUCCESS
,
"Failed to free memory (%d)!
\n
"
,
result
);
msg_p
=
NULL
;
}
nb_events
=
itti_get_events
(
TASK_NAS_UE
,
&
events
);
struct
epoll_event
events
[
20
];
nb_events
=
itti_get_events
(
TASK_NAS_UE
,
events
,
20
);
if
((
nb_events
>
0
)
&&
(
events
!=
NULL
))
{
if
(
nas_ue_process_events
(
users
,
events
,
nb_events
)
==
true
)
{
...
...
openair3/SCTP/sctp_eNB_task.c
View file @
203ac178
...
...
@@ -216,7 +216,7 @@ sctp_eNB_accept_associations_multi(
}
//------------------------------------------------------------------------------
void
static
void
sctp_handle_new_association_req_multi
(
const
instance_t
instance
,
const
task_id_t
requestor
,
...
...
@@ -355,7 +355,7 @@ sctp_handle_new_association_req_multi(
}
//------------------------------------------------------------------------------
void
static
void
sctp_handle_new_association_req
(
const
instance_t
instance
,
const
task_id_t
requestor
,
...
...
@@ -617,7 +617,7 @@ sctp_handle_new_association_req(
}
//------------------------------------------------------------------------------
void
sctp_send_data
(
static
void
sctp_send_data
(
instance_t
instance
,
task_id_t
task_id
,
sctp_data_req_t
*
sctp_data_req_p
)
...
...
@@ -1058,16 +1058,12 @@ sctp_eNB_read_from_socket(
//------------------------------------------------------------------------------
void
sctp_eNB_flush_sockets
(
s
tatic
s
ctp_eNB_flush_sockets
(
struct
epoll_event
*
events
,
int
nb_events
)
{
int
i
;
struct
sctp_cnx_list_elm_s
*
sctp_cnx
=
NULL
;
if
(
events
==
NULL
)
{
return
;
}
for
(
i
=
0
;
i
<
nb_events
;
i
++
)
{
sctp_cnx
=
sctp_get_cnx
(
-
1
,
events
[
i
].
data
.
fd
);
...
...
@@ -1090,7 +1086,7 @@ sctp_eNB_flush_sockets(
}
//------------------------------------------------------------------------------
void
sctp_eNB_init
(
void
)
static
void
sctp_eNB_init
(
void
)
{
SCTP_DEBUG
(
"Starting SCTP layer
\n
"
);
...
...
@@ -1100,10 +1096,9 @@ void sctp_eNB_init(void)
}
//------------------------------------------------------------------------------
void
*
sctp_eNB_process_itti_msg
(
void
*
notUsed
)
static
void
sctp_eNB_process_itti_msg
(
)
{
int
nb_events
;
struct
epoll_event
*
events
;
MessageDef
*
received_msg
=
NULL
;
int
result
;
...
...
@@ -1184,12 +1179,12 @@ void *sctp_eNB_process_itti_msg(void *notUsed)
AssertFatal
(
result
==
EXIT_SUCCESS
,
"Failed to free memory (%d)!
\n
"
,
result
);
received_msg
=
NULL
;
}
nb_events
=
itti_get_events
(
TASK_SCTP
,
&
events
);
struct
epoll_event
events
[
20
];
nb_events
=
itti_get_events
(
TASK_SCTP
,
events
,
20
);
/* Now handle notifications for other sockets */
sctp_eNB_flush_sockets
(
events
,
nb_events
);
return
NULL
;
return
;
}
//------------------------------------------------------------------------------
...
...
@@ -1198,7 +1193,7 @@ void *sctp_eNB_task(void *arg)
sctp_eNB_init
();
while
(
1
)
{
(
void
)
sctp_eNB_process_itti_msg
(
NULL
);
sctp_eNB_process_itti_msg
(
);
}
return
NULL
;
...
...
openair3/SCTP/sctp_eNB_task.h
View file @
203ac178
...
...
@@ -22,8 +22,6 @@
#ifndef SCTP_ENB_TASK_H_
#define SCTP_ENB_TASK_H_
void
sctp_eNB_init
(
void
);
void
*
sctp_eNB_process_itti_msg
(
void
*
);
void
*
sctp_eNB_task
(
void
*
arg
);
#endif
/* SCTP_ENB_TASK_H_ */
openair3/ocp-gtpu/gtp_itf.cpp
View file @
203ac178
...
...
@@ -1278,9 +1278,8 @@ void *gtpv1uTask(void *args) {
AssertFatal
(
EXIT_SUCCESS
==
itti_free
(
TASK_GTPV1_U
,
message_p
),
"Failed to free memory!
\n
"
);
}
struct
epoll_event
*
events
;
int
nb_events
=
itti_get_events
(
TASK_GTPV1_U
,
&
events
);
struct
epoll_event
events
[
20
];
int
nb_events
=
itti_get_events
(
TASK_GTPV1_U
,
events
,
20
);
for
(
int
i
=
0
;
i
<
nb_events
;
i
++
)
if
((
events
[
i
].
events
&
EPOLLIN
))
...
...
targets/PROJECTS/GENERIC-LTE-EPC/CONF/benetel-5g.conf
View file @
203ac178
...
...
@@ -216,7 +216,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
}
);
...
...
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band257.tm1.32PRB.usrpn300.conf
View file @
203ac178
...
...
@@ -210,7 +210,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
ofdm_offset_divisor
=
8
;
#set this to UINT_MAX for offset 0
}
);
...
...
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band257.tm1.32PRB.usrpx300.conf
View file @
203ac178
...
...
@@ -196,7 +196,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
ofdm_offset_divisor
=
8
;
#set this to UINT_MAX for offset 0
}
);
...
...
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band257.tm1.66PRB.usrpn300.conf
View file @
203ac178
...
...
@@ -192,7 +192,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
ofdm_offset_divisor
=
8
;
#set this to UINT_MAX for offset 0
}
);
...
...
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band261.tm1.32PRB.usrpn300.conf
View file @
203ac178
...
...
@@ -210,7 +210,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
ofdm_offset_divisor
=
8
;
#set this to UINT_MAX for offset 0
}
);
...
...
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band66.tm1.106PRB.usrpn300.conf
View file @
203ac178
...
...
@@ -194,7 +194,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
ofdm_offset_divisor
=
8
;
#set this to UINT_MAX for offset 0
}
);
...
...
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band66.tm1.106PRB.usrpx300.conf
View file @
203ac178
...
...
@@ -193,7 +193,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
ofdm_offset_divisor
=
8
;
#set this to UINT_MAX for offset 0
}
);
...
...
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band66.tm1.25PRB.usrpn300.conf
View file @
203ac178
...
...
@@ -193,7 +193,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
ofdm_offset_divisor
=
8
;
#set this to UINT_MAX for offset 0
}
);
...
...
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.106PRB.slave.conf
View file @
203ac178
...
...
@@ -209,7 +209,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
ofdm_offset_divisor
=
8
;
#set this to UINT_MAX for offset 0
}
);
...
...
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.106PRB.PTRS.usrpx300.conf
View file @
203ac178
...
...
@@ -241,7 +241,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
ofdm_offset_divisor
=
8
;
#set this to UINT_MAX for offset 0
}
);
...
...
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.106PRB.usrpb210.conf
View file @
203ac178
...
...
@@ -192,7 +192,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
ofdm_offset_divisor
=
8
;
#set this to UINT_MAX for offset 0
}
);
...
...
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.106PRB.usrpn300.conf
View file @
203ac178
...
...
@@ -191,7 +191,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
max_ldpc_iterations
=
5
;
ofdm_offset_divisor
=
8
;
#set this to UINT_MAX for offset 0
}
...
...
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.106PRB.usrpx300.conf
View file @
203ac178
...
...
@@ -191,7 +191,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
ofdm_offset_divisor
=
8
;
#set this to UINT_MAX for offset 0
}
);
...
...
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.217PRB.usrpn300.conf
View file @
203ac178
...
...
@@ -208,7 +208,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
ofdm_offset_divisor
=
8
;
#set this to UINT_MAX for offset 0
}
);
...
...
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.217PRB.usrpx300.conf
View file @
203ac178
...
...
@@ -193,7 +193,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
ofdm_offset_divisor
=
8
;
#set this to UINT_MAX for offset 0
}
);
...
...
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.24PRB.usrpb210.conf
View file @
203ac178
...
...
@@ -192,7 +192,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
ofdm_offset_divisor
=
8
;
#set this to UINT_MAX for offset 0
}
);
...
...
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.24PRB.usrpn300.conf
View file @
203ac178
...
...
@@ -192,7 +192,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
ofdm_offset_divisor
=
8
;
#set this to UINT_MAX for offset 0
}
);
...
...
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.24PRB.usrpx300.conf
View file @
203ac178
...
...
@@ -192,7 +192,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
ofdm_offset_divisor
=
8
;
#set this to UINT_MAX for offset 0
}
);
...
...
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.273PRB.usrpn300.conf
View file @
203ac178
...
...
@@ -193,7 +193,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
ofdm_offset_divisor
=
8
;
#set this to UINT_MAX for offset 0
}
);
...
...
targets/PROJECTS/GENERIC-LTE-EPC/CONF/oaiL1.nfapi.usrpx300.conf
View file @
203ac178
...
...
@@ -21,7 +21,6 @@ L1s = (
remote_n_portc
=
50001
; //
vnf
p5
port
local_n_portd
=
50010
; //
pnf
p7
port
remote_n_portd
=
50011
; //
vnf
p7
port
thread_pool_size
=
8
;
}
);
...
...
targets/PROJECTS/GENERIC-LTE-EPC/CONF/testing_gnb.conf
View file @
203ac178
...
...
@@ -209,7 +209,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
ofdm_offset_divisor
=
8
;
#set this to UINT_MAX for offset 0
}
);
...
...
targets/PROJECTS/GENERIC-LTE-EPC/CONF/testing_gnb_24PRB.conf
View file @
203ac178
...
...
@@ -210,7 +210,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
ofdm_offset_divisor
=
8
;
#set this to UINT_MAX for offset 0
}
);
...
...
targets/PROJECTS/GENERIC-LTE-EPC/CONF/testing_gnb_nsa_n310.conf
View file @
203ac178
...
...
@@ -210,7 +210,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
}
);
...
...
targets/PROJECTS/GENERIC-NR-5GC/CONF/du_gnb.conf
View file @
203ac178
...
...
@@ -204,7 +204,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
prach_dtx_threshold
=
120
;
pucch0_dtx_threshold
=
150
;
ofdm_offset_divisor
=
8
;
#set this to UINT_MAX for offset 0
...
...
targets/PROJECTS/GENERIC-NR-5GC/CONF/gnb.sa.band78.fr1.106PRB.usrpb210.sabox.conf
View file @
203ac178
...
...
@@ -225,7 +225,6 @@ L1s = (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
thread_pool_size
=
8
;
}
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment