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
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
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
OpenXG
OpenXG-RAN
Commits
77f70e77
Commit
77f70e77
authored
Aug 24, 2018
by
frtabu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
MSC logging utility as a config option
parent
24f8fcf3
Changes
18
Hide whitespace changes
Inline
Side-by-side
Showing
18 changed files
with
123 additions
and
78 deletions
+123
-78
cmake_targets/CMakeLists.txt
cmake_targets/CMakeLists.txt
+8
-11
cmake_targets/build_oai
cmake_targets/build_oai
+18
-1
cmake_targets/nas_sim_tools/CMakeLists.txt
cmake_targets/nas_sim_tools/CMakeLists.txt
+0
-1
common/utils/LOG/log.c
common/utils/LOG/log.c
+3
-2
common/utils/load_module_shlib.c
common/utils/load_module_shlib.c
+2
-2
common/utils/load_module_shlib.h
common/utils/load_module_shlib.h
+3
-2
common/utils/msc/msc.c
common/utils/msc/msc.c
+24
-7
common/utils/msc/msc.h
common/utils/msc/msc.h
+29
-18
openair1/PHY/CODING/coding_load.c
openair1/PHY/CODING/coding_load.c
+1
-1
openair1/SCHED/phy_procedures_lte_eNb.c
openair1/SCHED/phy_procedures_lte_eNb.c
+6
-6
openair2/ENB_APP/NB_IoT_interface.c
openair2/ENB_APP/NB_IoT_interface.c
+1
-1
openair2/LAYER2/PDCP_v10.1.0/pdcp_fifo.c
openair2/LAYER2/PDCP_v10.1.0/pdcp_fifo.c
+6
-6
openair3/S1AP/s1ap_eNB_handlers.c
openair3/S1AP/s1ap_eNB_handlers.c
+1
-1
openair3/S1AP/s1ap_eNB_nas_procedures.c
openair3/S1AP/s1ap_eNB_nas_procedures.c
+3
-10
targets/ARCH/COMMON/common_lib.c
targets/ARCH/COMMON/common_lib.c
+1
-1
targets/RT/USER/lte-softmodem.c
targets/RT/USER/lte-softmodem.c
+8
-5
targets/RT/USER/lte-softmodem.h
targets/RT/USER/lte-softmodem.h
+2
-0
targets/RT/USER/lte-uesoftmodem.c
targets/RT/USER/lte-uesoftmodem.c
+7
-3
No files found.
cmake_targets/CMakeLists.txt
View file @
77f70e77
...
...
@@ -882,12 +882,9 @@ add_library(HASHTABLE
)
include_directories
(
${
OPENAIR_DIR
}
/common/utils/hashtable
)
if
(
MESSAGE_CHART_GENERATOR
)
add_library
(
MSC
${
OPENAIR_DIR
}
/common/utils/msc/msc.c
)
set
(
MSC_LIB MSC
)
endif
()
add_library
(
msc MODULE
${
OPENAIR_DIR
}
/common/utils/msc/msc.c
)
target_link_libraries
(
msc LFDS
)
include_directories
(
${
OPENAIR_DIR
}
/common/utils/msc
)
set
(
UTIL_SRC
...
...
@@ -1936,7 +1933,7 @@ add_executable(lte-softmodem
target_link_libraries
(
lte-softmodem
-Wl,--start-group
RRC_LIB S1AP_LIB S1AP_ENB GTPV1U SECU_CN SECU_OSA UTIL HASHTABLE SCTP_CLIENT UDP SCHED_LIB SCHED_RU_LIB PHY_COMMON PHY PHY_RU LFDS L2
${
MSC_LIB
}
${
RAL_LIB
}
${
NAS_UE_LIB
}
${
ITTI_LIB
}
${
FLPT_MSG_LIB
}
${
ASYNC_IF_LIB
}
${
FLEXRAN_AGENT_LIB
}
LFDS7
${
RAL_LIB
}
${
NAS_UE_LIB
}
${
ITTI_LIB
}
${
FLPT_MSG_LIB
}
${
ASYNC_IF_LIB
}
${
FLEXRAN_AGENT_LIB
}
LFDS7
NFAPI_COMMON_LIB NFAPI_LIB NFAPI_VNF_LIB NFAPI_PNF_LIB NFAPI_USER_LIB
-Wl,--end-group z dl
)
...
...
@@ -1972,7 +1969,7 @@ add_executable(lte-softmodem-nos1
)
target_link_libraries
(
lte-softmodem-nos1
-Wl,--start-group
RRC_LIB SECU_CN SECU_OSA UTIL HASHTABLE SCHED_LIB SCHED_RU_LIB PHY_COMMON PHY PHY_RU LFDS L2
${
MSC_LIB
}
${
RAL_LIB
}
${
ITTI_LIB
}
RRC_LIB SECU_CN SECU_OSA UTIL HASHTABLE SCHED_LIB SCHED_RU_LIB PHY_COMMON PHY PHY_RU LFDS L2
${
RAL_LIB
}
${
ITTI_LIB
}
${
MIH_LIB
}
${
FLPT_MSG_LIB
}
${
ASYNC_IF_LIB
}
${
FLEXRAN_AGENT_LIB
}
LFDS7
NFAPI_COMMON_LIB NFAPI_LIB NFAPI_VNF_LIB NFAPI_PNF_LIB NFAPI_USER_LIB
-Wl,--end-group z dl
)
...
...
@@ -2012,7 +2009,7 @@ add_executable(lte-uesoftmodem
target_link_libraries
(
lte-uesoftmodem
-Wl,--start-group
RRC_LIB S1AP_LIB S1AP_ENB GTPV1U SECU_CN SECU_OSA UTIL HASHTABLE SCTP_CLIENT UDP SCHED_RU_LIB SCHED_UE_LIB PHY_COMMON PHY_UE PHY_RU LFDS L2_UE SIMU
${
MSC_LIB
}
${
RAL_LIB
}
${
NAS_UE_LIB
}
${
ITTI_LIB
}
${
FLPT_MSG_LIB
}
${
ASYNC_IF_LIB
}
LFDS7
${
ATLAS_LIBRARIES
}
${
RAL_LIB
}
${
NAS_UE_LIB
}
${
ITTI_LIB
}
${
FLPT_MSG_LIB
}
${
ASYNC_IF_LIB
}
LFDS7
${
ATLAS_LIBRARIES
}
NFAPI_COMMON_LIB NFAPI_LIB NFAPI_PNF_LIB NFAPI_USER_LIB
-Wl,--end-group z dl
)
...
...
@@ -2050,7 +2047,7 @@ add_executable(lte-uesoftmodem-nos1
target_link_libraries
(
lte-uesoftmodem-nos1
-Wl,--start-group
RRC_LIB SECU_CN SECU_OSA UTIL HASHTABLE SCHED_RU_LIB SCHED_UE_LIB PHY_COMMON PHY_UE PHY_RU LFDS L2_UE SIMU
${
MSC_LIB
}
${
RAL_LIB
}
${
ITTI_LIB
}
RRC_LIB SECU_CN SECU_OSA UTIL HASHTABLE SCHED_RU_LIB SCHED_UE_LIB PHY_COMMON PHY_UE PHY_RU LFDS L2_UE SIMU
${
RAL_LIB
}
${
ITTI_LIB
}
${
MIH_LIB
}
${
FLPT_MSG_LIB
}
${
ASYNC_IF_LIB
}
LFDS7
${
ATLAS_LIBRARIES
}
NFAPI_COMMON_LIB NFAPI_LIB NFAPI_PNF_LIB NFAPI_USER_LIB
-Wl,--end-group z dl
)
...
...
@@ -2128,7 +2125,7 @@ add_executable(test_epc_generate_scenario
${
OPENAIR3_DIR
}
/S1AP/s1ap_eNB_defs.h
)
target_link_libraries
(
test_epc_generate_scenario
-Wl,--start-group RRC_LIB S1AP_LIB S1AP_ENB X2AP_LIB GTPV1U LIB_NAS_UE SECU_CN UTIL HASHTABLE SCTP_CLIENT UDP SCHED_LIB PHY LFDS
${
ITTI_LIB
}
${
MSC_LIB
}
L2 -Wl,--end-group pthread m rt crypt sctp
${
LIBXML2_LIBRARIES
}
${
LIBXSLT_LIBRARIES
}
${
CRYPTO_LIBRARIES
}
${
OPENSSL_LIBRARIES
}
${
NETTLE_LIBRARIES
}
${
CONFIG_LIBRARIES
}
-Wl,--start-group RRC_LIB S1AP_LIB S1AP_ENB X2AP_LIB GTPV1U LIB_NAS_UE SECU_CN UTIL HASHTABLE SCTP_CLIENT UDP SCHED_LIB PHY LFDS
${
ITTI_LIB
}
L2 -Wl,--end-group pthread m rt crypt sctp
${
LIBXML2_LIBRARIES
}
${
LIBXSLT_LIBRARIES
}
${
CRYPTO_LIBRARIES
}
${
OPENSSL_LIBRARIES
}
${
NETTLE_LIBRARIES
}
${
CONFIG_LIBRARIES
}
)
add_executable
(
test_epc_play_scenario
...
...
cmake_targets/build_oai
View file @
77f70e77
...
...
@@ -40,7 +40,7 @@ set_openair_env
gen_nvram_path
=
$OPENAIR_DIR
/targets/bin
conf_nvram_path
=
$OPENAIR_DIR
/openair3/NAS/TOOLS/ue_eurecom_test_sfr.conf
MSC_GEN
=
"False"
MSC_GEN
=
0
XFORMS
=
"True"
UE_EXPANSION
=
"False"
PRINT_STATS
=
"False"
...
...
@@ -155,6 +155,10 @@ Options
Disable all LOG_* macros
--build-eclipse
Build eclipse project files. Paths are auto corrected by fixprj.sh
--build-telnet
Build telnet server, specify --telnetsrv on command line to start it (eNB only)
--build-msc
Build MSC tracing utility, specify --msc on command line to start it (eNB and UE)
--usrp-recplay
Build for I/Q record-playback modes
--ue-nas-use-tun
...
...
@@ -345,6 +349,10 @@ function main() {
--build-telnetsrv
)
BUILD_TELNETSRV
=
1
echo_info
"Build embedded telnet server"
shift
;;
--build-msc
)
MSC_GEN
=
1
echo_info
"Build MSC tracing utility"
shift
;;
--usrp-recplay
)
USRP_REC_PLAY
=
"True"
...
...
@@ -690,6 +698,15 @@ function main() {
$build_dir
telnetsrv
\
libtelnetsrv.so
$dbin
/libtelnetsrv.so
fi
# Telnet server compilation
#####################
if
[
"
$MSC_GEN
"
=
"1"
]
;
then
build_dir
=
$lte_build_dir
compilations
\
$build_dir
msc
\
libmsc.so
$dbin
/libmsc.so
fi
# build RF device and transport protocol libraries
#####################################
...
...
cmake_targets/nas_sim_tools/CMakeLists.txt
View file @
77f70e77
...
...
@@ -27,7 +27,6 @@ set(CONF2UEDATA_LIB_SRC
${
OPENAIR_DIR
}
/openair3/NAS/UE/API/USIM/usim_api.c
${
OPENAIR_DIR
}
/openair3/NAS/UE/API/USIM/aka_functions.c
${
OPENAIR_DIR
}
/openair3/NAS/COMMON/UTIL/memory.c
${
OPENAIR_DIR
}
/openair3/NAS/COMMON/UTIL/nas_log.c
${
OPENAIR_DIR
}
/openair3/NAS/COMMON/UTIL/OctetString.c
${
OPENAIR_DIR
}
/openair3/NAS/COMMON/UTIL/TLVEncoder.c
${
OPENAIR_DIR
}
/common/utils/utils.c
...
...
common/utils/LOG/log.c
View file @
77f70e77
...
...
@@ -455,13 +455,14 @@ int rt = pthread_getname_np(pthread_self(), threadname,bufsize) ;
int
inline
log_header
(
char
*
log_buffer
,
int
buffsize
,
int
comp
,
int
level
,
const
char
*
format
)
{
char
threadname
[
PR_SET_NAME
];
return
snprintf
(
log_buffer
,
buffsize
,
"%s%s[%s]%c %s %s"
,
return
snprintf
(
log_buffer
,
buffsize
,
"%s%s[%s]%c %s %s
%s
"
,
log_level_highlight_end
[
level
],
(
(
g_log
->
flag
&
FLAG_NOCOLOR
)
?
""
:
log_level_highlight_start
[
level
]),
g_log
->
log_component
[
comp
].
name
,
(
(
g_log
->
flag
&
FLAG_LEVEL
)
?
g_log
->
level2string
[
level
]
:
' '
),
(
(
g_log
->
flag
&
FLAG_THREAD
)
?
log_getthreadname
(
threadname
,
PR_SET_NAME
+
1
)
:
""
),
format
);
format
,
log_level_highlight_end
[
level
]);
}
void
logRecord_mt
(
const
char
*
file
,
const
char
*
func
,
int
line
,
int
comp
,
int
level
,
const
char
*
format
,
...
)
...
...
common/utils/load_module_shlib.c
View file @
77f70e77
...
...
@@ -118,7 +118,7 @@ int ret;
return
tmpstr
;
}
int
load_module_shlib
(
char
*
modname
,
loader_shlibfunc_t
*
farray
,
int
numf
)
int
load_module_shlib
(
char
*
modname
,
loader_shlibfunc_t
*
farray
,
int
numf
,
void
*
autoinit_arg
)
{
void
*
lib_handle
;
initfunc_t
fpi
;
...
...
@@ -155,7 +155,7 @@ int load_module_shlib(char *modname,loader_shlibfunc_t *farray, int numf)
fpi
=
dlsym
(
lib_handle
,
afname
);
if
(
fpi
!=
NULL
)
{
fpi
();
fpi
(
autoinit_arg
);
}
if
(
farray
!=
NULL
)
{
...
...
common/utils/load_module_shlib.h
View file @
77f70e77
...
...
@@ -59,7 +59,8 @@ typedef struct {
/* function type of functions which may be implemented by a module */
/* 1: init function, called when loading, if found in the shared lib */
typedef
int
(
*
initfunc_t
)(
void
);
typedef
int
(
*
initfunc_t
)(
void
*
);
/* 2: version checking function, called when loading, if it returns -1, trigger main exec abort */
typedef
int
(
*
checkverfunc_t
)(
char
*
mainexec_version
,
char
**
shlib_version
);
/* 3: get function array function, called when loading when a module doesn't provide */
...
...
@@ -83,7 +84,7 @@ loader_data_t loader_data;
/*-------------------------------------------------------------------------------------------------------------*/
#else
/* LOAD_MODULE_SHLIB_MAIN */
extern
int
load_module_shlib
(
char
*
modname
,
loader_shlibfunc_t
*
farray
,
int
numf
);
extern
int
load_module_shlib
(
char
*
modname
,
loader_shlibfunc_t
*
farray
,
int
numf
,
void
*
initfunc_arg
);
extern
void
*
get_shlibmodule_fptr
(
char
*
modname
,
char
*
fname
);
extern
loader_data_t
loader_data
;
#endif
/* LOAD_MODULE_SHLIB_MAIN */
...
...
common/utils/msc/msc.c
View file @
77f70e77
...
...
@@ -32,11 +32,15 @@
#include <stdint.h>
#include <inttypes.h>
#define MSC_LIBRARY
#include "msc.h"
#include "liblfds611.h"
#include "intertask_interface.h"
#include "timer.h"
#include "msc.h"
#include "assertions.h"
//-------------------------------
...
...
@@ -67,8 +71,8 @@ void *msc_task(void *args_p)
//------------------------------------------------------------------------------
{
MessageDef
*
received_message_p
=
NULL
;
const
char
*
msg_name
=
NULL
;
instance_t
instance
=
0
;
//
const char *msg_name = NULL;
//
instance_t instance = 0;
long
timer_id
;
itti_mark_task_ready
(
TASK_MSC
);
...
...
@@ -88,9 +92,9 @@ void *msc_task(void *args_p)
itti_receive_msg
(
TASK_MSC
,
&
received_message_p
);
if
(
received_message_p
!=
NULL
)
{
msg_name
=
ITTI_MSG_NAME
(
received_message_p
);
instance
=
ITTI_MSG_INSTANCE
(
received_message_p
);
//
msg_name = ITTI_MSG_NAME (received_message_p);
//
instance = ITTI_MSG_INSTANCE (received_message_p);
switch
(
ITTI_MSG_ID
(
received_message_p
))
{
case
TIMER_HAS_EXPIRED
:
{
...
...
@@ -571,4 +575,17 @@ error_event:
free
(
new_item_p
);
}
//------------------------------------------------------------------------------
// function called when oai loader loads the msc shared lib
int
msc_autoinit
(
msc_interface_t
*
msc_interface
)
//------------------------------------------------------------------------------
{
msc_interface
->
msc_init
=
msc_init
;
msc_interface
->
msc_start_use
=
msc_start_use
;
msc_interface
->
msc_end
=
msc_end
;
msc_interface
->
msc_log_event
=
msc_log_event
;
msc_interface
->
msc_log_message
=
msc_log_message
;
msc_interface
->
msc_loaded
=
1
;
return
0
;
}
common/utils/msc/msc.h
View file @
77f70e77
...
...
@@ -73,7 +73,23 @@ typedef enum {
#define MSC_AS_TIME_ARGS(CTXT_Pp) \
(CTXT_Pp)->frame, \
(CTXT_Pp)->subframe
#if defined(MESSAGE_CHART_GENERATOR)
typedef
int
(
*
msc_init_t
)(
const
msc_env_t
,
const
int
);
typedef
void
(
*
msc_start_use_t
)(
void
);
typedef
void
(
*
msc_end_t
)(
void
);
typedef
void
(
*
msc_log_event_t
)(
const
msc_proto_t
,
char
*
,
...);
typedef
void
(
*
msc_log_message_t
)(
const
char
*
const
,
const
msc_proto_t
,
const
msc_proto_t
,
const
uint8_t
*
const
,
const
unsigned
int
,
char
*
,
...);
typedef
struct
msc_interface
{
int
msc_loaded
;
msc_init_t
msc_init
;
msc_start_use_t
msc_start_use
;
msc_end_t
msc_end
;
msc_log_event_t
msc_log_event
;
msc_log_message_t
msc_log_message
;
}
msc_interface_t
;
#ifdef MSC_LIBRARY
int
msc_init
(
const
msc_env_t
envP
,
const
int
max_threadsP
);
void
msc_start_use
(
void
);
void
msc_flush_messages
(
void
);
...
...
@@ -88,22 +104,17 @@ void msc_log_message(
const
unsigned
int
num_bytes
,
char
*
format
,
...);
#define MSC_INIT(arg1,arg2) msc_init(arg1,arg2)
#define MSC_START_USE msc_start_use
#define MSC_END msc_end
#define MSC_LOG_EVENT(mScPaRaMs, fORMAT, aRGS...) msc_log_event(mScPaRaMs, fORMAT, ##aRGS)
#define MSC_LOG_RX_MESSAGE(rECEIVER, sENDER, bYTES, nUMbYTES, fORMAT, aRGS...) msc_log_message("<-",rECEIVER, sENDER, bYTES, nUMbYTES, fORMAT, ##aRGS)
#define MSC_LOG_RX_DISCARDED_MESSAGE(rECEIVER, sENDER, bYTES, nUMbYTES, fORMAT, aRGS...) msc_log_message("x-",rECEIVER, sENDER, bYTES, nUMbYTES, fORMAT, ##aRGS)
#define MSC_LOG_TX_MESSAGE(sENDER, rECEIVER, bYTES, nUMbYTES, fORMAT, aRGS...) msc_log_message("->",sENDER, rECEIVER, bYTES, nUMbYTES, fORMAT, ##aRGS)
#define MSC_LOG_TX_MESSAGE_FAILED(sENDER, rECEIVER, bYTES, nUMbYTES, fORMAT, aRGS...) msc_log_message("-x",sENDER, rECEIVER, bYTES, nUMbYTES, fORMAT, ##aRGS)
#else
#define MSC_INIT(arg1,arg2)
#define MSC_START_USE(mScPaRaMs)
#define MSC_END(mScPaRaMs)
#define MSC_LOG_EVENT(mScPaRaMs, fORMAT, aRGS...)
#define MSC_LOG_RX_MESSAGE(mScPaRaMs, fORMAT, aRGS...)
#define MSC_LOG_RX_DISCARDED_MESSAGE(mScPaRaMs, fORMAT, aRGS...)
#define MSC_LOG_TX_MESSAGE(mScPaRaMs, fORMAT, aRGS...)
#define MSC_LOG_TX_MESSAGE_FAILED(mScPaRaMs, fORMAT, aRGS...)
#endif
msc_interface_t
msc_interface
;
#define MSC_INIT(arg1,arg2) if(msc_interface.msc_loaded) msc_interface.msc_init(arg1,arg2)
#define MSC_START_USE if(msc_interface.msc_loaded) msc_interface.msc_start_use
#define MSC_END if(msc_interface.msc_loaded) msc_interface.msc_end
#define MSC_LOG_EVENT(mScPaRaMs, fORMAT, aRGS...) if(msc_interface.msc_loaded) msc_interface.msc_log_event(mScPaRaMs, fORMAT, ##aRGS)
#define MSC_LOG_RX_MESSAGE(rECEIVER, sENDER, bYTES, nUMbYTES, fORMAT, aRGS...) if(msc_interface.msc_loaded) msc_interface.msc_log_message("<-",rECEIVER, sENDER, (const uint8_t *)bYTES, nUMbYTES, fORMAT, ##aRGS)
#define MSC_LOG_RX_DISCARDED_MESSAGE(rECEIVER, sENDER, bYTES, nUMbYTES, fORMAT, aRGS...) if(msc_interface.msc_loaded) msc_interface.msc_log_message("x-",rECEIVER, sENDER, (const uint8_t *)bYTES, nUMbYTES, fORMAT, ##aRGS)
#define MSC_LOG_TX_MESSAGE(sENDER, rECEIVER, bYTES, nUMbYTES, fORMAT, aRGS...) if(msc_interface.msc_loaded) msc_interface.msc_log_message("->",sENDER, rECEIVER, (const uint8_t *)bYTES, nUMbYTES, fORMAT, ##aRGS)
#define MSC_LOG_TX_MESSAGE_FAILED(sENDER, rECEIVER, bYTES, nUMbYTES, fORMAT, aRGS...) if(msc_interface.msc_loaded) msc_interface.msc_log_message("-x",sENDER, rECEIVER, (const uint8_t *)bYTES, nUMbYTES, fORMAT, ##aRGS)
#endif
#endif
openair1/PHY/CODING/coding_load.c
View file @
77f70e77
...
...
@@ -130,7 +130,7 @@ int load_codinglib(void) {
shlib_fdesc
[
ENCODE_SSE_FPTRIDX
].
fname
=
"threegpplte_turbo_encoder_sse"
;
shlib_fdesc
[
ENCODE_C_FPTRIDX
].
fname
=
"threegpplte_turbo_encoder"
;
shlib_fdesc
[
ENCODE_INIT_SSE_FPTRIDX
].
fname
=
"init_encoder_sse"
;
ret
=
load_module_shlib
(
"coding"
,
shlib_fdesc
,
DECODE_NUM_FPTR
);
ret
=
load_module_shlib
(
"coding"
,
shlib_fdesc
,
DECODE_NUM_FPTR
,
NULL
);
if
(
ret
<
0
)
exit_fun
(
"Error loading coding library"
);
/* execute encoder/decoder init functions */
...
...
openair1/SCHED/phy_procedures_lte_eNb.c
View file @
77f70e77
...
...
@@ -347,7 +347,7 @@ void pdsch_procedures(PHY_VARS_eNB *eNB,
dlsch_harq
->
rvidx
,
dlsch_harq
->
round
);
}
#if defined(MESSAGE_CHART_GENERATOR_PHY)
MSC_LOG_TX_MESSAGE
(
MSC_PHY_ENB
,
MSC_PHY_UE
,
NULL
,
0
,
...
...
@@ -368,7 +368,7 @@ void pdsch_procedures(PHY_VARS_eNB *eNB,
pmi2hex_2Ar1
(
dlsch_harq
->
pmi_alloc
),
dlsch_harq
->
rvidx
,
dlsch_harq
->
round
);
#endif
if
(
ue_stats
)
ue_stats
->
dlsch_sliding_cnt
++
;
...
...
@@ -1375,7 +1375,7 @@ void pusch_procedures(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc)
ulsch
->
harq_mask
&=
~
(
1
<<
harq_pid
);
ulsch_harq
->
round
=
0
;
}
#if defined(MESSAGE_CHART_GENERATOR_PHY)
MSC_LOG_RX_DISCARDED_MESSAGE
(
MSC_PHY_ENB
,
MSC_PHY_UE
,
NULL
,
0
,
...
...
@@ -1384,7 +1384,7 @@ void pusch_procedures(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc)
ulsch
->
rnti
,
harq_pid
,
ulsch_harq
->
round
-
1
);
#endif
/* Mark the HARQ process to release it later if max transmission reached
* (see below).
...
...
@@ -1403,7 +1403,7 @@ void pusch_procedures(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc)
T
(
T_ENB_PHY_ULSCH_UE_ACK
,
T_INT
(
eNB
->
Mod_id
),
T_INT
(
frame
),
T_INT
(
subframe
),
T_INT
(
ulsch
->
rnti
),
T_INT
(
harq_pid
));
#if defined(MESSAGE_CHART_GENERATOR_PHY)
MSC_LOG_RX_MESSAGE
(
MSC_PHY_ENB
,
MSC_PHY_UE
,
NULL
,
0
,
...
...
@@ -1411,7 +1411,7 @@ void pusch_procedures(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc)
frame
,
subframe
,
ulsch
->
rnti
,
harq_pid
);
#endif
#ifdef DEBUG_PHY_PROC
#ifdef DEBUG_ULSCH
...
...
openair2/ENB_APP/NB_IoT_interface.c
View file @
77f70e77
...
...
@@ -43,7 +43,7 @@ int load_NB_IoT(void) {
RCConfig_NbIoT_f_t
RCConfig
;
loader_shlibfunc_t
shlib_fdesc
[]
=
NBIOT_INTERFACE_FLIST
;
ret
=
load_module_shlib
(
NBIOT_MODULENAME
,
shlib_fdesc
,
sizeof
(
shlib_fdesc
)
/
sizeof
(
loader_shlibfunc_t
));
ret
=
load_module_shlib
(
NBIOT_MODULENAME
,
shlib_fdesc
,
sizeof
(
shlib_fdesc
)
/
sizeof
(
loader_shlibfunc_t
)
,
NULL
);
if
(
ret
)
{
return
ret
;
}
...
...
openair2/LAYER2/PDCP_v10.1.0/pdcp_fifo.c
View file @
77f70e77
...
...
@@ -760,10 +760,10 @@ int pdcp_fifo_read_input_sdus (const protocol_ctxt_t* const ctxt_pP)
0
,
MSC_AS_TIME_FMT
" DATA-REQ inst %u rb %u rab %u size %u"
,
MSC_AS_TIME_ARGS
(
ctxt_pP
),
pc5s_header
.
inst
,
pc5s_header
.
rb_id
,
pc5s_header
->
inst
,
pc5s_header
->
rb_id
,
rab_id
,
pc5s_header
.
data_size
);
pc5s_header
->
data_size
);
pdcp_data_req
(
&
ctxt
,
...
...
@@ -787,10 +787,10 @@ int pdcp_fifo_read_input_sdus (const protocol_ctxt_t* const ctxt_pP)
0
,
MSC_AS_TIME_FMT
" DATA-REQ inst %u rb %u rab %u size %u"
,
MSC_AS_TIME_ARGS
(
ctxt_pP
),
pc5s_header
.
inst
,
pc5s_header
.
rb_id
,
pc5s_header
->
inst
,
pc5s_header
->
rb_id
,
rab_id
,
pc5s_header
.
data_size
);
pc5s_header
->
data_size
);
LOG_D
(
PDCP
,
"[FRAME %5u][UE][IP][INSTANCE %u][RB %u][--- PDCP_DATA_REQ / %d Bytes ---X][PDCP][MOD %u][UE %u][RB %u] NON INSTANCIATED INSTANCE key 0x%"
PRIx64
", DROPPED
\n
"
,
ctxt
.
frame
,
...
...
openair3/S1AP/s1ap_eNB_handlers.c
View file @
77f70e77
...
...
@@ -1043,7 +1043,7 @@ int s1ap_eNB_handle_paging(uint32_t assoc_id,
/* Paging procedure -> stream != 0 */
if
(
stream
==
0
)
{
S1AP_ERROR
(
"[SCTP %d] Received Paging procedure on stream (%d)
\n
"
,
LOG_W
(
S1AP
,
"[SCTP %d] Received Paging procedure on stream (%d)
\n
"
,
assoc_id
,
stream
);
return
-
1
;
}
...
...
openair3/S1AP/s1ap_eNB_nas_procedures.c
View file @
77f70e77
...
...
@@ -473,17 +473,11 @@ int s1ap_eNB_handle_nas_downlink(uint32_t assoc_id,
MSC_LOG_RX_DISCARDED_MESSAGE
(
MSC_S1AP_ENB
,
MSC_S1AP_MME
,
(
const
char
*
)
NULL
,
NULL
,
0
,
MSC_AS_TIME_FMT
" downlinkNASTransport eNB_ue_s1ap_id %u mme_ue_s1ap_id %u"
,
0
,
0
,
//MSC_AS_TIME_ARGS(ctxt_pP),
enb_ue_s1ap_id
,
mme_ue_s1ap_id
);
/* TODO: fix this log - the original version is suspicious (twice downlink_NAS_transport_p->eNB_UE_S1AP_ID?) */
/*S1AP_ERROR("[SCTP %d] Received NAS downlink message for non existing UE context eNB_UE_S1AP_ID: 0x%"PRIx32" %u\n",
assoc_id,
downlink_NAS_transport_p->eNB_UE_S1AP_ID,
downlink_NAS_transport_p->eNB_UE_S1AP_ID);*/
S1AP_ERROR
(
"[SCTP %d] Received NAS downlink message for non existing UE context eNB_UE_S1AP_ID: 0x%lx
\n
"
,
assoc_id
,
enb_ue_s1ap_id
);
...
...
@@ -518,11 +512,10 @@ int s1ap_eNB_handle_nas_downlink(uint32_t assoc_id,
MSC_LOG_RX_MESSAGE
(
MSC_S1AP_ENB
,
MSC_S1AP_MME
,
(
const
char
*
)
NULL
,
NULL
,
0
,
MSC_AS_TIME_FMT
" downlinkNASTransport eNB_ue_s1ap_id %u mme_ue_s1ap_id %u"
,
0
,
0
,
//MSC_AS_TIME_ARGS(ctxt_pP),
enb_ue_s1ap_id
,
assoc_id
,
mme_ue_s1ap_id
);
S1AP_FIND_PROTOCOLIE_BY_ID
(
S1AP_DownlinkNASTransport_IEs_t
,
ie
,
container
,
...
...
targets/ARCH/COMMON/common_lib.c
View file @
77f70e77
...
...
@@ -100,7 +100,7 @@ int load_lib(openair0_device *device, openair0_config_t *openair0_cfg, eth_param
libname
=
OAI_TP_LIBNAME
;
shlib_fdesc
[
0
].
fname
=
"transport_init"
;
}
ret
=
load_module_shlib
(
libname
,
shlib_fdesc
,
1
);
ret
=
load_module_shlib
(
libname
,
shlib_fdesc
,
1
,
NULL
);
if
(
ret
<
0
)
{
fprintf
(
stderr
,
"Library %s couldn't be loaded
\n
"
,
libname
);
}
else
{
...
...
targets/RT/USER/lte-softmodem.c
View file @
77f70e77
...
...
@@ -514,7 +514,7 @@ void *l2l1_task(void *arg) {
#endif
static
void
get_options
(
void
)
{
static
void
get_options
(
unsigned
int
*
start_msc
)
{
int
tddflag
,
nonbiotflag
;
...
...
@@ -548,11 +548,9 @@ static void get_options(void) {
set_glog
(
glog_level
);
}
if
(
start_telnetsrv
)
{
load_module_shlib
(
"telnetsrv"
,
NULL
,
0
);
load_module_shlib
(
"telnetsrv"
,
NULL
,
0
,
NULL
);
}
if
(
!
(
CONFIG_ISFLAGSET
(
CONFIG_ABORT
))
)
{
memset
((
void
*
)
&
RC
,
0
,
sizeof
(
RC
));
/* Read RC configuration file */
...
...
@@ -925,6 +923,7 @@ int main( int argc, char **argv )
#if defined (XFORMS)
int
ret
;
#endif
unsigned
int
start_msc
=
0
;
if
(
load_configmodule
(
argc
,
argv
)
==
NULL
)
{
exit_fun
(
"[SOFTMODEM] Error, configuration module init failed
\n
"
);
...
...
@@ -942,7 +941,7 @@ int main( int argc, char **argv )
printf
(
"Reading in command-line options
\n
"
);
get_options
();
get_options
(
&
start_msc
);
if
(
CONFIG_ISFLAGSET
(
CONFIG_ABORT
)
)
{
fprintf
(
stderr
,
"Getting configuration failed
\n
"
);
exit
(
-
1
);
...
...
@@ -968,9 +967,13 @@ int main( int argc, char **argv )
#if defined(ENABLE_ITTI)
printf
(
"ITTI init, useMME: %i
\n
"
,
EPC_MODE_ENABLED
);
itti_init
(
TASK_MAX
,
THREAD_MAX
,
MESSAGES_ID_MAX
,
tasks_info
,
messages_info
);
// initialize mscgen log after ITTI
if
(
start_msc
)
{
load_module_shlib
(
"msc"
,
NULL
,
0
,
&
msc_interface
);
}
MSC_INIT
(
MSC_E_UTRAN
,
THREAD_MAX
+
TASK_MAX
);
#endif
...
...
targets/RT/USER/lte-softmodem.h
View file @
77f70e77
...
...
@@ -194,6 +194,7 @@
#define CONFIG_HLP_FLOG "Enable online log \n"
#define CONFIG_HLP_LOGL "Set the global log level, valide options: (4:trace, 3:debug, 2:info, 1:warn, (0:error))\n"
#define CONFIG_HLP_TELN "Start embedded telnet server \n"
#define CONFIG_HLP_MSC "Enable the MSC tracing utility \n"
/*---------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
/* command line parameters for LOG utility */
/* optname helpstr paramflags XXXptr defXXXval type numelt */
...
...
@@ -202,6 +203,7 @@
{"R" , CONFIG_HLP_FLOG, 0, uptr:&online_log_messages, defintval:1, TYPE_INT, 0}, \
{"g" , CONFIG_HLP_LOGL, 0, uptr:&glog_level, defintval:0, TYPE_UINT, 0}, \
{"telnetsrv", CONFIG_HLP_TELN, PARAMFLAG_BOOL, uptr:&start_telnetsrv, defintval:0, TYPE_UINT, 0}, \
{"msc", CONFIG_HLP_MSC, PARAMFLAG_BOOL, uptr:start_msc, defintval:0, TYPE_UINT, 0}, \
}
#define CMDLINE_ONLINELOG_IDX 0
#define CMDLINE_GLOGLEVEL_IDX 1
...
...
targets/RT/USER/lte-uesoftmodem.c
View file @
77f70e77
...
...
@@ -470,7 +470,7 @@ void *l2l1_task(void *arg) {
extern
int16_t
dlsch_demod_shift
;
static
void
get_options
(
void
)
{
static
void
get_options
(
unsigned
int
*
start_msc
)
{
int
CC_id
;
int
tddflag
,
nonbiotflag
;
char
*
loopfile
=
NULL
;
...
...
@@ -505,7 +505,7 @@ static void get_options(void) {
set_glog
(
glog_level
);
}
if
(
start_telnetsrv
)
{
load_module_shlib
(
"telnetsrv"
,
NULL
,
0
);
load_module_shlib
(
"telnetsrv"
,
NULL
,
0
,
NULL
);
}
paramdef_t
cmdline_uemodeparams
[]
=
CMDLINE_UEMODEPARAMS_DESC
;
...
...
@@ -770,6 +770,7 @@ int main( int argc, char **argv )
int
CC_id
;
uint8_t
abstraction_flag
=
0
;
unsigned
int
start_msc
=
0
;
// Default value for the number of UEs. It will hold,
// if not changed from the command line option --num-ues
...
...
@@ -797,7 +798,7 @@ int main( int argc, char **argv )
printf
(
"Reading in command-line options
\n
"
);
for
(
int
i
=
0
;
i
<
MAX_NUM_CCs
;
i
++
)
tx_max_power
[
i
]
=
23
;
get_options
();
get_options
(
&
start_msc
);
printf
(
"Running with %d UE instances
\n
"
,
NB_UE_INST
);
...
...
@@ -843,6 +844,9 @@ int main( int argc, char **argv )
itti_init
(
TASK_MAX
,
THREAD_MAX
,
MESSAGES_ID_MAX
,
tasks_info
,
messages_info
);
// initialize mscgen log after ITTI
if
(
start_msc
)
{
load_module_shlib
(
"msc"
,
NULL
,
0
,
&
msc_interface
);
}
MSC_INIT
(
MSC_E_UTRAN
,
THREAD_MAX
+
TASK_MAX
);
#endif
...
...
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