Remove MSC library, it is not used anywhere
This commit is contained in:
@@ -114,7 +114,6 @@ MME :
|
||||
MME_APP_LOG_LEVEL = "TRACE";
|
||||
S6A_LOG_LEVEL = "TRACE";
|
||||
UTIL_LOG_LEVEL = "ERROR";
|
||||
MSC_LOG_LEVEL = "ERROR";
|
||||
ITTI_LOG_LEVEL = "ERROR";
|
||||
ASN1_VERBOSITY = "annoying";
|
||||
};
|
||||
|
||||
@@ -121,7 +121,6 @@ MME :
|
||||
S11_LOG_LEVEL = "DEBUG";
|
||||
S6A_LOG_LEVEL = "DEBUG";
|
||||
UTIL_LOG_LEVEL = "INFO";
|
||||
MSC_LOG_LEVEL = "ERROR";
|
||||
ITTI_LOG_LEVEL = "ERROR";
|
||||
MME_SCENARIO_PLAYER_LOG_LEVEL = "ERROR";
|
||||
ASN1_VERBOSITY = "INFO";
|
||||
|
||||
@@ -938,10 +938,6 @@ add_boolean_option(CPU_AFFINITY False "Enable CPU Affinity of threads (only vali
|
||||
add_boolean_option(NAS_NETLINK False "useless ??? Must be True to compile nasmesh driver without rtai ????")
|
||||
add_boolean_option(OAI_NW_DRIVER_USE_NETLINK True "????")
|
||||
|
||||
add_boolean_option(MESSAGE_CHART_GENERATOR False "For generating sequence diagrams")
|
||||
add_boolean_option(MESSAGE_CHART_GENERATOR_RLC_MAC False "trace RLC-MAC exchanges in sequence diagrams")
|
||||
add_boolean_option(MESSAGE_CHART_GENERATOR_PHY False "trace some PHY exchanges in sequence diagrams")
|
||||
|
||||
add_boolean_option(UE_EXPANSION False "enable UE_EXPANSION with max 256 UE")
|
||||
add_boolean_option(PHY_TX_THREAD False "enable UE_EXPANSION with max 256 UE")
|
||||
add_boolean_option(PRE_SCD_THREAD False "enable UE_EXPANSION with max 256 UE")
|
||||
@@ -1301,11 +1297,6 @@ add_library(HASHTABLE
|
||||
)
|
||||
include_directories(${OPENAIR_DIR}/common/utils/hashtable)
|
||||
|
||||
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
|
||||
# ${OPENAIR2_DIR}/UTIL/CLI/cli.c
|
||||
# ${OPENAIR2_DIR}/UTIL/CLI/cli_cmd.c
|
||||
@@ -2807,7 +2798,7 @@ target_link_libraries (lte-softmodem
|
||||
-Wl,--start-group
|
||||
RRC_LIB NR_RRC_LIB S1AP_LIB S1AP_ENB M2AP_LIB M2AP_ENB X2AP_LIB X2AP_ENB M3AP_LIB M3AP_ENB GTPV1U_OCP F1AP_LIB F1AP SECU_CN SECU_OSA UTIL HASHTABLE SCTP_CLIENT MME_APP UDP SCHED_LIB SCHED_RU_LIB
|
||||
PHY_COMMON PHY PHY_RU LFDS L2 L2_LTE NFAPI_COMMON_LIB NFAPI_LIB NFAPI_VNF_LIB NFAPI_PNF_LIB NFAPI_USER_LIB MISC_NFAPI_LTE_LIB LFDS7
|
||||
${MSC_LIB} ${RAL_LIB} ${NAS_UE_LIB} ITTI ${FLPT_MSG_LIB} ${ASYNC_IF_LIB} ${FLEXRAN_AGENT_LIB} ${FSPT_MSG_LIB} ${PROTO_AGENT_LIB}
|
||||
${RAL_LIB} ${NAS_UE_LIB} ITTI ${FLPT_MSG_LIB} ${ASYNC_IF_LIB} ${FLEXRAN_AGENT_LIB} ${FSPT_MSG_LIB} ${PROTO_AGENT_LIB}
|
||||
-Wl,--end-group z dl)
|
||||
|
||||
target_link_libraries (lte-softmodem ${LIBXML2_LIBRARIES})
|
||||
@@ -2851,7 +2842,7 @@ target_link_libraries (ocp-enb
|
||||
|
||||
RRC_LIB NR_RRC_LIB S1AP_LIB S1AP_ENB F1AP_LIB F1AP M2AP_LIB M2AP_ENB X2AP_LIB X2AP_ENB M3AP_LIB M3AP_ENB GTPV1U_OCP SECU_CN SECU_OSA UTIL HASHTABLE SCTP_CLIENT MME_APP UDP SCHED_LIB SCHED_RU_LIB
|
||||
PHY_COMMON PHY PHY_RU LFDS L2 L2_LTE NFAPI_COMMON_LIB NFAPI_LIB MISC_NFAPI_LTE_LIB NFAPI_VNF_LIB NFAPI_PNF_LIB NFAPI_USER_LIB LFDS7 SIMU_COMMON
|
||||
${MSC_LIB} ${RAL_LIB} ${NAS_UE_LIB} ITTI ${FLPT_MSG_LIB} ${ASYNC_IF_LIB} ${FLEXRAN_AGENT_LIB} ${FSPT_MSG_LIB} ${PROTO_AGENT_LIB}
|
||||
${RAL_LIB} ${NAS_UE_LIB} ITTI ${FLPT_MSG_LIB} ${ASYNC_IF_LIB} ${FLEXRAN_AGENT_LIB} ${FSPT_MSG_LIB} ${PROTO_AGENT_LIB}
|
||||
-Wl,--end-group z dl)
|
||||
target_link_libraries (ocp-enb ${LIBXML2_LIBRARIES} pthread m ${CONFIG_LIBRARIES} rt crypt ${CRYPTO_LIBRARIES} ${OPENSSL_LIBRARIES} sctp ${PROTOBUF_LIB} ${CMAKE_DL_LIBS} ${LIBYAML_LIBRARIES} ${LIB_LMS_LIBRARIES} ${T_LIB})
|
||||
|
||||
@@ -2945,7 +2936,7 @@ target_link_libraries (lte-uesoftmodem
|
||||
RRC_LIB NR_RRC_LIB S1AP_LIB S1AP_ENB X2AP_LIB X2AP_ENB M2AP_LIB M2AP_ENB M3AP_LIB M3AP_ENB
|
||||
SECU_CN SECU_OSA UTIL HASHTABLE SCTP_CLIENT MME_APP UDP SCHED_RU_LIB SCHED_UE_LIB PHY_COMMON
|
||||
PHY_UE PHY_RU LFDS L2_UE L2_LTE LFDS7 SIMU_COMMON SIMU NFAPI_COMMON_LIB NFAPI_LIB NFAPI_PNF_LIB NFAPI_USER_LIB MISC_NFAPI_LTE_LIB
|
||||
${MSC_LIB} ${RAL_LIB} ${NAS_UE_LIB} ITTI ${FLPT_MSG_LIB} ${ASYNC_IF_LIB} ${ATLAS_LIBRARIES}
|
||||
${RAL_LIB} ${NAS_UE_LIB} ITTI ${FLPT_MSG_LIB} ${ASYNC_IF_LIB} ${ATLAS_LIBRARIES}
|
||||
-Wl,--end-group z dl)
|
||||
|
||||
target_link_libraries (lte-uesoftmodem ${LIBXML2_LIBRARIES})
|
||||
@@ -2989,7 +2980,7 @@ target_compile_definitions(nr-softmodem PUBLIC NEW_GTPU)
|
||||
target_link_libraries (nr-softmodem
|
||||
-Wl,--start-group
|
||||
UTIL HASHTABLE SCTP_CLIENT UDP SCHED_LIB SCHED_RU_LIB SCHED_NR_LIB PHY_NR PHY PHY_COMMON PHY_NR_COMMON PHY_RU LFDS GTPV1U_OCP SECU_CN SECU_OSA
|
||||
ITTI ${FLPT_MSG_LIB} ${ASYNC_IF_LIB} ${FLEXRAN_AGENT_LIB} LFDS7 ${MSC_LIB} ${RAL_LIB} ${NAS_UE_LIB} RRC_LIB NR_RRC_LIB
|
||||
ITTI ${FLPT_MSG_LIB} ${ASYNC_IF_LIB} ${FLEXRAN_AGENT_LIB} LFDS7 ${RAL_LIB} ${NAS_UE_LIB} RRC_LIB NR_RRC_LIB
|
||||
NGAP_LIB NGAP_GNB S1AP_LIB S1AP_ENB L2_LTE_NR L2_NR MAC_NR_COMMON NFAPI_COMMON_LIB NFAPI_LIB NFAPI_VNF_LIB NFAPI_PNF_LIB NFAPI_USER_LIB
|
||||
X2AP_LIB X2AP_ENB F1AP_LIB F1AP M2AP_LIB M2AP_ENB M3AP_LIB M3AP_ENB ${PROTO_AGENT_LIB} ${FSPT_MSG_LIB}
|
||||
-Wl,--end-group z dl)
|
||||
@@ -3029,7 +3020,7 @@ add_executable(ocp-gnb
|
||||
target_link_libraries (ocp-gnb
|
||||
-Wl,--start-group
|
||||
UTIL HASHTABLE SCTP_CLIENT UDP SCHED_LIB SCHED_RU_LIB SCHED_NR_LIB PHY_NR PHY PHY_COMMON PHY_NR_COMMON PHY_RU LFDS GTPV1U_OCP SECU_CN SECU_OSA
|
||||
ITTI ${FLPT_MSG_LIB} ${ASYNC_IF_LIB} LFDS7 ${MSC_LIB} ${RAL_LIB} ${NAS_UE_LIB} RRC_LIB NR_RRC_LIB
|
||||
ITTI ${FLPT_MSG_LIB} ${ASYNC_IF_LIB} LFDS7 ${RAL_LIB} ${NAS_UE_LIB} RRC_LIB NR_RRC_LIB
|
||||
NGAP_LIB NGAP_GNB S1AP_LIB S1AP_ENB L2_LTE_NR L2_NR MAC_NR_COMMON NFAPI_COMMON_LIB NFAPI_LIB NFAPI_VNF_LIB NFAPI_PNF_LIB NFAPI_USER_LIB
|
||||
X2AP_LIB X2AP_ENB F1AP_LIB F1AP M2AP_LIB M2AP_ENB M3AP_LIB M3AP_ENB SIMU_COMMON
|
||||
-Wl,--end-group z dl)
|
||||
@@ -3075,9 +3066,9 @@ target_link_libraries (nr-uesoftmodem
|
||||
RRC_LIB NR_RRC_LIB NGAP_LIB NGAP_GNB SECU_CN SECU_OSA UTIL HASHTABLE SCTP_CLIENT UDP SCHED_RU_LIB SCHED_UE_LIB SCHED_NR_UE_LIB
|
||||
PHY_COMMON PHY_NR_COMMON PHY_UE PHY_NR_UE PHY_RU LFDS NR_L2_UE L2_UE_LTE_NR MAC_NR_COMMON NFAPI_COMMON_LIB NFAPI_LIB NFAPI_PNF_LIB
|
||||
NFAPI_USER_LIB MISC_NFAPI_NR_LIB S1AP_LIB S1AP_ENB
|
||||
${MSC_LIB} ${RAL_LIB} ${NAS_UE_LIB} ITTI ${FLPT_MSG_LIB} ${ASYNC_IF_LIB} LFDS7 ${ATLAS_LIBRARIES}
|
||||
${RAL_LIB} ${NAS_UE_LIB} ITTI ${FLPT_MSG_LIB} ${ASYNC_IF_LIB} LFDS7 ${ATLAS_LIBRARIES}
|
||||
NFAPI_USER_LIB S1AP_LIB S1AP_ENB
|
||||
${MSC_LIB} ${RAL_LIB} ${NAS_UE_LIB} ITTI ${FLPT_MSG_LIB} ${ASYNC_IF_LIB} LFDS7 ${ATLAS_LIBRARIES} LIB_5GNAS_GNB LIB_NAS_SIMUE ${NAS_SIM_LIB}
|
||||
${RAL_LIB} ${NAS_UE_LIB} ITTI ${FLPT_MSG_LIB} ${ASYNC_IF_LIB} LFDS7 ${ATLAS_LIBRARIES} LIB_5GNAS_GNB LIB_NAS_SIMUE ${NAS_SIM_LIB}
|
||||
-Wl,--end-group z dl)
|
||||
|
||||
target_link_libraries (nr-uesoftmodem ${LIBXML2_LIBRARIES})
|
||||
@@ -3326,7 +3317,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 X2AP_ENB M2AP_LIB M2AP_ENB M3AP_LIB M3AP_ENB F1AP_LIB F1AP GTPV1U_OCP LIB_NAS_UE SECU_CN UTIL HASHTABLE SCTP_CLIENT MME_APP UDP SCHED_LIB PHY LFDS ITTI ${MSC_LIB} L2 -Wl,--end-group pthread m rt crypt sctp ${LIBXML2_LIBRARIES} ${LIBXSLT_LIBRARIES} ${CRYPTO_LIBRARIES} ${OPENSSL_LIBRARIES} ${CONFIG_LIB}
|
||||
-Wl,--start-group RRC_LIB S1AP_LIB S1AP_ENB X2AP_LIB X2AP_ENB M2AP_LIB M2AP_ENB M3AP_LIB M3AP_ENB F1AP_LIB F1AP GTPV1U_OCP LIB_NAS_UE SECU_CN UTIL HASHTABLE SCTP_CLIENT MME_APP UDP SCHED_LIB PHY LFDS ITTI L2 -Wl,--end-group pthread m rt crypt sctp ${LIBXML2_LIBRARIES} ${LIBXSLT_LIBRARIES} ${CRYPTO_LIBRARIES} ${OPENSSL_LIBRARIES} ${CONFIG_LIB}
|
||||
)
|
||||
|
||||
add_executable(test_epc_play_scenario
|
||||
@@ -3345,7 +3336,7 @@ add_executable(test_epc_play_scenario
|
||||
)
|
||||
target_include_directories(test_epc_play_scenario PUBLIC /usr/local/share/asn1c)
|
||||
target_link_libraries (test_epc_play_scenario
|
||||
-Wl,--start-group RRC_LIB S1AP_LIB X2AP_LIB X2AP_ENB M3AP_LIB M3AP_ENB F1AP_LIB F1AP GTPV1U_OCP LIB_NAS_UE SECU_CN UTIL HASHTABLE SCTP_CLIENT MME_APP UDP SCHED_LIB PHY_NR_COMMON PHY_COMMON PHY PHY_UE LFDS ITTI ${MSC_LIB} -Wl,--end-group pthread m rt crypt sctp ${LIBXML2_LIBRARIES} ${LIBXSLT_LIBRARIES} ${CRYPTO_LIBRARIES} ${OPENSSL_LIBRARIES} ${CONFIG_LIB}
|
||||
-Wl,--start-group RRC_LIB S1AP_LIB X2AP_LIB X2AP_ENB M3AP_LIB M3AP_ENB F1AP_LIB F1AP GTPV1U_OCP LIB_NAS_UE SECU_CN UTIL HASHTABLE SCTP_CLIENT MME_APP UDP SCHED_LIB PHY_NR_COMMON PHY_COMMON PHY PHY_UE LFDS ITTI -Wl,--end-group pthread m rt crypt sctp ${LIBXML2_LIBRARIES} ${LIBXSLT_LIBRARIES} ${CRYPTO_LIBRARIES} ${OPENSSL_LIBRARIES} ${CONFIG_LIB}
|
||||
)
|
||||
|
||||
|
||||
@@ -3386,7 +3377,7 @@ if (${T_TRACER})
|
||||
ITTI RRC_LIB NR_RRC_LIB S1AP_LIB S1AP_ENB X2AP_LIB X2AP_ENB M2AP_LIB M2AP_ENB M3AP_LIB M3AP_ENB F1AP_LIB F1AP
|
||||
params_libconfig oai_exmimodevif oai_usrpdevif oai_bladerfdevif oai_lmssdrdevif oai_iqplayer
|
||||
oai_eth_transpro oai_mobipass tcp_bridge tcp_bridge_oai
|
||||
coding FLPT_MSG ASYNC_IF FLEXRAN_AGENT HASHTABLE MSC UTIL OMG_SUMO
|
||||
coding FLPT_MSG ASYNC_IF FLEXRAN_AGENT HASHTABLE UTIL OMG_SUMO
|
||||
SECU_OSA SECU_CN SCHED_LIB SCHED_NR_LIB SCHED_RU_LIB SCHED_UE_LIB SCHED_NR_UE_LIB default_sched remote_sched RAL
|
||||
NFAPI_COMMON_LIB NFAPI_LIB NFAPI_PNF_LIB NFAPI_VNF_LIB NFAPI_USER_LIB
|
||||
PHY_COMMON PHY PHY_UE PHY_NR PHY_NR_COMMON PHY_NR_UE PHY_RU PHY_MEX
|
||||
@@ -3501,7 +3492,7 @@ target_compile_definitions(nr-ittisim PUBLIC NEW_GTPU)
|
||||
target_link_libraries (nr-ittisim
|
||||
-Wl,--start-group
|
||||
UTIL HASHTABLE SCTP_CLIENT UDP SCHED_LIB SCHED_RU_LIB SCHED_NR_LIB PHY_NR PHY PHY_COMMON PHY_NR_COMMON PHY_RU LFDS GTPV1U_OCP SECU_CN SECU_OSA
|
||||
ITTI ${FLPT_MSG_LIB} ${ASYNC_IF_LIB} ${FLEXRAN_AGENT_LIB} LFDS7 ${MSC_LIB} ${RAL_LIB} ${NAS_SIM_LIB} RRC_LIB NR_RRC_LIB
|
||||
ITTI ${FLPT_MSG_LIB} ${ASYNC_IF_LIB} ${FLEXRAN_AGENT_LIB} LFDS7 ${RAL_LIB} ${NAS_SIM_LIB} RRC_LIB NR_RRC_LIB
|
||||
NGAP_LIB NGAP_GNB S1AP_LIB S1AP_ENB L2_LTE_NR L2_NR MAC_NR_COMMON NFAPI_COMMON_LIB NFAPI_LIB NFAPI_VNF_LIB NFAPI_PNF_LIB NFAPI_USER_LIB
|
||||
X2AP_LIB X2AP_ENB F1AP_LIB F1AP M2AP_LIB M2AP_ENB M3AP_LIB M3AP_ENB ${PROTO_AGENT_LIB} ${FSPT_MSG_LIB}
|
||||
PHY_NR_UE SCHED_NR_UE_LIB NR_L2_UE
|
||||
|
||||
@@ -409,7 +409,6 @@ set(emm_HDR
|
||||
add_library(emm ${emm_SRC} ${emm_HDR})
|
||||
|
||||
target_include_directories(emm PRIVATE
|
||||
${OPENAIR_DIR}/common/utils/msc
|
||||
${OPENAIR_DIR}/common/utils
|
||||
${OPENAIR_DIR}/openair2/COMMON
|
||||
${OPENAIR_NAS_DIR}/UE
|
||||
@@ -693,7 +692,6 @@ include_directories(
|
||||
${OPENAIR_TARGETS}/COMMON
|
||||
${OPENAIR_NAS_DIR}/UE
|
||||
${OPENAIR_DIR}/common/utils
|
||||
${OPENAIR_DIR}/common/utils/msc
|
||||
${OPENAIR3_DIR}/COMMON
|
||||
${OPENAIR3_DIR}/SECU
|
||||
${OPENAIR_NAS_DIR}/src
|
||||
|
||||
@@ -67,7 +67,7 @@ BUILD_ECLIPSE=0
|
||||
NR="False"
|
||||
ITTI_SIM="False"
|
||||
SANITIZE_ADDRESS="False"
|
||||
OPTIONAL_LIBRARIES="telnetsrv enbscope uescope nrscope msc"
|
||||
OPTIONAL_LIBRARIES="telnetsrv enbscope uescope nrscope"
|
||||
RU=0
|
||||
trap handle_ctrl_c INT
|
||||
|
||||
|
||||
@@ -26,7 +26,6 @@ set ( LOG_NO_THREAD True )
|
||||
set ( DEADLINE_SCHEDULER False )
|
||||
set ( MAC_CONTEXT 1 )
|
||||
set ( MAX_NUM_CCs 1 )
|
||||
set ( MESSAGE_CHART_GENERATOR False)
|
||||
set ( MSG_PRINT False )
|
||||
set ( MU_RECEIVER False )
|
||||
set ( NAS_ADDRESS_FIX False )
|
||||
|
||||
@@ -410,7 +410,6 @@ check_install_ubuntu_packages() {
|
||||
libxml2 \
|
||||
libxml2-dev \
|
||||
libxslt1-dev \
|
||||
mscgen \
|
||||
octave-signal \
|
||||
openssh-client \
|
||||
openssh-server \
|
||||
|
||||
@@ -26,7 +26,6 @@ set ( LOG_NO_THREAD True )
|
||||
set ( DEADLINE_SCHEDULER False )
|
||||
set ( MAC_CONTEXT 1 )
|
||||
set ( MAX_NUM_CCs 1 )
|
||||
set ( MESSAGE_CHART_GENERATOR False)
|
||||
set ( MSG_PRINT False )
|
||||
set ( MU_RECEIVER False )
|
||||
set ( NAS_ADDRESS_FIX False )
|
||||
|
||||
@@ -765,7 +765,6 @@ check_install_oai_software() {
|
||||
libxml2 \
|
||||
libxml2-dev \
|
||||
libxslt1-dev \
|
||||
mscgen \
|
||||
octave-signal \
|
||||
openssh-client \
|
||||
openssh-server \
|
||||
@@ -793,7 +792,7 @@ check_install_oai_software() {
|
||||
fi
|
||||
$SUDO $INSTALLER install -y python-epdb vim-common
|
||||
else
|
||||
$SUDO $INSTALLER install -y mscgen pydb
|
||||
$SUDO $INSTALLER install -y pydb
|
||||
fi
|
||||
|
||||
$SUDO $INSTALLER install -y \
|
||||
|
||||
@@ -85,18 +85,7 @@ Tools available:
|
||||
|
||||
1) itti_analyser (list messages exchanged between protocol layers)
|
||||
2) xforms (Layer 1)
|
||||
3) mscgen (under construction, but can give some results now)
|
||||
(http://www.mcternan.me.uk/mscgen/)
|
||||
We use the software to generate sequence diagrams
|
||||
with traces generated during the execution of the eNB.
|
||||
After the enb execution:
|
||||
yang@yang:...$ cd /tmp
|
||||
yang@yang:/tmp$ /home/yang/openair4G/trunk/targets/SCRIPTS/msc_gen.py
|
||||
The results are located in the current directory (/tmp in this example) in a folder. The name of the folder
|
||||
is the current date (for example: 2015-04-08_20.34.10).
|
||||
The results are input files for the mscgen tool containing events or messages and the
|
||||
corresponding generated png files.
|
||||
4) vcd (timing mesurements)
|
||||
3) vcd (timing mesurements)
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -92,18 +92,7 @@ Tools available:
|
||||
|
||||
1) itti_analyser (list messages exchanged between protocol layers)
|
||||
2) xforms (Layer 1)
|
||||
3) mscgen (under construction, but can give some results now)
|
||||
(http://www.mcternan.me.uk/mscgen/)
|
||||
We use the software to generate sequence diagrams
|
||||
with traces generated during the execution of the eNB.
|
||||
After the enb execution:
|
||||
yang@yang:...$ cd /tmp
|
||||
yang@yang:/tmp$ /home/yang/openair4G/trunk/targets/SCRIPTS/msc_gen.py
|
||||
The results are located in the current directory (/tmp in this example) in a folder. The name of the folder
|
||||
is the current date (for example: 2015-04-08_20.34.10).
|
||||
The results are input files for the mscgen tool containing events or messages and the
|
||||
corresponding generated png files.
|
||||
4) vcd (timing mesurements)
|
||||
3) vcd (timing mesurements)
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -32,8 +32,6 @@
|
||||
################################
|
||||
THIS_SCRIPT_PATH=$(dirname $(readlink -f $0))
|
||||
source $THIS_SCRIPT_PATH/build_helper
|
||||
declare -i g_run_msc_gen=0
|
||||
declare g_msc_dir="/tmp"
|
||||
|
||||
|
||||
function help()
|
||||
@@ -55,7 +53,6 @@ function help()
|
||||
echo_error " -M, --target-dl-mcs mcs Downlink target MCS."
|
||||
echo_error " -n, --T-no-wait don't wait for tracer, start immediately"
|
||||
echo_error " -p, --T-port port use given port"
|
||||
echo_error " -m, --mscgen directory Generate mscgen output files in a directory"
|
||||
echo_error " -s, --show-stdout Do not redirect stdout and stderr to file /tmp/lte_softmodem.stdout.txt."
|
||||
echo_error " -S, --enable-missed-slot Continue execution in case of missed slot."
|
||||
echo_error " -T, --target-ul-mcs mcs Uplink target MCS."
|
||||
@@ -68,30 +65,10 @@ function help()
|
||||
}
|
||||
|
||||
|
||||
function do_msc_gen()
|
||||
{
|
||||
cd $g_msc_dir
|
||||
last_created_file=`ls -t mscgen* | head -1 | tr -d ':'`
|
||||
$OPENAIR_DIR/targets/SCRIPTS/msc_gen.py
|
||||
sync
|
||||
last_created_file2=`ls -t mscgen* | head -1 | tr -d ':'`
|
||||
|
||||
if [ x"$last_created_file" != x"$last_created_file2" ]; then
|
||||
if [ -f ./$last_created_file2/oai_mscgen_page_0.png ]; then
|
||||
command -v eog 2>/dev/null && eog ./$last_created_file2/oai_mscgen_page_0.png
|
||||
fi
|
||||
fi
|
||||
|
||||
}
|
||||
|
||||
|
||||
function control_c()
|
||||
# run if user hits control-c
|
||||
{
|
||||
echo_warning "\nExiting by ctrl+c\n"
|
||||
if [ $g_run_msc_gen -eq 1 ]; then
|
||||
do_msc_gen
|
||||
fi
|
||||
exit $?
|
||||
}
|
||||
|
||||
@@ -153,18 +130,6 @@ function main()
|
||||
exe_arguments="$exe_arguments --rf-config-file=$rf_config_file"
|
||||
fi
|
||||
;;
|
||||
-m | --mscgen)
|
||||
g_msc_dir=$2
|
||||
# can omit file name if last arg on the line
|
||||
if [ -d "$g_msc_dir" ]; then
|
||||
echo "setting mscgen log files to dir: $g_msc_dir"
|
||||
g_run_msc_gen=1
|
||||
shift 2;
|
||||
else
|
||||
echo_error "Mscgen log dir does not exist"
|
||||
exit -1
|
||||
fi
|
||||
;;
|
||||
-M | --target-dl-mcs)
|
||||
echo "setting target dl MCS to $2"
|
||||
exe_arguments="$exe_arguments -m $2"
|
||||
@@ -251,9 +216,6 @@ function main()
|
||||
else
|
||||
gdb -n -x ~/.gdb_lte_softmodem
|
||||
fi
|
||||
if [ $g_run_msc_gen -eq 1 ]; then
|
||||
do_msc_gen
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
@@ -57,7 +57,6 @@ function help()
|
||||
echo_error " -l, --log-level set the global log level (8:trace, 7:debug, 6:info, 4:warn, 3:error). Note that the log configuration is eNB config file is ignored for oaisim."
|
||||
echo_error " -h, --help Print this help."
|
||||
echo_error " -K, --itti-dump-file filename ITTI dump file containing all ITTI events occuring during EPC runtime.(can omit file name if last argument)"
|
||||
echo_error " -m, --mscgen directory Generate mscgen output files in a directory"
|
||||
echo_error " -V, --vcd Dump timings of processing in a GTKWave compliant file format."
|
||||
echo_error " -W, --wireshark-l2 Dump MAC frames for visualization with wireshark."
|
||||
echo_error " You need to open Wireshark, open the preferences, and check try heuristics for the UDP protocol, MAC-LTE, RLC-LTE,"
|
||||
@@ -75,11 +74,9 @@ function main()
|
||||
cecho "OPENAIR_DIR = $OPENAIR_DIR" $green
|
||||
|
||||
local -i run_gdb=0
|
||||
local -i run_mscgen=0
|
||||
local exe_arguments=""
|
||||
local DEFAULT_CONFIG_FILE_ENB=$OPENAIR_DIR/targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.generic.oaisim.local_no_mme.conf
|
||||
local CONFIG_FILE_ENB=$DEFAULT_CONFIG_FILE_ENB
|
||||
local MSC_DIR="/tmp"
|
||||
local abstraction_flag=0
|
||||
|
||||
until [ -z "$1" ]
|
||||
@@ -136,17 +133,6 @@ function main()
|
||||
exe_arguments="$exe_arguments -K $ITTI_DUMP_FILE"
|
||||
;;
|
||||
|
||||
-m | --mscgen)
|
||||
MSC_DIR=$2
|
||||
if [ -d "$MSC_DIR" ]; then
|
||||
echo "setting mscgen log files to dir: $MSC_DIR"
|
||||
run_mscgen=1
|
||||
shift 2;
|
||||
else
|
||||
echo_error "Mscgen log dir does not exist"
|
||||
exit -1
|
||||
fi
|
||||
;;
|
||||
# -u | --num-ue )
|
||||
|
||||
-V | --vcd)
|
||||
@@ -212,10 +198,6 @@ function main()
|
||||
cd $OPENAIR_DIR/targets/bin
|
||||
|
||||
|
||||
if [ $run_mscgen -eq 1 ]; then
|
||||
$SUDO rm -f /tmp/openair.msc.*
|
||||
fi
|
||||
|
||||
if [ $run_gdb -eq 0 ]; then
|
||||
exec $SUDO $OPENAIR_DIR/targets/bin/oaisim_nos1.Rel14 $exe_arguments | tee /tmp/enb_ue_nos1.log.txt
|
||||
else
|
||||
@@ -227,20 +209,6 @@ function main()
|
||||
cat ~/.gdb_enb_ue_nos1
|
||||
$SUDO gdb -n -x ~/.gdb_enb_ue_nos1
|
||||
fi
|
||||
|
||||
if [ $run_mscgen -eq 1 ]; then
|
||||
cd $MSC_DIR
|
||||
last_created_file=`ls -t mscgen* | head -1 | tr -d ':'`
|
||||
$OPENAIR_DIR/targets/SCRIPTS/msc_gen.py --profile E_UTRAN
|
||||
sync
|
||||
last_created_file2=`ls -t mscgen* | head -1 | tr -d ':'`
|
||||
|
||||
if [ x"$last_created_file" != x"$last_created_file2" ]; then
|
||||
if [ -f ./$last_created_file2/oai_mscgen_page_0.png ]; then
|
||||
command -v eog 2>/dev/null && eog ./$last_created_file2/oai_mscgen_page_0.png
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
main "$@"
|
||||
|
||||
@@ -81,7 +81,6 @@ function help()
|
||||
echo_error " -g, --gdb Run with GDB."
|
||||
echo_error " -h, --help Print this help."
|
||||
echo_error " -K, --itti-dump-file filename ITTI dump file containing all ITTI events occuring during EPC runtime.(can omit file name if last argument)"
|
||||
echo_error " -m, --mscgen directory Generate mscgen output files in a directory"
|
||||
echo_error " -V, --vcd Dump timings of processing in a GTKWave compliant file format."
|
||||
echo_error " -W, --wireshark-l2 Dump MAC frames for visualization with wireshark."
|
||||
echo_error " You need to open Wireshark, open the preferences, and check try heuristics for the UDP protocol, MAC-LTE, RLC-LTE,"
|
||||
@@ -100,11 +99,9 @@ function main()
|
||||
cecho "OPENAIR_DIR = $OPENAIR_DIR" $green
|
||||
|
||||
local -i run_gdb=0
|
||||
local -i run_mscgen=0
|
||||
local exe_arguments=""
|
||||
local DEFAULT_CONFIG_FILE_ENB=$OPENAIR_DIR/targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.generic.oaisim.local_mme.conf
|
||||
local CONFIG_FILE_ENB=$DEFAULT_CONFIG_FILE_ENB
|
||||
local MSC_DIR="/tmp"
|
||||
|
||||
until [ -z "$1" ]
|
||||
do
|
||||
@@ -160,19 +157,6 @@ function main()
|
||||
exe_arguments="$exe_arguments -K $ITTI_DUMP_FILE"
|
||||
;;
|
||||
|
||||
-m | --mscgen)
|
||||
MSC_DIR=$2
|
||||
# can omit file name if last arg on the line
|
||||
if [ -d "$MSC_DIR" ]; then
|
||||
echo "setting mscgen log files to dir: $MSC_DIR"
|
||||
run_mscgen=1
|
||||
shift 2;
|
||||
else
|
||||
echo_error "Mscgen log dir does not exist"
|
||||
exit -1
|
||||
fi
|
||||
;;
|
||||
|
||||
-V | --vcd)
|
||||
echo "setting gtk-wave output"
|
||||
exe_arguments="$exe_arguments -V /tmp/oai_gtk_wave.vcd"
|
||||
@@ -258,10 +242,6 @@ function main()
|
||||
cd $OPENAIR_DIR/targets/bin
|
||||
|
||||
|
||||
if [ $run_mscgen -eq 1 ]; then
|
||||
rm -f /tmp/openair.msc.*
|
||||
fi
|
||||
|
||||
if [ $run_gdb -eq 0 ]; then
|
||||
exec $OPENAIR_DIR/targets/bin/oaisim.Rel14 $exe_arguments | tee /tmp/enb_ue_s1.log.txt
|
||||
else
|
||||
@@ -273,21 +253,6 @@ function main()
|
||||
cat ~/.gdb_enb_ue_s1
|
||||
gdb -n -x ~/.gdb_enb_ue_s1
|
||||
fi
|
||||
|
||||
if [ $run_mscgen -eq 1 ]; then
|
||||
cd $MSC_DIR
|
||||
last_created_file=`ls -t mscgen* | head -1 | tr -d ':'`
|
||||
$OPENAIR_DIR/targets/SCRIPTS/msc_gen.py --profile E_UTRAN
|
||||
sync
|
||||
last_created_file2=`ls -t mscgen* | head -1 | tr -d ':'`
|
||||
|
||||
if [ x"$last_created_file" != x"$last_created_file2" ]; then
|
||||
if [ -f ./$last_created_file2/oai_mscgen_page_0.png ]; then
|
||||
command -v eog 2>/dev/null && eog ./$last_created_file2/oai_mscgen_page_0.png
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
}
|
||||
|
||||
sudo echo
|
||||
|
||||
@@ -65,7 +65,6 @@ To get help on supported parameters you can use specific options:
|
||||
-R: Enable online log
|
||||
-g: Set the global log level, valide options: (4:trace, 3:debug, 2:info, 1:warn, (0:error))
|
||||
--telnetsrv: Start embedded telnet server
|
||||
--msc: Enable the MSC tracing utility
|
||||
--------------------------------------------------------------------
|
||||
|
||||
[LIBCONFIG] loader: 2/2 parameters successfully set, (2 to default value)
|
||||
|
||||
@@ -49,7 +49,6 @@ The list of components defined within oai can be retrieved from the [config mod
|
||||
[CONFIG] log_config.perf_log_level set to default value "info"
|
||||
[CONFIG] log_config.oip_log_level set to default value "info"
|
||||
[CONFIG] log_config.cli_log_level set to default value "info"
|
||||
[CONFIG] log_config.msc_log_level set to default value "info"
|
||||
[CONFIG] log_config.ocm_log_level set to default value "info"
|
||||
[CONFIG] log_config.udp_log_level set to default value "info"
|
||||
[CONFIG] log_config.gtpv1u_log_level set to default value "info"
|
||||
@@ -108,8 +107,6 @@ The list of components defined within oai can be retrieved from the [config mod
|
||||
[CONFIG] log_config.oip_log_infile set to default value
|
||||
[CONFIG] cli_log_infile: 0
|
||||
[CONFIG] log_config.cli_log_infile set to default value
|
||||
[CONFIG] msc_log_infile: 0
|
||||
[CONFIG] log_config.msc_log_infile set to default value
|
||||
[CONFIG] ocm_log_infile: 0
|
||||
[CONFIG] log_config.ocm_log_infile set to default value
|
||||
[CONFIG] udp_log_infile: 0
|
||||
|
||||
@@ -447,7 +447,6 @@ int logInit (void)
|
||||
register_log_component("OCG","",OCG);
|
||||
register_log_component("PERF","",PERF);
|
||||
register_log_component("OIP","",OIP);
|
||||
register_log_component("MSC","log",MSC);
|
||||
register_log_component("OCM","log",OCM);
|
||||
register_log_component("HW","",HW);
|
||||
register_log_component("OSA","",OSA);
|
||||
|
||||
@@ -210,7 +210,6 @@ typedef enum {
|
||||
PERF,
|
||||
OIP,
|
||||
CLI,
|
||||
MSC,
|
||||
OCM,
|
||||
UDP_,
|
||||
GTPU,
|
||||
|
||||
@@ -1,785 +0,0 @@
|
||||
/*
|
||||
* Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The OpenAirInterface Software Alliance licenses this file to You under
|
||||
* the OAI Public License, Version 1.1 (the "License"); you may not use this file
|
||||
* except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.openairinterface.org/?page_id=698
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*-------------------------------------------------------------------------------
|
||||
* For more information about the OpenAirInterface (OAI) Software Alliance:
|
||||
* contact@openairinterface.org
|
||||
*/
|
||||
|
||||
/*! \file msc.c
|
||||
* \brief Message chart generator logging utility (generated files to processed by a script to produce a mscgen input file for generating a sequence diagram document)
|
||||
* \author Lionel GAUTHIER
|
||||
* \date 2015
|
||||
* \email: lionel.gauthier@eurecom.fr
|
||||
*/
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <errno.h>
|
||||
#include <string.h>
|
||||
#include <stdint.h>
|
||||
#include <inttypes.h>
|
||||
|
||||
#define MSC_LIBRARY
|
||||
#include "msc.h"
|
||||
|
||||
#include "liblfds611.h"
|
||||
#include "intertask_interface.h"
|
||||
|
||||
|
||||
|
||||
#include "assertions.h"
|
||||
|
||||
//-------------------------------
|
||||
#define MSC_MAX_QUEUE_ELEMENTS 1024
|
||||
#define MSC_MAX_PROTO_NAME_LENGTH 16
|
||||
#define MSC_MAX_MESSAGE_LENGTH 512
|
||||
|
||||
//-------------------------------
|
||||
|
||||
FILE *g_msc_fd;
|
||||
char g_msc_proto2str[MAX_MSC_PROTOS][MSC_MAX_PROTO_NAME_LENGTH];
|
||||
|
||||
msc_interface_t msc_interface;
|
||||
|
||||
typedef unsigned long msc_message_number_t;
|
||||
typedef struct msc_queue_item_s {
|
||||
char *message_str;
|
||||
uint32_t message_str_size;
|
||||
uint8_t *message_bin;
|
||||
uint32_t message_bin_size;
|
||||
} msc_queue_item_t;
|
||||
|
||||
msc_message_number_t g_message_number = 0;
|
||||
struct lfds611_queue_state *g_msc_message_queue_p = NULL;
|
||||
struct lfds611_stack_state *g_msc_memory_stack_p = NULL;
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
void *msc_task(void *args_p)
|
||||
//------------------------------------------------------------------------------
|
||||
{
|
||||
MessageDef *received_message_p = NULL;
|
||||
// const char *msg_name = NULL;
|
||||
// instance_t instance = 0;
|
||||
long timer_id;
|
||||
itti_mark_task_ready(TASK_MSC);
|
||||
msc_start_use();
|
||||
timer_setup(0, // seconds
|
||||
50000, // usec
|
||||
TASK_MSC,
|
||||
INSTANCE_DEFAULT,
|
||||
TIMER_PERIODIC,
|
||||
NULL,
|
||||
&timer_id);
|
||||
|
||||
while(1) {
|
||||
itti_receive_msg(TASK_MSC, &received_message_p);
|
||||
|
||||
if (received_message_p != NULL) {
|
||||
// msg_name = ITTI_MSG_NAME (received_message_p);
|
||||
// instance = ITTI_MSG_DESTINATION_INSTANCE (received_message_p);
|
||||
switch (ITTI_MSG_ID(received_message_p)) {
|
||||
case TIMER_HAS_EXPIRED: {
|
||||
msc_flush_messages();
|
||||
}
|
||||
break;
|
||||
|
||||
case TERMINATE_MESSAGE: {
|
||||
fprintf(stderr, " *** Exiting MSC thread\n");
|
||||
timer_remove(timer_id);
|
||||
msc_end();
|
||||
itti_exit_task();
|
||||
}
|
||||
break;
|
||||
|
||||
case MESSAGE_TEST: {
|
||||
}
|
||||
break;
|
||||
|
||||
default: {
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fprintf(stderr, "Task MSC exiting\n");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
int msc_init(const msc_env_t envP, const int max_threadsP)
|
||||
//------------------------------------------------------------------------------
|
||||
{
|
||||
int i;
|
||||
int rv;
|
||||
void *pointer_p;
|
||||
char msc_filename[256];
|
||||
fprintf(stderr, "Initializing MSC logs\n");
|
||||
rv = snprintf(msc_filename, 256, "/tmp/openair.msc.%i.log", envP); // TODO NAME
|
||||
|
||||
if ((0 >= rv) || (256 < rv)) {
|
||||
fprintf(stderr, "Error in MSC log file name");
|
||||
}
|
||||
|
||||
g_msc_fd = fopen(msc_filename,"w");
|
||||
AssertFatal(g_msc_fd != NULL, "Could not open MSC log file %s : %s", msc_filename, strerror(errno));
|
||||
rv = lfds611_stack_new(&g_msc_memory_stack_p, (lfds611_atom_t)max_threadsP + 2);
|
||||
|
||||
if (0 >= rv) {
|
||||
AssertFatal (0, "lfds611_stack_new failed!\n");
|
||||
}
|
||||
|
||||
rv = lfds611_queue_new(&g_msc_message_queue_p, (lfds611_atom_t)MSC_MAX_QUEUE_ELEMENTS);
|
||||
AssertFatal (rv, "lfds611_queue_new failed!\n");
|
||||
AssertFatal (g_msc_message_queue_p != NULL, "g_msc_message_queue_p is NULL!\n");
|
||||
msc_start_use();
|
||||
|
||||
for (i=0; i < max_threadsP * 30; i++) {
|
||||
pointer_p = malloc(MSC_MAX_MESSAGE_LENGTH);
|
||||
AssertFatal (pointer_p, "malloc failed!\n");
|
||||
rv = lfds611_stack_guaranteed_push( g_msc_memory_stack_p, pointer_p );
|
||||
AssertFatal (rv, "lfds611_stack_guaranteed_push failed for item %d\n", i);
|
||||
}
|
||||
|
||||
for (i = MIN_MSC_PROTOS; i < MAX_MSC_PROTOS; i++) {
|
||||
switch (i) {
|
||||
case MSC_IP_UE:
|
||||
rv = snprintf(&g_msc_proto2str[i][0], MSC_MAX_PROTO_NAME_LENGTH, "IP_UE");
|
||||
|
||||
if (rv >= MSC_MAX_PROTO_NAME_LENGTH) {
|
||||
g_msc_proto2str[i][MSC_MAX_PROTO_NAME_LENGTH-1] = 0;
|
||||
}
|
||||
|
||||
if ((envP == MSC_E_UTRAN) || (envP == MSC_E_UTRAN_LIPA)) {
|
||||
msc_log_declare_proto(i);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case MSC_IP_ENB:
|
||||
rv = snprintf(&g_msc_proto2str[i][0], MSC_MAX_PROTO_NAME_LENGTH, "IP_ENB");
|
||||
|
||||
if (rv >= MSC_MAX_PROTO_NAME_LENGTH) {
|
||||
g_msc_proto2str[i][MSC_MAX_PROTO_NAME_LENGTH-1] = 0;
|
||||
}
|
||||
|
||||
if (envP == MSC_E_UTRAN_LIPA) {
|
||||
msc_log_declare_proto(i);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case MSC_NAS_UE:
|
||||
rv = snprintf(&g_msc_proto2str[i][0], MSC_MAX_PROTO_NAME_LENGTH, "NAS_UE");
|
||||
|
||||
if (rv >= MSC_MAX_PROTO_NAME_LENGTH) {
|
||||
g_msc_proto2str[i][MSC_MAX_PROTO_NAME_LENGTH-1] = 0;
|
||||
}
|
||||
|
||||
if ((envP == MSC_E_UTRAN) || (envP == MSC_E_UTRAN_LIPA)) {
|
||||
msc_log_declare_proto(i);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case MSC_RRC_UE:
|
||||
rv = snprintf(&g_msc_proto2str[i][0], MSC_MAX_PROTO_NAME_LENGTH, "RRC_UE");
|
||||
|
||||
if (rv >= MSC_MAX_PROTO_NAME_LENGTH) {
|
||||
g_msc_proto2str[i][MSC_MAX_PROTO_NAME_LENGTH-1] = 0;
|
||||
}
|
||||
|
||||
if ((envP == MSC_E_UTRAN) || (envP == MSC_E_UTRAN_LIPA)) {
|
||||
msc_log_declare_proto(i);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case MSC_PDCP_UE:
|
||||
rv = snprintf(&g_msc_proto2str[i][0], MSC_MAX_PROTO_NAME_LENGTH, "PDCP_UE");
|
||||
|
||||
if (rv >= MSC_MAX_PROTO_NAME_LENGTH) {
|
||||
g_msc_proto2str[i][MSC_MAX_PROTO_NAME_LENGTH-1] = 0;
|
||||
}
|
||||
|
||||
if ((envP == MSC_E_UTRAN) || (envP == MSC_E_UTRAN_LIPA)) {
|
||||
msc_log_declare_proto(i);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case MSC_RLC_UE:
|
||||
rv = snprintf(&g_msc_proto2str[i][0], MSC_MAX_PROTO_NAME_LENGTH, "RLC_UE");
|
||||
|
||||
if (rv >= MSC_MAX_PROTO_NAME_LENGTH) {
|
||||
g_msc_proto2str[i][MSC_MAX_PROTO_NAME_LENGTH-1] = 0;
|
||||
}
|
||||
|
||||
if ((envP == MSC_E_UTRAN) || (envP == MSC_E_UTRAN_LIPA)) {
|
||||
msc_log_declare_proto(i);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case MSC_MAC_UE:
|
||||
rv = snprintf(&g_msc_proto2str[i][0], MSC_MAX_PROTO_NAME_LENGTH, "MAC_UE");
|
||||
|
||||
if (rv >= MSC_MAX_PROTO_NAME_LENGTH) {
|
||||
g_msc_proto2str[i][MSC_MAX_PROTO_NAME_LENGTH-1] = 0;
|
||||
}
|
||||
|
||||
if ((envP == MSC_E_UTRAN) || (envP == MSC_E_UTRAN_LIPA)) {
|
||||
msc_log_declare_proto(i);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case MSC_PHY_UE:
|
||||
rv = snprintf(&g_msc_proto2str[i][0], MSC_MAX_PROTO_NAME_LENGTH, "PHY_UE");
|
||||
|
||||
if (rv >= MSC_MAX_PROTO_NAME_LENGTH) {
|
||||
g_msc_proto2str[i][MSC_MAX_PROTO_NAME_LENGTH-1] = 0;
|
||||
}
|
||||
|
||||
if ((envP == MSC_E_UTRAN) || (envP == MSC_E_UTRAN_LIPA)) {
|
||||
msc_log_declare_proto(i);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case MSC_PHY_ENB:
|
||||
rv = snprintf(&g_msc_proto2str[i][0], MSC_MAX_PROTO_NAME_LENGTH, "PHY_ENB");
|
||||
|
||||
if (rv >= MSC_MAX_PROTO_NAME_LENGTH) {
|
||||
g_msc_proto2str[i][MSC_MAX_PROTO_NAME_LENGTH-1] = 0;
|
||||
}
|
||||
|
||||
if ((envP == MSC_E_UTRAN) || (envP == MSC_E_UTRAN_LIPA)) {
|
||||
msc_log_declare_proto(i);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case MSC_MAC_ENB:
|
||||
rv = snprintf(&g_msc_proto2str[i][0], MSC_MAX_PROTO_NAME_LENGTH, "MAC_ENB");
|
||||
|
||||
if (rv >= MSC_MAX_PROTO_NAME_LENGTH) {
|
||||
g_msc_proto2str[i][MSC_MAX_PROTO_NAME_LENGTH-1] = 0;
|
||||
}
|
||||
|
||||
if ((envP == MSC_E_UTRAN) || (envP == MSC_E_UTRAN_LIPA)) {
|
||||
msc_log_declare_proto(i);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case MSC_RLC_ENB:
|
||||
rv = snprintf(&g_msc_proto2str[i][0], MSC_MAX_PROTO_NAME_LENGTH, "RLC_ENB");
|
||||
|
||||
if (rv >= MSC_MAX_PROTO_NAME_LENGTH) {
|
||||
g_msc_proto2str[i][MSC_MAX_PROTO_NAME_LENGTH-1] = 0;
|
||||
}
|
||||
|
||||
if ((envP == MSC_E_UTRAN) || (envP == MSC_E_UTRAN_LIPA)) {
|
||||
msc_log_declare_proto(i);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case MSC_PDCP_ENB:
|
||||
rv = snprintf(&g_msc_proto2str[i][0], MSC_MAX_PROTO_NAME_LENGTH, "PDCP_ENB");
|
||||
|
||||
if (rv >= MSC_MAX_PROTO_NAME_LENGTH) {
|
||||
g_msc_proto2str[i][MSC_MAX_PROTO_NAME_LENGTH-1] = 0;
|
||||
}
|
||||
|
||||
if ((envP == MSC_E_UTRAN) || (envP == MSC_E_UTRAN_LIPA)) {
|
||||
msc_log_declare_proto(i);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case MSC_RRC_ENB:
|
||||
rv = snprintf(&g_msc_proto2str[i][0], MSC_MAX_PROTO_NAME_LENGTH, "RRC_ENB");
|
||||
|
||||
if (rv >= MSC_MAX_PROTO_NAME_LENGTH) {
|
||||
g_msc_proto2str[i][MSC_MAX_PROTO_NAME_LENGTH-1] = 0;
|
||||
}
|
||||
|
||||
if ((envP == MSC_E_UTRAN) || (envP == MSC_E_UTRAN_LIPA)) {
|
||||
msc_log_declare_proto(i);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case MSC_S1AP_ENB:
|
||||
rv = snprintf(&g_msc_proto2str[i][0], MSC_MAX_PROTO_NAME_LENGTH, "S1AP_ENB");
|
||||
|
||||
if (rv >= MSC_MAX_PROTO_NAME_LENGTH) {
|
||||
g_msc_proto2str[i][MSC_MAX_PROTO_NAME_LENGTH-1] = 0;
|
||||
}
|
||||
|
||||
if ((envP == MSC_E_UTRAN) || (envP == MSC_MME_GW) || (envP == MSC_MME)) {
|
||||
msc_log_declare_proto(i);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case MSC_GTPU_ENB:
|
||||
rv = snprintf(&g_msc_proto2str[i][0], MSC_MAX_PROTO_NAME_LENGTH, "GTPU_ENB");
|
||||
|
||||
if (rv >= MSC_MAX_PROTO_NAME_LENGTH) {
|
||||
g_msc_proto2str[i][MSC_MAX_PROTO_NAME_LENGTH-1] = 0;
|
||||
}
|
||||
|
||||
if ((envP == MSC_E_UTRAN) || (envP == MSC_E_UTRAN_LIPA)) {
|
||||
msc_log_declare_proto(i);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case MSC_GTPU_SGW:
|
||||
rv = snprintf(&g_msc_proto2str[i][0], MSC_MAX_PROTO_NAME_LENGTH, "GTPU_SGW");
|
||||
|
||||
if (rv >= MSC_MAX_PROTO_NAME_LENGTH) {
|
||||
g_msc_proto2str[i][MSC_MAX_PROTO_NAME_LENGTH-1] = 0;
|
||||
}
|
||||
|
||||
if ((envP == MSC_MME_GW) || (envP == MSC_E_UTRAN) || (envP == MSC_E_UTRAN_LIPA)) {
|
||||
msc_log_declare_proto(i);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case MSC_S1AP_MME:
|
||||
rv = snprintf(&g_msc_proto2str[i][0], MSC_MAX_PROTO_NAME_LENGTH, "S1AP_MME");
|
||||
|
||||
if (rv >= MSC_MAX_PROTO_NAME_LENGTH) {
|
||||
g_msc_proto2str[i][MSC_MAX_PROTO_NAME_LENGTH-1] = 0;
|
||||
}
|
||||
|
||||
if ((envP == MSC_MME_GW) || (envP == MSC_MME) || (envP == MSC_E_UTRAN) || (envP == MSC_E_UTRAN_LIPA)) {
|
||||
msc_log_declare_proto(i);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case MSC_MMEAPP_MME:
|
||||
rv = snprintf(&g_msc_proto2str[i][0], MSC_MAX_PROTO_NAME_LENGTH, "MME_APP");
|
||||
|
||||
if (rv >= MSC_MAX_PROTO_NAME_LENGTH) {
|
||||
g_msc_proto2str[i][MSC_MAX_PROTO_NAME_LENGTH-1] = 0;
|
||||
}
|
||||
|
||||
if ((envP == MSC_MME_GW) || (envP == MSC_MME)) {
|
||||
msc_log_declare_proto(i);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case MSC_NAS_MME:
|
||||
rv = snprintf(&g_msc_proto2str[i][0], MSC_MAX_PROTO_NAME_LENGTH, "NAS_MME");
|
||||
|
||||
if (rv >= MSC_MAX_PROTO_NAME_LENGTH) {
|
||||
g_msc_proto2str[i][MSC_MAX_PROTO_NAME_LENGTH-1] = 0;
|
||||
}
|
||||
|
||||
msc_log_declare_proto(i);
|
||||
break;
|
||||
|
||||
case MSC_NAS_EMM_MME:
|
||||
rv = snprintf(&g_msc_proto2str[i][0], MSC_MAX_PROTO_NAME_LENGTH, "NAS_EMM");
|
||||
|
||||
if (rv >= MSC_MAX_PROTO_NAME_LENGTH) {
|
||||
g_msc_proto2str[i][MSC_MAX_PROTO_NAME_LENGTH-1] = 0;
|
||||
}
|
||||
|
||||
if ((envP == MSC_MME_GW) || (envP == MSC_MME)) {
|
||||
msc_log_declare_proto(i);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case MSC_NAS_ESM_MME:
|
||||
rv = snprintf(&g_msc_proto2str[i][0], MSC_MAX_PROTO_NAME_LENGTH, "NAS_ESM");
|
||||
|
||||
if (rv >= MSC_MAX_PROTO_NAME_LENGTH) {
|
||||
g_msc_proto2str[i][MSC_MAX_PROTO_NAME_LENGTH-1] = 0;
|
||||
}
|
||||
|
||||
if ((envP == MSC_MME_GW) || (envP == MSC_MME)) {
|
||||
msc_log_declare_proto(i);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case MSC_SP_GWAPP_MME:
|
||||
rv = snprintf(&g_msc_proto2str[i][0], MSC_MAX_PROTO_NAME_LENGTH, "SP_GW_MME");
|
||||
|
||||
if (rv >= MSC_MAX_PROTO_NAME_LENGTH) {
|
||||
g_msc_proto2str[i][MSC_MAX_PROTO_NAME_LENGTH-1] = 0;
|
||||
}
|
||||
|
||||
if (envP == MSC_MME_GW) {
|
||||
msc_log_declare_proto(i);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case MSC_S11_MME:
|
||||
rv = snprintf(&g_msc_proto2str[i][0], MSC_MAX_PROTO_NAME_LENGTH, "S11_MME");
|
||||
|
||||
if (rv >= MSC_MAX_PROTO_NAME_LENGTH) {
|
||||
g_msc_proto2str[i][MSC_MAX_PROTO_NAME_LENGTH-1] = 0;
|
||||
}
|
||||
|
||||
if (envP == MSC_MME) {
|
||||
msc_log_declare_proto(i);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case MSC_S6A_MME:
|
||||
rv = snprintf(&g_msc_proto2str[i][0], MSC_MAX_PROTO_NAME_LENGTH, "S6A");
|
||||
|
||||
if (rv >= MSC_MAX_PROTO_NAME_LENGTH) {
|
||||
g_msc_proto2str[i][MSC_MAX_PROTO_NAME_LENGTH-1] = 0;
|
||||
}
|
||||
|
||||
if ((envP == MSC_MME_GW) || (envP == MSC_MME)) {
|
||||
msc_log_declare_proto(i);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case MSC_HSS:
|
||||
rv = snprintf(&g_msc_proto2str[i][0], MSC_MAX_PROTO_NAME_LENGTH, "HSS");
|
||||
|
||||
if (rv >= MSC_MAX_PROTO_NAME_LENGTH) {
|
||||
g_msc_proto2str[i][MSC_MAX_PROTO_NAME_LENGTH-1] = 0;
|
||||
}
|
||||
|
||||
if ((envP == MSC_MME_GW) || (envP == MSC_MME)) {
|
||||
msc_log_declare_proto(i);
|
||||
}
|
||||
|
||||
break;
|
||||
case MSC_F1AP_CU:
|
||||
rv = snprintf(&g_msc_proto2str[i][0], MSC_MAX_PROTO_NAME_LENGTH, "F1AP_CU");
|
||||
if (rv >= MSC_MAX_PROTO_NAME_LENGTH) {g_msc_proto2str[i][MSC_MAX_PROTO_NAME_LENGTH-1] = 0;}
|
||||
//if ((envP == MSC_E_UTRAN) || (envP == MSC_MME_GW) || (envP == MSC_MME)) {
|
||||
msc_log_declare_proto(i);
|
||||
//}
|
||||
break;
|
||||
case MSC_F1AP_DU:
|
||||
rv = snprintf(&g_msc_proto2str[i][0], MSC_MAX_PROTO_NAME_LENGTH, "F1AP_DU");
|
||||
if (rv >= MSC_MAX_PROTO_NAME_LENGTH) {g_msc_proto2str[i][MSC_MAX_PROTO_NAME_LENGTH-1] = 0;}
|
||||
//if ((envP == MSC_E_UTRAN) || (envP == MSC_MME_GW) || (envP == MSC_MME)) {
|
||||
msc_log_declare_proto(i);
|
||||
//}
|
||||
break;
|
||||
default:
|
||||
rv = snprintf(&g_msc_proto2str[i][0], MSC_MAX_PROTO_NAME_LENGTH, "UNKNOWN");
|
||||
|
||||
if (rv >= MSC_MAX_PROTO_NAME_LENGTH) {
|
||||
g_msc_proto2str[i][MSC_MAX_PROTO_NAME_LENGTH-1] = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
rv = itti_create_task (TASK_MSC, msc_task, NULL);
|
||||
AssertFatal (rv == 0, "Create task for MSC failed!\n");
|
||||
fprintf(stderr, "Initializing MSC logs Done\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
void msc_start_use(void)
|
||||
//------------------------------------------------------------------------------
|
||||
{
|
||||
lfds611_queue_use(g_msc_message_queue_p);
|
||||
lfds611_stack_use(g_msc_memory_stack_p);
|
||||
}
|
||||
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
void msc_flush_messages(void)
|
||||
//------------------------------------------------------------------------------
|
||||
{
|
||||
int rv;
|
||||
msc_queue_item_t *item_p = NULL;
|
||||
|
||||
while ((rv = lfds611_queue_dequeue( g_msc_message_queue_p, (void **)&item_p )) == 1) {
|
||||
if (NULL != item_p->message_str) {
|
||||
fputs(item_p->message_str, g_msc_fd);
|
||||
// TODO BIN DATA
|
||||
rv = lfds611_stack_guaranteed_push( g_msc_memory_stack_p, item_p->message_str );
|
||||
}
|
||||
|
||||
// TODO FREE BIN DATA
|
||||
free(item_p);
|
||||
}
|
||||
|
||||
fflush(g_msc_fd);
|
||||
}
|
||||
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
void msc_end(void)
|
||||
//------------------------------------------------------------------------------
|
||||
{
|
||||
int rv;
|
||||
|
||||
if (NULL != g_msc_fd ) {
|
||||
msc_flush_messages();
|
||||
rv = fflush(g_msc_fd);
|
||||
|
||||
if (rv != 0) {
|
||||
fprintf(stderr, "Error while flushing stream of MSC log file: %s", strerror(errno));
|
||||
}
|
||||
|
||||
rv = fclose(g_msc_fd);
|
||||
|
||||
if (rv != 0) {
|
||||
fprintf(stderr, "Error while closing MSC log file: %s", strerror(errno));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
void msc_log_declare_proto(
|
||||
const msc_proto_t protoP
|
||||
)
|
||||
//------------------------------------------------------------------------------
|
||||
{
|
||||
int rv = 0;
|
||||
msc_queue_item_t *new_item_p = NULL;
|
||||
char *char_message_p = NULL;
|
||||
|
||||
if ((MIN_MSC_PROTOS <= protoP) && (MAX_MSC_PROTOS > protoP)) {
|
||||
// may be build a memory pool for that also ?
|
||||
new_item_p = malloc(sizeof(msc_queue_item_t));
|
||||
|
||||
if (NULL != new_item_p) {
|
||||
rv = lfds611_stack_pop(g_msc_memory_stack_p, (void **)&char_message_p);
|
||||
|
||||
if (0 == rv) {
|
||||
msc_flush_messages();
|
||||
rv = lfds611_stack_pop(g_msc_memory_stack_p, (void **)&char_message_p);
|
||||
}
|
||||
|
||||
if (1 == rv) {
|
||||
rv = snprintf(char_message_p, MSC_MAX_MESSAGE_LENGTH, "%"PRIu64" [PROTO] %d %s\n", __sync_fetch_and_add (&g_message_number, 1), protoP, &g_msc_proto2str[protoP][0]);
|
||||
|
||||
if (0 > rv) {
|
||||
fprintf(stderr, "Error while declaring new protocol in MSC: %s", strerror(errno));
|
||||
}
|
||||
|
||||
new_item_p->message_str = char_message_p;
|
||||
new_item_p->message_str_size = rv;
|
||||
new_item_p->message_bin = NULL;
|
||||
new_item_p->message_bin_size = 0;
|
||||
rv = lfds611_queue_enqueue( g_msc_message_queue_p, new_item_p );
|
||||
|
||||
if (0 == rv) {
|
||||
rv = lfds611_queue_guaranteed_enqueue(g_msc_message_queue_p, new_item_p );
|
||||
|
||||
if (0 == rv) {
|
||||
fprintf(stderr, "Error while lfds611_queue_guaranteed_enqueue message %s in MSC", char_message_p);
|
||||
rv = lfds611_stack_guaranteed_push( g_msc_memory_stack_p, char_message_p );
|
||||
free(new_item_p);
|
||||
}
|
||||
}
|
||||
|
||||
return;
|
||||
} else {
|
||||
fprintf(stderr, "Error while lfds611_stack_pop()\n");
|
||||
}
|
||||
|
||||
free(new_item_p);
|
||||
} else {
|
||||
fprintf(stderr, "Error while malloc in MSC");
|
||||
}
|
||||
}
|
||||
}
|
||||
//------------------------------------------------------------------------------
|
||||
void msc_log_event(
|
||||
const msc_proto_t protoP,
|
||||
char *format, ...)
|
||||
//------------------------------------------------------------------------------
|
||||
{
|
||||
va_list args;
|
||||
int rv;
|
||||
int rv2;
|
||||
msc_queue_item_t *new_item_p = NULL;
|
||||
char *char_message_p = NULL;
|
||||
|
||||
if ((MIN_MSC_PROTOS > protoP) || (MAX_MSC_PROTOS <= protoP)) {
|
||||
return;
|
||||
}
|
||||
|
||||
new_item_p = malloc(sizeof(msc_queue_item_t));
|
||||
|
||||
if (NULL != new_item_p) {
|
||||
rv = lfds611_stack_pop(g_msc_memory_stack_p, (void **)&char_message_p);
|
||||
|
||||
if (0 == rv) {
|
||||
msc_flush_messages();
|
||||
rv = lfds611_stack_pop(g_msc_memory_stack_p, (void **)&char_message_p);
|
||||
}
|
||||
|
||||
if (1 == rv) {
|
||||
rv = snprintf(char_message_p, MSC_MAX_MESSAGE_LENGTH, "%"PRIu64" [EVENT] %d ", __sync_fetch_and_add (&g_message_number, 1), protoP);
|
||||
|
||||
if ((0 > rv) || (MSC_MAX_MESSAGE_LENGTH < rv)) {
|
||||
fprintf(stderr, "Error while logging MSC event : %s", &g_msc_proto2str[protoP][0]);
|
||||
goto error_event;
|
||||
}
|
||||
|
||||
va_start(args, format);
|
||||
rv2 = vsnprintf(&char_message_p[rv],MSC_MAX_MESSAGE_LENGTH - rv, format, args);
|
||||
va_end(args);
|
||||
|
||||
if ((0 > rv2) || ((MSC_MAX_MESSAGE_LENGTH - rv) < rv2)) {
|
||||
fprintf(stderr, "Error while logging MSC event : %s", &g_msc_proto2str[protoP][0]);
|
||||
goto error_event;
|
||||
}
|
||||
|
||||
rv += rv2;
|
||||
rv2 = snprintf(&char_message_p[rv],MSC_MAX_MESSAGE_LENGTH - rv, "\n");
|
||||
|
||||
if ((0 > rv2) || ((MSC_MAX_MESSAGE_LENGTH - rv) < rv2)) {
|
||||
fprintf(stderr, "Error while logging MSC event : %s", &g_msc_proto2str[protoP][0]);
|
||||
goto error_event;
|
||||
}
|
||||
|
||||
rv += rv2;
|
||||
new_item_p->message_str = char_message_p;
|
||||
new_item_p->message_str_size = rv;
|
||||
new_item_p->message_bin = NULL;
|
||||
new_item_p->message_bin_size = 0;
|
||||
rv = lfds611_queue_enqueue( g_msc_message_queue_p, new_item_p );
|
||||
|
||||
if (0 == rv) {
|
||||
fprintf(stderr, "Error while lfds611_queue_guaranteed_enqueue message %s in MSC", char_message_p);
|
||||
rv = lfds611_stack_guaranteed_push( g_msc_memory_stack_p, char_message_p );
|
||||
free(new_item_p);
|
||||
}
|
||||
} else {
|
||||
fprintf(stderr, "Error while lfds611_stack_pop()\n");
|
||||
}
|
||||
}
|
||||
|
||||
return;
|
||||
error_event:
|
||||
rv = lfds611_stack_guaranteed_push( g_msc_memory_stack_p, char_message_p );
|
||||
free(new_item_p);
|
||||
}
|
||||
//------------------------------------------------------------------------------
|
||||
void msc_log_message(
|
||||
const char *const message_operationP,
|
||||
const msc_proto_t proto1P,
|
||||
const msc_proto_t proto2P,
|
||||
const uint8_t *const bytesP,
|
||||
const unsigned int num_bytes,
|
||||
char *format, ...)
|
||||
//------------------------------------------------------------------------------
|
||||
{
|
||||
va_list args;
|
||||
uint64_t mac = 0; // TO DO mac on bytesP param
|
||||
int rv;
|
||||
int rv2;
|
||||
msc_queue_item_t *new_item_p = NULL;
|
||||
char *char_message_p = NULL;
|
||||
|
||||
if ((MIN_MSC_PROTOS > proto1P) || (MAX_MSC_PROTOS <= proto1P) ||
|
||||
(MIN_MSC_PROTOS > proto2P) || (MAX_MSC_PROTOS <= proto2P) ) {
|
||||
return;
|
||||
}
|
||||
|
||||
new_item_p = malloc(sizeof(msc_queue_item_t));
|
||||
|
||||
if (NULL != new_item_p) {
|
||||
rv = lfds611_stack_pop(g_msc_memory_stack_p, (void **)&char_message_p);
|
||||
|
||||
if (0 == rv) {
|
||||
msc_flush_messages();
|
||||
rv = lfds611_stack_pop(g_msc_memory_stack_p, (void **)&char_message_p);
|
||||
}
|
||||
|
||||
if (1 == rv) {
|
||||
rv = snprintf(char_message_p, MSC_MAX_MESSAGE_LENGTH, "%"PRIu64" [MESSAGE] %d %s %d %"PRIu64" ",
|
||||
__sync_fetch_and_add (&g_message_number, 1), proto1P, message_operationP, proto2P, mac);
|
||||
|
||||
if ((0 > rv) || (MSC_MAX_MESSAGE_LENGTH < rv)) {
|
||||
fprintf(stderr, "Error while logging MSC message : %s/%s", &g_msc_proto2str[proto1P][0], &g_msc_proto2str[proto2P][0]);
|
||||
goto error_event;
|
||||
}
|
||||
|
||||
va_start(args, format);
|
||||
rv2 = vsnprintf(&char_message_p[rv],MSC_MAX_MESSAGE_LENGTH - rv, format, args);
|
||||
va_end(args);
|
||||
|
||||
if ((0 > rv2) || ((MSC_MAX_MESSAGE_LENGTH - rv) < rv2)) {
|
||||
fprintf(stderr, "Error while logging MSC message : %s/%s", &g_msc_proto2str[proto1P][0], &g_msc_proto2str[proto2P][0]);
|
||||
goto error_event;
|
||||
}
|
||||
|
||||
rv += rv2;
|
||||
rv2 = snprintf(&char_message_p[rv],MSC_MAX_MESSAGE_LENGTH - rv, "\n");
|
||||
|
||||
if ((0 > rv2) || ((MSC_MAX_MESSAGE_LENGTH - rv) < rv2)) {
|
||||
fprintf(stderr, "Error while logging MSC message : %s/%s", &g_msc_proto2str[proto1P][0], &g_msc_proto2str[proto2P][0]);
|
||||
goto error_event;
|
||||
}
|
||||
|
||||
rv += rv2;
|
||||
new_item_p->message_str = char_message_p;
|
||||
new_item_p->message_str_size = rv;
|
||||
new_item_p->message_bin = NULL; // TO DO
|
||||
new_item_p->message_bin_size = 0; // TO DO
|
||||
rv = lfds611_queue_enqueue( g_msc_message_queue_p, new_item_p );
|
||||
|
||||
if (0 == rv) {
|
||||
fprintf(stderr, "Error while lfds611_queue_guaranteed_enqueue message %s in MSC", char_message_p);
|
||||
rv = lfds611_stack_guaranteed_push( g_msc_memory_stack_p, char_message_p );
|
||||
free(new_item_p);
|
||||
}
|
||||
} else {
|
||||
fprintf(stderr, "Error while lfds611_stack_pop()\n");
|
||||
msc_flush_messages();
|
||||
}
|
||||
}
|
||||
|
||||
return;
|
||||
error_event:
|
||||
rv = lfds611_stack_guaranteed_push( g_msc_memory_stack_p, char_message_p );
|
||||
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;
|
||||
}
|
||||
@@ -1,131 +0,0 @@
|
||||
/*
|
||||
* Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The OpenAirInterface Software Alliance licenses this file to You under
|
||||
* the OAI Public License, Version 1.1 (the "License"); you may not use this file
|
||||
* except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.openairinterface.org/?page_id=698
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*-------------------------------------------------------------------------------
|
||||
* For more information about the OpenAirInterface (OAI) Software Alliance:
|
||||
* contact@openairinterface.org
|
||||
*/
|
||||
|
||||
#ifndef MSC_H_
|
||||
#define MSC_H_
|
||||
#include <stdarg.h>
|
||||
#include <stdint.h>
|
||||
|
||||
typedef enum {
|
||||
MIN_MSC_ENV = 0,
|
||||
MSC_E_UTRAN = MIN_MSC_ENV,
|
||||
MSC_E_UTRAN_LIPA,
|
||||
MSC_MME_GW,
|
||||
MSC_MME,
|
||||
MSC_SP_GW,
|
||||
MAX_MSC_ENV
|
||||
} msc_env_t;
|
||||
|
||||
|
||||
typedef enum {
|
||||
MIN_MSC_PROTOS = 0,
|
||||
MSC_IP_UE = MIN_MSC_PROTOS,
|
||||
MSC_NAS_UE,
|
||||
MSC_RRC_UE,
|
||||
MSC_PDCP_UE,
|
||||
MSC_RLC_UE,
|
||||
MSC_MAC_UE,
|
||||
MSC_PHY_UE,
|
||||
MSC_PHY_ENB,
|
||||
MSC_MAC_ENB,
|
||||
MSC_RLC_ENB,
|
||||
MSC_PDCP_ENB,
|
||||
MSC_PDCP_GNB,
|
||||
MSC_RRC_ENB,
|
||||
MSC_RRC_GNB,
|
||||
MSC_IP_ENB,
|
||||
MSC_S1AP_ENB,
|
||||
MSC_NGAP_GNB,
|
||||
MSC_GTPU_ENB,
|
||||
MSC_GTPU_GNB,
|
||||
MSC_GTPU_SGW,
|
||||
MSC_S1AP_MME,
|
||||
MSC_NGAP_AMF,
|
||||
MSC_MMEAPP_MME,
|
||||
MSC_NAS_MME,
|
||||
MSC_NAS_EMM_MME,
|
||||
MSC_NAS_ESM_MME,
|
||||
MSC_SP_GWAPP_MME,
|
||||
MSC_S11_MME,
|
||||
MSC_S6A_MME,
|
||||
MSC_HSS,
|
||||
MSC_F1AP_CU,
|
||||
MSC_F1AP_DU,
|
||||
MSC_X2AP_SRC_ENB,
|
||||
MSC_X2AP_TARGET_ENB,
|
||||
MAX_MSC_PROTOS,
|
||||
} msc_proto_t;
|
||||
|
||||
|
||||
|
||||
// Access stratum
|
||||
#define MSC_AS_TIME_FMT "%05u:%02u"
|
||||
|
||||
#define MSC_AS_TIME_ARGS(CTXT_Pp) \
|
||||
(CTXT_Pp)->frame, \
|
||||
(CTXT_Pp)->subframe
|
||||
|
||||
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);
|
||||
void msc_end(void);
|
||||
void msc_log_declare_proto(const msc_proto_t protoP);
|
||||
void msc_log_event(const msc_proto_t protoP,char *format, ...);
|
||||
void msc_log_message(
|
||||
const char *const message_operationP,
|
||||
const msc_proto_t receiverP,
|
||||
const msc_proto_t senderP,
|
||||
const uint8_t *const bytesP,
|
||||
const unsigned int num_bytes,
|
||||
char *format, ...);
|
||||
|
||||
#else
|
||||
|
||||
#define MESSAGE_CHART_GENERATOR msc_interface.msc_loaded
|
||||
|
||||
extern 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
|
||||
@@ -338,7 +338,6 @@ void *rrc_enb_process_msg(void *);
|
||||
TASK_DEF(TASK_RRC_NRUE, TASK_PRIORITY_MED, 200, NULL, NULL) \
|
||||
TASK_DEF(TASK_NAS_UE, TASK_PRIORITY_MED, 200, NULL, NULL) \
|
||||
TASK_DEF(TASK_RAL_UE, TASK_PRIORITY_MED, 200, NULL, NULL) \
|
||||
TASK_DEF(TASK_MSC, TASK_PRIORITY_MED, 200, NULL, NULL)\
|
||||
TASK_DEF(TASK_GTPV1_U, TASK_PRIORITY_MED, 1000,NULL, NULL)\
|
||||
TASK_DEF(OCP_GTPV1_U, TASK_PRIORITY_MED, 1000,NULL, NULL)\
|
||||
TASK_DEF(TASK_UDP, TASK_PRIORITY_MED, 1000, NULL, NULL)\
|
||||
@@ -560,7 +559,6 @@ MessageDef *itti_alloc_new_message_sized(
|
||||
This function should be called from the main thread after having created all ITTI tasks.
|
||||
**/
|
||||
void itti_wait_tasks_end(void);
|
||||
#define ADDED_QUEUES_MAX 10 // Fix me: MSC component too hard to understand, we keep room for 10 queues created dynamically
|
||||
void itti_set_task_real_time(task_id_t task_id);
|
||||
|
||||
/** \brief Send a termination message to all tasks.
|
||||
|
||||
@@ -62,7 +62,6 @@ component verbosity level enabled
|
||||
16 PERF: medium info N
|
||||
17 OIP: medium info N
|
||||
18 CLI: medium info N
|
||||
19 MSC: medium info N
|
||||
20 OCM: medium info N
|
||||
21 UDP: medium info N
|
||||
22 GTPV1U: medium info N
|
||||
|
||||
@@ -62,7 +62,6 @@ ITTI init, useMME: 1
|
||||
[0m[0m[TMR] Starting itti queue: TASK_RRC_UE as task 31
|
||||
[0m[0m[TMR] Starting itti queue: TASK_NAS_UE as task 32
|
||||
[0m[0m[TMR] Starting itti queue: TASK_RAL_UE as task 33
|
||||
[0m[0m[TMR] Starting itti queue: TASK_MSC as task 34
|
||||
[0m[0m[TMR] Starting itti queue: TASK_GTPV1_U as task 35
|
||||
[0m[0m[TMR] Starting itti queue: TASK_UDP as task 36
|
||||
[0m[0m[TMR] Starting itti queue: TASK_CU_F1 as task 37
|
||||
|
||||
@@ -58,7 +58,6 @@ CPU Freq is 3.092986
|
||||
[0m[0m[TMR] Starting itti queue: TASK_RRC_UE as task 31
|
||||
[0m[0m[TMR] Starting itti queue: TASK_NAS_UE as task 32
|
||||
[0m[0m[TMR] Starting itti queue: TASK_RAL_UE as task 33
|
||||
[0m[0m[TMR] Starting itti queue: TASK_MSC as task 34
|
||||
[0m[0m[TMR] Starting itti queue: TASK_GTPV1_U as task 35
|
||||
[0m[0m[TMR] Starting itti queue: TASK_UDP as task 36
|
||||
[0m[0m[TMR] Starting itti queue: TASK_CU_F1 as task 37
|
||||
|
||||
@@ -104,7 +104,6 @@
|
||||
#define CONFIG_HLP_LOGL "Set the global log level, valid options: (4:trace, 3:debug, 2:info, 1:warn, (0:error))\n"
|
||||
#define CONFIG_HLP_LOGV "Set the global log verbosity \n"
|
||||
#define CONFIG_HLP_TELN "Start embedded telnet server \n"
|
||||
#define CONFIG_HLP_MSC "Enable the MSC tracing utility \n"
|
||||
#define CONFIG_HLP_SNR "Set average SNR in dB (for --siml1 option)\n"
|
||||
#define CONFIG_HLP_NOS1 "Disable s1 interface\n"
|
||||
#define CONFIG_HLP_NOKRNMOD "(noS1 only): Use tun instead of namesh module \n"
|
||||
@@ -112,13 +111,11 @@
|
||||
/* command line parameters for LOG utility */
|
||||
/* optname helpstr paramflags XXXptr defXXXval type numelt */
|
||||
/*--------------------------------------------------------------------------------------------------------------------------------*/
|
||||
#define START_MSC softmodem_params.start_msc
|
||||
#define CMDLINE_LOGPARAMS_DESC_NR { \
|
||||
{"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}, \
|
||||
{"G" , CONFIG_HLP_LOGV, 0, uptr:&glog_verbosity, defintval:0, TYPE_UINT16, 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
|
||||
|
||||
@@ -29,8 +29,6 @@
|
||||
#undef MALLOC //there are two conflicting definitions, so we better make sure we don't use it at all
|
||||
#include <common/utils/assertions.h>
|
||||
|
||||
#include "msc.h"
|
||||
|
||||
#include "PHY/types.h"
|
||||
#include "common/ran_context.h"
|
||||
|
||||
@@ -684,7 +682,6 @@ int main( int argc, char **argv ) {
|
||||
cpuf=get_cpu_freq_GHz();
|
||||
itti_init(TASK_MAX, tasks_info);
|
||||
// initialize mscgen log after ITTI
|
||||
MSC_INIT(MSC_E_UTRAN, ADDED_QUEUES_MAX+TASK_MAX);
|
||||
init_opt();
|
||||
if(PDCP_USE_NETLINK && !IS_SOFTMODEM_NOS1) {
|
||||
netlink_init();
|
||||
|
||||
@@ -93,7 +93,6 @@ time_stats_t softmodem_stats_rx_sf; // total rx time
|
||||
// not used but needed for link
|
||||
openair0_config_t openair0_cfg[MAX_CARDS];
|
||||
uint16_t slot_ahead=6;
|
||||
msc_interface_t msc_interface;
|
||||
AGENT_RRC_xface *agent_rrc_xface[NUM_MAX_ENB];
|
||||
AGENT_MAC_xface *agent_mac_xface[NUM_MAX_ENB];
|
||||
int flexran_agent_start(mid_t mod_id) {
|
||||
|
||||
@@ -45,7 +45,6 @@
|
||||
static softmodem_params_t softmodem_params;
|
||||
char *parallel_config=NULL;
|
||||
char *worker_config=NULL;
|
||||
msc_interface_t msc_interface;
|
||||
int usrp_tx_thread = 0;
|
||||
|
||||
uint8_t nfapi_mode=0;
|
||||
|
||||
@@ -173,19 +173,16 @@ extern int usrp_tx_thread;
|
||||
#define CONFIG_HLP_LOGL "Set the global log level, valid options: (4:trace, 3:debug, 2:info, 1:warn, (0:error))\n"
|
||||
#define CONFIG_HLP_LOGV "Set the global log verbosity \n"
|
||||
#define CONFIG_HLP_TELN "Start embedded telnet server \n"
|
||||
#define CONFIG_HLP_MSC "Enable the MSC tracing utility \n"
|
||||
#define CONFIG_FLOG_OPT "R"
|
||||
#define CONFIG_LOGL_OPT "g"
|
||||
/*-------------------------------------------------------------------------------------------------------------------------------------------------*/
|
||||
/* command line parameters for LOG utility */
|
||||
/* optname helpstr paramflags XXXptr defXXXval type numelt */
|
||||
/*-------------------------------------------------------------------------------------------------------------------------------------------------*/
|
||||
#define START_MSC softmodem_params.start_msc
|
||||
#define CMDLINE_LOGPARAMS_DESC { \
|
||||
{CONFIG_FLOG_OPT , CONFIG_HLP_FLOG, 0, uptr:&online_log_messages, defintval:1, TYPE_INT, 0}, \
|
||||
{CONFIG_LOGL_OPT , 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}, \
|
||||
{"log-mem", NULL, 0, strptr:(char **)&logmem_filename, defstrval:NULL, TYPE_STRING, 0}, \
|
||||
{"telnetclt", NULL, 0, uptr:&start_telnetclt, defstrval:NULL, TYPE_UINT, 0}, \
|
||||
}
|
||||
@@ -250,7 +247,6 @@ typedef struct {
|
||||
int chain_offset;
|
||||
int numerology;
|
||||
int band;
|
||||
unsigned int start_msc;
|
||||
uint32_t clock_source;
|
||||
uint32_t timing_source;
|
||||
int hw_timing_advance;
|
||||
|
||||
@@ -415,10 +415,8 @@ int phy_init_lte_eNB(PHY_VARS_eNB *eNB,
|
||||
fp->prach_config_common.prach_ConfigInfo.zeroCorrelationZoneConfig,
|
||||
fp->prach_config_common.prach_ConfigInfo.prach_FreqOffset
|
||||
);
|
||||
LOG_D(PHY,"[MSC_NEW][FRAME 00000][PHY_eNB][MOD %02"PRIu8"][]\n", eNB->Mod_id);
|
||||
LOG_I (PHY, "[eNB %" PRIu8 "] Initializing DL_FRAME_PARMS : N_RB_DL %" PRIu8 ", PHICH Resource %d, PHICH Duration %d\n",
|
||||
eNB->Mod_id, fp->N_RB_DL, fp->phich_config_common.phich_resource, fp->phich_config_common.phich_duration);
|
||||
LOG_D (PHY, "[MSC_NEW][FRAME 00000][PHY_eNB][MOD %02" PRIu8 "][]\n", eNB->Mod_id);
|
||||
crcTableInit();
|
||||
lte_gold (fp, eNB->lte_gold_table, fp->Nid_cell);
|
||||
generate_pcfich_reg_mapping (fp);
|
||||
|
||||
@@ -104,7 +104,6 @@ int phy_init_nr_gNB(PHY_VARS_gNB *gNB,
|
||||
|
||||
load_dftslib();
|
||||
|
||||
LOG_D(PHY,"[MSC_NEW][FRAME 00000][PHY_gNB][MOD %02"PRIu8"][]\n", gNB->Mod_id);
|
||||
crcTableInit();
|
||||
init_scrambling_luts();
|
||||
init_pucch2_luts();
|
||||
|
||||
@@ -145,7 +145,6 @@ int init_nr_ue_signal(PHY_VARS_NR_UE *ue,
|
||||
int n_scid;
|
||||
abstraction_flag = 0;
|
||||
LOG_I(PHY, "Initializing UE vars (abstraction %u) for gNB TXant %u, UE RXant %u\n", abstraction_flag, fp->nb_antennas_tx, fp->nb_antennas_rx);
|
||||
//LOG_D(PHY,"[MSC_NEW][FRAME 00000][PHY_UE][MOD %02u][]\n", ue->Mod_id+NB_gNB_INST);
|
||||
phy_init_nr_top(ue);
|
||||
// many memory allocation sizes are hard coded
|
||||
AssertFatal( fp->nb_antennas_rx <= 4, "hard coded allocation for ue_common_vars->dl_ch_estimates[gNB_id]" );
|
||||
|
||||
@@ -55,7 +55,6 @@
|
||||
#include <string.h>
|
||||
#include <math.h>
|
||||
#include "common_lib.h"
|
||||
#include "msc.h"
|
||||
|
||||
#include "defs_common.h"
|
||||
#include "impl_defs_top.h"
|
||||
|
||||
@@ -54,7 +54,6 @@
|
||||
#include <string.h>
|
||||
#include <math.h>
|
||||
#include "common_lib.h"
|
||||
#include "msc.h"
|
||||
#include <common/utils/LOG/log.h>
|
||||
#include "assertions.h"
|
||||
|
||||
|
||||
@@ -55,7 +55,6 @@
|
||||
#include <unistd.h>
|
||||
|
||||
#include "common_lib.h"
|
||||
#include "msc.h"
|
||||
#include "defs_common.h"
|
||||
#include "defs_RU.h"
|
||||
#include "impl_defs_top.h"
|
||||
|
||||
@@ -44,7 +44,6 @@
|
||||
#include <string.h>
|
||||
#include <math.h>
|
||||
#include "common_lib.h"
|
||||
#include "msc.h"
|
||||
#include "fapi_nr_ue_interface.h"
|
||||
#include "assertions.h"
|
||||
|
||||
|
||||
@@ -43,7 +43,6 @@
|
||||
#include <nfapi/oai_integration/nfapi_pnf.h>
|
||||
|
||||
#include "assertions.h"
|
||||
#include "msc.h"
|
||||
|
||||
#include <time.h>
|
||||
|
||||
|
||||
@@ -40,7 +40,6 @@
|
||||
|
||||
|
||||
#include "assertions.h"
|
||||
#include "msc.h"
|
||||
|
||||
#include <time.h>
|
||||
|
||||
|
||||
@@ -69,7 +69,6 @@
|
||||
|
||||
#include "assertions.h"
|
||||
#include "common/utils/system.h"
|
||||
#include "msc.h"
|
||||
|
||||
#include <time.h>
|
||||
|
||||
|
||||
@@ -41,7 +41,6 @@
|
||||
|
||||
|
||||
#include "assertions.h"
|
||||
#include "msc.h"
|
||||
|
||||
#include <time.h>
|
||||
|
||||
|
||||
@@ -44,7 +44,6 @@
|
||||
#include "T.h"
|
||||
|
||||
#include "assertions.h"
|
||||
#include "msc.h"
|
||||
|
||||
#include <time.h>
|
||||
// RU OFDM Modulator gNodeB
|
||||
|
||||
@@ -44,7 +44,6 @@
|
||||
#include "executables/softmodem-common.h"
|
||||
|
||||
#include "assertions.h"
|
||||
#include "msc.h"
|
||||
|
||||
#include <time.h>
|
||||
|
||||
|
||||
@@ -72,13 +72,11 @@ openair0_config_t openair0_cfg[MAX_CARDS];
|
||||
uint64_t downlink_frequency[MAX_NUM_CCs][4];
|
||||
int32_t uplink_frequency_offset[MAX_NUM_CCs][4];
|
||||
uint16_t sl_ahead = 0;
|
||||
msc_interface_t msc_interface;
|
||||
uint32_t N_RB_DL = 106;
|
||||
|
||||
//void dump_nr_prach_config(NR_DL_FRAME_PARMS *frame_parms,uint8_t subframe);
|
||||
|
||||
/* temporary dummy implem of get_softmodem_optmask, till basic simulators implemented as device */
|
||||
msc_interface_t msc_interface;
|
||||
uint64_t get_softmodem_optmask(void) {return 0;}
|
||||
softmodem_params_t *get_softmodem_params(void) {return 0;}
|
||||
int oai_nfapi_dl_tti_req(nfapi_nr_dl_tti_request_t *dl_config_req) { return(0); }
|
||||
|
||||
@@ -357,7 +357,6 @@
|
||||
#include <arpa/inet.h>
|
||||
#include "T.h"
|
||||
#include "common/ran_context.h"
|
||||
#include "msc.h"
|
||||
|
||||
/* Checking version of ASN1C compiler */
|
||||
#if (ASN1C_ENVIRONMENT_VERSION < ASN1C_MINIMUM_VERSION)
|
||||
|
||||
@@ -481,14 +481,6 @@ int DU_handle_F1_SETUP_RESPONSE(instance_t instance,
|
||||
for (int i=0; i<num_cells_to_activate; i++)
|
||||
AssertFatal(F1AP_SETUP_RESP (msg_p).cells_to_activate[i].num_SI > 0, "System Information %d is missing",i);
|
||||
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
MSC_F1AP_DU,
|
||||
MSC_F1AP_CU,
|
||||
0,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" DU_handle_F1_SETUP_RESPONSE successfulOutcome assoc_id %d",
|
||||
0,0,//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
assoc_id);
|
||||
LOG_D(F1AP, "Sending F1AP_SETUP_RESP ITTI message\n");
|
||||
itti_send_msg_to_task(TASK_F1APP, GNB_MODULE_ID_TO_INSTANCE(assoc_id), msg_p);
|
||||
return 0;
|
||||
@@ -910,14 +902,6 @@ int DU_handle_gNB_CU_CONFIGURATION_UPDATE(instance_t instance,
|
||||
AssertFatal(TransactionId!=-1,"TransactionId was not sent\n");
|
||||
LOG_D(F1AP,"F1AP: num_cells_to_activate %d\n",num_cells_to_activate);
|
||||
F1AP_GNB_CU_CONFIGURATION_UPDATE (msg_p).num_cells_to_activate = num_cells_to_activate;
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
MSC_F1AP_DU,
|
||||
MSC_F1AP_CU,
|
||||
0,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" DU_handle_GNB_CU_CONFIGURATION_UPDATE initiatingMessage assoc_id %d",
|
||||
0,0,//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
assoc_id);
|
||||
LOG_D(F1AP, "Sending F1AP_GNB_CU_CONFIGURATION_UPDATE ITTI message \n");
|
||||
itti_send_msg_to_task(TASK_F1APP, GNB_MODULE_ID_TO_INSTANCE(assoc_id), msg_p);
|
||||
return 0;
|
||||
|
||||
@@ -34,7 +34,6 @@
|
||||
|
||||
#include "assertions.h"
|
||||
#include "platform_types.h"
|
||||
#include "msc.h"
|
||||
|
||||
#include "LAYER2/MAC/mac.h"
|
||||
#include "LAYER2/MAC/mac_extern.h"
|
||||
@@ -1421,8 +1420,6 @@ cancel_ra_proc(module_id_t module_idP, int CC_id, frame_t frameP,
|
||||
rnti_t rnti) {
|
||||
unsigned char i;
|
||||
RA_t *ra = (RA_t *) & RC.mac[module_idP]->common_channels[CC_id].ra[0];
|
||||
MSC_LOG_EVENT(MSC_PHY_ENB, "RA Cancelling procedure ue %" PRIx16 " ",
|
||||
rnti);
|
||||
LOG_D(MAC,
|
||||
"[eNB %d][RAPROC] CC_id %d Frame %d Cancelling RA procedure for UE rnti %x\n",
|
||||
module_idP, CC_id, frameP, rnti);
|
||||
|
||||
@@ -215,7 +215,6 @@ void mac_init_cell_params(int Mod_idP, int CC_idP)
|
||||
int j;
|
||||
UE_TEMPLATE *UE_template;
|
||||
|
||||
LOG_D(MAC, "[MSC_NEW][FRAME 00000][MAC_eNB][MOD %02d][]\n", Mod_idP);
|
||||
//COMMON_channels_t *cc = &RC.mac[Mod_idP]->common_channels[CC_idP];
|
||||
|
||||
memset(&RC.mac[Mod_idP]->eNB_stats, 0, sizeof(eNB_STATS));
|
||||
|
||||
@@ -348,7 +348,7 @@ PRACH_RESOURCES_t *ue_get_rach(module_id_t module_idP, int CC_id,
|
||||
Size16 = (uint16_t) Size;
|
||||
// LOG_D(MAC,"[UE %d] Frame %d: Requested RRCConnectionRequest, got %d bytes\n",module_idP,frameP,Size);
|
||||
LOG_I(RRC,
|
||||
"[MSC_MSG][FRAME %05d][RRC_UE][MOD %02d][][--- MAC_DATA_REQ (RRCConnectionRequest eNB %d) --->][MAC_UE][MOD %02d][]\n",
|
||||
"[FRAME %05d][RRC_UE][MOD %02d][][--- MAC_DATA_REQ (RRCConnectionRequest eNB %d) --->][MAC_UE][MOD %02d][]\n",
|
||||
frameP, module_idP, eNB_indexP, module_idP);
|
||||
LOG_I(MAC,
|
||||
"[UE %d] Frame %d: Requested RRCConnectionRequest, got %d bytes\n",
|
||||
|
||||
@@ -48,7 +48,6 @@
|
||||
#include "platform_constants.h"
|
||||
#include "nfapi/oai_integration/vendor_ext.h"
|
||||
#include "common/utils/LOG/vcd_signal_dumper.h"
|
||||
#include "msc.h"
|
||||
#include "common/ngran_types.h"
|
||||
#include "targets/COMMON/openairinterface5g_limits.h"
|
||||
#include "targets/RT/USER/lte-softmodem.h"
|
||||
@@ -1058,14 +1057,6 @@ pdcp_data_ind(
|
||||
ctxt_pP->rnti,
|
||||
rb_id + 4,
|
||||
sdu_buffer_sizeP - payload_offset );
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_PDCP_ENB,
|
||||
MSC_GTPU_ENB,
|
||||
NULL,0,
|
||||
"0 GTPV1U_ENB_TUNNEL_DATA_REQ ue %x rab %u len %u",
|
||||
ctxt_pP->rnti,
|
||||
rb_id + 4,
|
||||
sdu_buffer_sizeP - payload_offset);
|
||||
//LOG_T(PDCP,"Sending to GTPV1U %d bytes\n", sdu_buffer_sizeP - payload_offset);
|
||||
gtpu_buffer_p = itti_malloc(TASK_PDCP_ENB, TASK_GTPV1_U,
|
||||
sdu_buffer_sizeP - payload_offset + GTPU_HEADER_OVERHEAD_MAX);
|
||||
@@ -2228,20 +2219,6 @@ pdcp_config_set_security(
|
||||
pdcp_pP->kUPenc = kUPenc;
|
||||
/* Activate security */
|
||||
pdcp_pP->security_activated = 1;
|
||||
MSC_LOG_EVENT(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_PDCP_ENB:MSC_PDCP_UE,
|
||||
"0 Set security ciph %X integ %x UE %"PRIx16" ",
|
||||
pdcp_pP->cipheringAlgorithm,
|
||||
pdcp_pP->integrityProtAlgorithm,
|
||||
ctxt_pP->rnti);
|
||||
} else {
|
||||
MSC_LOG_EVENT(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_PDCP_ENB:MSC_PDCP_UE,
|
||||
"0 Set security failed UE %"PRIx16" ",
|
||||
ctxt_pP->rnti);
|
||||
LOG_E(PDCP,PROTOCOL_PDCP_CTXT_FMT" bad security mode %d",
|
||||
PROTOCOL_PDCP_CTXT_ARGS(ctxt_pP,pdcp_pP),
|
||||
security_modeP);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -58,7 +58,6 @@ extern int otg_enabled;
|
||||
#include "nfapi/oai_integration/vendor_ext.h"
|
||||
#include "common/utils/LOG/vcd_signal_dumper.h"
|
||||
#include "platform_constants.h"
|
||||
#include "msc.h"
|
||||
#include "pdcp.h"
|
||||
|
||||
#include "assertions.h"
|
||||
@@ -343,12 +342,6 @@ int pdcp_fifo_read_input_mbms_sdus_fromtun (const protocol_ctxt_t *const ctxt_p
|
||||
LOG_D(PDCP, "[FRAME %5u][UE][IP][INSTANCE %ld][RB %ld][--- PDCP_DATA_REQ / %d Bytes --->][PDCP][MOD %u][UE %04x][RB %ld]\n",
|
||||
ctxt.frame, ctxt.instance, rab_id, len, ctxt.module_id,
|
||||
ctxt.rnti, rab_id);
|
||||
MSC_LOG_RX_MESSAGE((ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_PDCP_ENB:MSC_PDCP_UE,
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_IP_ENB:MSC_IP_UE,
|
||||
NULL, 0,
|
||||
MSC_AS_TIME_FMT" DATA-REQ inst %u rb %u rab %u size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ctxt.instance, rab_id, rab_id, len);
|
||||
pdcp_data_req(
|
||||
&ctxt,
|
||||
SRB_FLAG_NO,
|
||||
@@ -368,14 +361,6 @@ int pdcp_fifo_read_input_mbms_sdus_fromtun (const protocol_ctxt_t *const ctxt_p
|
||||
// , NULL, NULL
|
||||
// );
|
||||
} else {
|
||||
MSC_LOG_RX_DISCARDED_MESSAGE(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_PDCP_ENB:MSC_PDCP_UE,
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_IP_ENB:MSC_IP_UE,
|
||||
NULL,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" DATA-REQ inst %u rb %u rab %u size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ctxt.instance, rab_id, rab_id, len);
|
||||
LOG_D(PDCP,
|
||||
"[FRAME %5u][UE][IP][INSTANCE %ld][RB %ld][--- PDCP_DATA_REQ / %d Bytes ---X][PDCP][MOD %u][UE %04x][RB %ld] NON INSTANCIATED INSTANCE key 0x%"PRIx64", DROPPED\n",
|
||||
ctxt.frame, ctxt.instance, rab_id, len, ctxt.module_id,
|
||||
@@ -566,17 +551,6 @@ int pdcp_fifo_read_input_sdus_fromnetlinksock (const protocol_ctxt_t *const ctx
|
||||
(NFAPI_MODE == NFAPI_UE_STUB_PNF || NFAPI_MODE == NFAPI_MODE_STANDALONE_PNF) ? NULL : &pdcp_read_header_g.destinationL2Id
|
||||
);
|
||||
} else { /* else of h_rc == HASH_TABLE_OK */
|
||||
MSC_LOG_RX_DISCARDED_MESSAGE(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_PDCP_ENB:MSC_PDCP_UE,
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_IP_ENB:MSC_IP_UE,
|
||||
NULL,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" DATA-REQ inst %u rb %u rab %u size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
pdcp_read_header_g.inst,
|
||||
pdcp_read_header_g.rb_id,
|
||||
rab_id,
|
||||
pdcp_read_header_g.data_size);
|
||||
LOG_D(PDCP,
|
||||
"[FRAME %5u][UE][IP][INSTANCE %u][RB %ld][--- PDCP_DATA_REQ / %d Bytes ---X][PDCP][MOD %u][UE %u][RB %ld] NON INSTANCIATED INSTANCE key 0x%"PRIx64", DROPPED\n",
|
||||
ctxt.frame,
|
||||
@@ -739,17 +713,6 @@ void pdcp_fifo_read_input_sdus_frompc5s (const protocol_ctxt_t *const ctxt_pP)
|
||||
ctxt.module_id,
|
||||
ctxt.rnti,
|
||||
rab_id);
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_PDCP_ENB:MSC_PDCP_UE,
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_IP_ENB:MSC_IP_UE,
|
||||
NULL,
|
||||
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,
|
||||
rab_id,
|
||||
pc5s_header->data_size);
|
||||
/* pointers to pc5s_header fields possibly not aligned because pc5s_header points to a packed structure
|
||||
* Using these possibly unaligned pointers in a function call may trigger alignment errors at run time and
|
||||
* gcc, from v9, now warns about it. fix these warnings by using local variables
|
||||
@@ -771,17 +734,6 @@ void pdcp_fifo_read_input_sdus_frompc5s (const protocol_ctxt_t *const ctxt_pP)
|
||||
pc5s_header->sourceL2Id = sourceL2Id;
|
||||
pc5s_header->destinationL2Id=destinationL2Id;
|
||||
} else { /* else of h_rc == HASH_TABLE_OK */
|
||||
MSC_LOG_RX_DISCARDED_MESSAGE(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_PDCP_ENB:MSC_PDCP_UE,
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_IP_ENB:MSC_IP_UE,
|
||||
NULL,
|
||||
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,
|
||||
rab_id,
|
||||
pc5s_header->data_size);
|
||||
LOG_D(PDCP,
|
||||
"[FRAME %5u][UE][IP][INSTANCE %u][RB %ld][--- PDCP_DATA_REQ / %d Bytes ---X][PDCP][MOD %u][UE %u][RB %ld] NON INSTANCIATED INSTANCE key 0x%"PRIx64", DROPPED\n",
|
||||
ctxt.frame,
|
||||
@@ -803,16 +755,6 @@ void pdcp_fifo_read_input_sdus_frompc5s (const protocol_ctxt_t *const ctxt_pP)
|
||||
ctxt.module_id,
|
||||
ctxt.rnti,
|
||||
DEFAULT_RAB_ID);
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_PDCP_ENB:MSC_PDCP_UE,
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_IP_ENB:MSC_IP_UE,
|
||||
NULL,0,
|
||||
MSC_AS_TIME_FMT" DATA-REQ inst %u rb %u default rab %u size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
pc5s_header->inst,
|
||||
pc5s_header->rb_id,
|
||||
DEFAULT_RAB_ID,
|
||||
pc5s_header->data_size);
|
||||
/* pointers to pc5s_header fields possibly not aligned because pc5s_header points to a packed structure
|
||||
* Using these possibly unaligned pointers in a function call may trigger alignment errors at run time and
|
||||
* gcc, from v9, now warns about it. fix these warnings by using local variables
|
||||
|
||||
@@ -60,7 +60,6 @@
|
||||
|
||||
#include "pdcp.h"
|
||||
#include "pdcp_primitives.h"
|
||||
#include "msc.h"
|
||||
|
||||
|
||||
#define PDCP_QUEUE_NB_ELEMENTS 200
|
||||
@@ -187,7 +186,6 @@ void *pdcp_netlink_thread_fct(void *arg)
|
||||
pdcp_thread_read_state = 0;
|
||||
memset(nl_rx_buf, 0, NL_MAX_PAYLOAD);
|
||||
LOG_I(PDCP, "[NETLINK_THREAD] binding to fd %d\n",nas_sock_fd);
|
||||
MSC_START_USE();
|
||||
|
||||
while (1) {
|
||||
len = recvmsg(nas_sock_fd, &nas_msg_rx, 0);
|
||||
|
||||
@@ -37,7 +37,6 @@
|
||||
#include "LAYER2/MAC/mac_extern.h"
|
||||
|
||||
#include "pdcp.h"
|
||||
#include "msc.h"
|
||||
#include "pdcp_primitives.h"
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
@@ -223,11 +222,6 @@ pdcp_validate_security(
|
||||
if (stream_check_integrity(pdcp_pP->integrityProtAlgorithm,
|
||||
&decrypt_params,
|
||||
&pdcp_pdu_buffer[sdu_buffer_size]) != 0) {
|
||||
MSC_LOG_EVENT(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_PDCP_ENB:MSC_PDCP_UE,
|
||||
" Security: failed MAC-I Algo %X UE %"PRIx16" ",
|
||||
pdcp_pP->integrityProtAlgorithm,
|
||||
ctxt_pP->rnti);
|
||||
LOG_E(PDCP, "[OSA][RB %ld] %s failed to validate MAC-I (key %llx) of incoming PDU\n",
|
||||
rb_id, (pdcp_pP->is_ue != 0) ? "UE" : "eNB",((long long unsigned int*)decrypt_params.key)[0]);
|
||||
VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME(VCD_SIGNAL_DUMPER_FUNCTIONS_PDCP_VALIDATE_SECURITY, VCD_FUNCTION_OUT);
|
||||
|
||||
@@ -27,7 +27,6 @@
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
#include "assertions.h"
|
||||
#include "msc.h"
|
||||
#include "hashtable.h"
|
||||
#include "rlc_am.h"
|
||||
#include "rlc_am_segment.h"
|
||||
@@ -238,17 +237,6 @@ void config_req_rlc_am_asn1 (
|
||||
(config_am_pP->ul_AM_RLC.t_PollRetransmit<LTE_T_PollRetransmit_spare5) &&
|
||||
(config_am_pP->dl_AM_RLC.t_Reordering<32) &&
|
||||
(config_am_pP->dl_AM_RLC.t_StatusProhibit<LTE_T_StatusProhibit_spare2) ) {
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RRC_ENB:MSC_RRC_UE,
|
||||
NULL,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" "PROTOCOL_RLC_AM_MSC_FMT" CONFIG-REQ t_PollRetx %u t_Reord %u t_StatusPro %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
PROTOCOL_RLC_AM_MSC_ARGS(ctxt_pP, l_rlc_p),
|
||||
PollRetransmit_tab[config_am_pP->ul_AM_RLC.t_PollRetransmit],
|
||||
am_t_Reordering_tab[config_am_pP->dl_AM_RLC.t_Reordering],
|
||||
t_StatusProhibit_tab[config_am_pP->dl_AM_RLC.t_StatusProhibit]);
|
||||
LOG_D(RLC, PROTOCOL_RLC_AM_CTXT_FMT" CONFIG_REQ (max_retx_threshold=%d poll_pdu=%d poll_byte=%d t_poll_retransmit=%d t_reord=%d t_status_prohibit=%d)\n",
|
||||
PROTOCOL_RLC_AM_CTXT_ARGS(ctxt_pP,l_rlc_p),
|
||||
maxRetxThreshold_tab[config_am_pP->ul_AM_RLC.maxRetxThreshold],
|
||||
@@ -267,14 +255,6 @@ void config_req_rlc_am_asn1 (
|
||||
am_t_Reordering_tab[config_am_pP->dl_AM_RLC.t_Reordering],
|
||||
t_StatusProhibit_tab[config_am_pP->dl_AM_RLC.t_StatusProhibit]);
|
||||
} else {
|
||||
MSC_LOG_RX_DISCARDED_MESSAGE(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RRC_ENB:MSC_RRC_UE,
|
||||
NULL,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" "PROTOCOL_RLC_AM_MSC_FMT" CONFIG-REQ",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
PROTOCOL_RLC_AM_MSC_ARGS(ctxt_pP, l_rlc_p));
|
||||
LOG_D(RLC,
|
||||
PROTOCOL_RLC_AM_CTXT_FMT"ILLEGAL CONFIG_REQ (max_retx_threshold=%ld poll_pdu=%ld poll_byte=%ld t_poll_retransmit=%ld t_reord=%ld t_status_prohibit=%ld), RLC-AM NOT CONFIGURED\n",
|
||||
PROTOCOL_RLC_AM_CTXT_ARGS(ctxt_pP,l_rlc_p),
|
||||
@@ -537,27 +517,6 @@ rlc_am_mac_status_indication (
|
||||
}
|
||||
}
|
||||
|
||||
if (MESSAGE_CHART_GENERATOR) {
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_MAC_ENB:MSC_MAC_UE,
|
||||
NULL,0,
|
||||
MSC_AS_TIME_FMT" "PROTOCOL_RLC_AM_MSC_FMT" STATUS-IND %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
PROTOCOL_RLC_AM_MSC_ARGS(ctxt_pP, rlc));
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_MAC_ENB:MSC_MAC_UE,
|
||||
NULL,0,
|
||||
MSC_AS_TIME_FMT" "PROTOCOL_RLC_AM_MSC_FMT" STATUS-RESP BO:%u/n%u(%u) %s sdu remain %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
PROTOCOL_RLC_AM_MSC_ARGS(ctxt_pP, rlc),
|
||||
status_resp.buffer_occupancy_in_bytes,
|
||||
status_resp.buffer_occupancy_in_pdus,rlc->nb_sdu,
|
||||
(status_resp.head_sdu_is_segmented)?"sdu seg":"sdu not seg",
|
||||
status_resp.head_sdu_remaining_size_to_send);
|
||||
}
|
||||
|
||||
if (LOG_DEBUGFLAG(DEBUG_RLC)) {
|
||||
LOG_UI(RLC, PROTOCOL_RLC_AM_CTXT_FMT" MAC_STATUS_INDICATION (DATA) -> %d bytes\n",
|
||||
PROTOCOL_RLC_AM_CTXT_ARGS(ctxt_pP,rlc),
|
||||
@@ -610,7 +569,7 @@ rlc_am_mac_data_request (
|
||||
|
||||
data_req.rlc_info.rlc_protocol_state = l_rlc_p->protocol_state;
|
||||
|
||||
if ( (MESSAGE_CHART_GENERATOR || LOG_DEBUGFLAG(DEBUG_RLC))&& data_req.data.nb_elements > 0) {
|
||||
if ( (LOG_DEBUGFLAG(DEBUG_RLC))&& data_req.data.nb_elements > 0) {
|
||||
tb_p = data_req.data.head;
|
||||
|
||||
while (tb_p != NULL) {
|
||||
@@ -619,39 +578,6 @@ rlc_am_mac_data_request (
|
||||
|
||||
if ((((struct mac_tb_req *) (tb_p->data))->data_ptr[0] & RLC_DC_MASK) == RLC_DC_DATA_PDU ) {
|
||||
if (rlc_am_get_data_pdu_infos(ctxt_pP,l_rlc_p,rlc_am_pdu_sn_10_p, tb_size_in_bytes, &pdu_info) >= 0) {
|
||||
if (MESSAGE_CHART_GENERATOR) {
|
||||
message_string_size = 0;
|
||||
message_string_size += sprintf(&message_string[message_string_size],
|
||||
MSC_AS_TIME_FMT" "PROTOCOL_RLC_AM_MSC_FMT" DATA SN %u size %u RF %u P %u FI %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
PROTOCOL_RLC_AM_MSC_ARGS(ctxt_pP, l_rlc_p),
|
||||
pdu_info.sn,
|
||||
tb_size_in_bytes,
|
||||
pdu_info.rf,
|
||||
pdu_info.p,
|
||||
pdu_info.fi);
|
||||
|
||||
if (pdu_info.rf) {
|
||||
message_string_size += sprintf(&message_string[message_string_size], " LSF %u\n", pdu_info.lsf);
|
||||
message_string_size += sprintf(&message_string[message_string_size], " SO %u\n", pdu_info.so);
|
||||
}
|
||||
|
||||
if (pdu_info.e) {
|
||||
message_string_size += sprintf(&message_string[message_string_size], "| HE:");
|
||||
|
||||
for (index=0; index < pdu_info.num_li; index++) {
|
||||
message_string_size += sprintf(&message_string[message_string_size], " LI %u", pdu_info.li_list[index]);
|
||||
}
|
||||
}
|
||||
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_UE:MSC_RLC_ENB,
|
||||
(char *)rlc_am_pdu_sn_10_p,
|
||||
tb_size_in_bytes,
|
||||
message_string);
|
||||
}
|
||||
|
||||
if ( LOG_DEBUGFLAG(DEBUG_RLC)) {
|
||||
message_string_size = 0;
|
||||
message_string_size += sprintf(&message_string[message_string_size], "Bearer : %ld\n", l_rlc_p->rb_id);
|
||||
@@ -723,34 +649,6 @@ rlc_am_mac_data_request (
|
||||
if (rlc_am_get_control_pdu_infos(rlc_am_pdu_sn_10_p, &tb_size_in_bytes, &l_rlc_p->control_pdu_info) >= 0) {
|
||||
tb_size_in_bytes = ((struct mac_tb_req *) (tb_p->data))->tb_size; //tb_size_in_bytes modified by rlc_am_get_control_pdu_infos!
|
||||
|
||||
if (MESSAGE_CHART_GENERATOR ) {
|
||||
message_string_size = 0;
|
||||
message_string_size += sprintf(&message_string[message_string_size],
|
||||
MSC_AS_TIME_FMT" "PROTOCOL_RLC_AM_MSC_FMT" STATUS ACK_SN %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
PROTOCOL_RLC_AM_MSC_ARGS(ctxt_pP, l_rlc_p),
|
||||
l_rlc_p->control_pdu_info.ack_sn);
|
||||
|
||||
for (num_nack = 0; num_nack < l_rlc_p->control_pdu_info.num_nack; num_nack++) {
|
||||
if (l_rlc_p->control_pdu_info.nack_list[num_nack].e2) {
|
||||
message_string_size += sprintf(&message_string[message_string_size], " NACK SN %u SO START %u SO END %u",
|
||||
l_rlc_p->control_pdu_info.nack_list[num_nack].nack_sn,
|
||||
l_rlc_p->control_pdu_info.nack_list[num_nack].so_start,
|
||||
l_rlc_p->control_pdu_info.nack_list[num_nack].so_end);
|
||||
} else {
|
||||
message_string_size += sprintf(&message_string[message_string_size], " NACK SN %u",
|
||||
l_rlc_p->control_pdu_info.nack_list[num_nack].nack_sn);
|
||||
}
|
||||
}
|
||||
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_UE:MSC_RLC_ENB,
|
||||
(char *)rlc_am_pdu_sn_10_p,
|
||||
tb_size_in_bytes,
|
||||
message_string);
|
||||
}
|
||||
|
||||
if ( LOG_DEBUGFLAG(DEBUG_RLC)) {
|
||||
message_string_size = 0;
|
||||
message_string_size += sprintf(&message_string[message_string_size], "Bearer : %ld\n", l_rlc_p->rb_id);
|
||||
@@ -780,7 +678,7 @@ rlc_am_mac_data_request (
|
||||
|
||||
tb_p = tb_p->next;
|
||||
} /* while */
|
||||
} /* MESSAGE_CHART_GENERATOR && data_req.data.nb_elements > 0 */
|
||||
} /* data_req.data.nb_elements > 0 */
|
||||
|
||||
data_req.buffer_occupancy_in_pdus = 0;
|
||||
return data_req;
|
||||
@@ -812,7 +710,7 @@ rlc_am_mac_data_indication (
|
||||
(void)index;
|
||||
(void)l_rlc_p; /* avoid gcc warning "unused variable" */
|
||||
|
||||
if ( LOG_DEBUGFLAG(DEBUG_RLC) || MESSAGE_CHART_GENERATOR ) {
|
||||
if ( LOG_DEBUGFLAG(DEBUG_RLC)) {
|
||||
if (data_indP.data.nb_elements > 0) {
|
||||
tb_p = data_indP.data.head;
|
||||
|
||||
@@ -822,39 +720,6 @@ rlc_am_mac_data_indication (
|
||||
|
||||
if ((((struct mac_tb_ind *) (tb_p->data))->data_ptr[0] & RLC_DC_MASK) == RLC_DC_DATA_PDU ) {
|
||||
if (rlc_am_get_data_pdu_infos(ctxt_pP,l_rlc_p,rlc_am_pdu_sn_10_p, tb_size_in_bytes, &pdu_info) >= 0) {
|
||||
if (MESSAGE_CHART_GENERATOR) {
|
||||
message_string_size = 0;
|
||||
message_string_size += sprintf(&message_string[message_string_size],
|
||||
MSC_AS_TIME_FMT" "PROTOCOL_RLC_AM_MSC_FMT" DATA SN %u size %u RF %u P %u FI %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
PROTOCOL_RLC_AM_MSC_ARGS(ctxt_pP, l_rlc_p),
|
||||
pdu_info.sn,
|
||||
tb_size_in_bytes,
|
||||
pdu_info.rf,
|
||||
pdu_info.p,
|
||||
pdu_info.fi);
|
||||
|
||||
if (pdu_info.rf) {
|
||||
message_string_size += sprintf(&message_string[message_string_size], " LSF %u\n", pdu_info.lsf);
|
||||
message_string_size += sprintf(&message_string[message_string_size], " SO %u\n", pdu_info.so);
|
||||
}
|
||||
|
||||
if (pdu_info.e) {
|
||||
message_string_size += sprintf(&message_string[message_string_size], "| HE:");
|
||||
|
||||
for (index=0; index < pdu_info.num_li; index++) {
|
||||
message_string_size += sprintf(&message_string[message_string_size], " LI %u", pdu_info.li_list[index]);
|
||||
}
|
||||
}
|
||||
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_UE:MSC_RLC_ENB,
|
||||
(char *)rlc_am_pdu_sn_10_p,
|
||||
tb_size_in_bytes,
|
||||
message_string);
|
||||
}
|
||||
|
||||
if ( LOG_DEBUGFLAG(DEBUG_RLC)) {
|
||||
message_string_size += sprintf(&message_string[message_string_size], "Bearer : %ld\n", l_rlc_p->rb_id);
|
||||
message_string_size += sprintf(&message_string[message_string_size], "PDU size : %u\n", tb_size_in_bytes);
|
||||
@@ -923,34 +788,6 @@ rlc_am_mac_data_indication (
|
||||
}
|
||||
} else {
|
||||
if (rlc_am_get_control_pdu_infos(rlc_am_pdu_sn_10_p, &tb_size_in_bytes, &l_rlc_p->control_pdu_info) >= 0) {
|
||||
if (MESSAGE_CHART_GENERATOR) {
|
||||
message_string_size = 0;
|
||||
message_string_size += sprintf(&message_string[message_string_size],
|
||||
MSC_AS_TIME_FMT" "PROTOCOL_RLC_AM_MSC_FMT" STATUS size ACK_SN %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
PROTOCOL_RLC_AM_MSC_ARGS(ctxt_pP, l_rlc_p),
|
||||
l_rlc_p->control_pdu_info.ack_sn);
|
||||
|
||||
for (num_nack = 0; num_nack < l_rlc_p->control_pdu_info.num_nack; num_nack++) {
|
||||
if (l_rlc_p->control_pdu_info.nack_list[num_nack].e2) {
|
||||
message_string_size += sprintf(&message_string[message_string_size], " NACK SN %u SO START %u SO END %u",
|
||||
l_rlc_p->control_pdu_info.nack_list[num_nack].nack_sn,
|
||||
l_rlc_p->control_pdu_info.nack_list[num_nack].so_start,
|
||||
l_rlc_p->control_pdu_info.nack_list[num_nack].so_end);
|
||||
} else {
|
||||
message_string_size += sprintf(&message_string[message_string_size], " NACK SN %u",
|
||||
l_rlc_p->control_pdu_info.nack_list[num_nack].nack_sn);
|
||||
}
|
||||
}
|
||||
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_UE:MSC_RLC_ENB,
|
||||
(char *)rlc_am_pdu_sn_10_p,
|
||||
tb_size_in_bytes,
|
||||
message_string);
|
||||
}
|
||||
|
||||
if ( LOG_DEBUGFLAG(DEBUG_RLC)) {
|
||||
message_string_size = 0;
|
||||
message_string_size += sprintf(&message_string[message_string_size], "Bearer : %ld\n", l_rlc_p->rb_id);
|
||||
@@ -1009,16 +846,6 @@ rlc_am_data_req (
|
||||
mui = ((struct rlc_am_data_req *) (sdu_pP->data))->mui;
|
||||
data_offset = ((struct rlc_am_data_req *) (sdu_pP->data))->data_offset;
|
||||
data_size = ((struct rlc_am_data_req *) (sdu_pP->data))->data_size;
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_PDCP_ENB:MSC_PDCP_UE,
|
||||
(const char *)(&sdu_pP->data[data_offset]),
|
||||
data_size,
|
||||
MSC_AS_TIME_FMT" "PROTOCOL_RLC_AM_MSC_FMT" DATA-REQ size %u mui %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
PROTOCOL_RLC_AM_MSC_ARGS(ctxt_pP, l_rlc_p),
|
||||
data_size,
|
||||
mui);
|
||||
|
||||
if (LOG_DEBUGFLAG(DEBUG_RLC)) {
|
||||
message_string_size += sprintf(&message_string[message_string_size], "Bearer : %ld\n", l_rlc_p->rb_id);
|
||||
@@ -1094,22 +921,6 @@ rlc_am_data_req (
|
||||
l_rlc_p->vt_s);
|
||||
}
|
||||
} else {
|
||||
if( MESSAGE_CHART_GENERATOR) {
|
||||
mui = ((struct rlc_am_data_req *) (sdu_pP->data))->mui;
|
||||
data_offset = ((struct rlc_am_data_req *) (sdu_pP->data))->data_offset;
|
||||
data_size = ((struct rlc_am_data_req *) (sdu_pP->data))->data_size;
|
||||
MSC_LOG_RX_DISCARDED_MESSAGE(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_PDCP_ENB:MSC_PDCP_UE,
|
||||
(const char *)(&sdu_pP->data[data_offset]),
|
||||
data_size,
|
||||
MSC_AS_TIME_FMT" "PROTOCOL_RLC_AM_MSC_FMT" DATA-REQ size %u mui %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
PROTOCOL_RLC_AM_MSC_ARGS(ctxt_pP, l_rlc_p),
|
||||
data_size,
|
||||
mui);
|
||||
}
|
||||
|
||||
LOG_W(RLC, PROTOCOL_RLC_AM_CTXT_FMT" RLC_AM_DATA_REQ BUFFER FULL, NB SDU %d current_sdu_index=%d next_sdu_index=%d size_input_sdus_buffer=%d vtA=%d vtS=%d\n",
|
||||
PROTOCOL_RLC_AM_CTXT_ARGS(ctxt_pP,l_rlc_p),
|
||||
l_rlc_p->nb_sdu,
|
||||
|
||||
@@ -78,16 +78,7 @@
|
||||
int pmtl_rc = pthread_mutex_trylock(mUTEX);\
|
||||
if (pmtl_rc != 0){\
|
||||
if (pmtl_rc == EBUSY) {\
|
||||
MSC_LOG_EVENT((cTXT->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,\
|
||||
"0 " PROTOCOL_RLC_AM_MSC_FMT " Warning try lock %s busy",\
|
||||
PROTOCOL_RLC_AM_MSC_ARGS(cTXT,rLC),\
|
||||
#mUTEX);\
|
||||
pthread_mutex_lock(mUTEX);\
|
||||
} else {\
|
||||
MSC_LOG_EVENT((cTXT->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,\
|
||||
"0 " PROTOCOL_RLC_AM_MSC_FMT " Error try lock %s %d",\
|
||||
PROTOCOL_RLC_AM_MSC_ARGS(cTXT,rLC),\
|
||||
#mUTEX, pmtl_rc);\
|
||||
}\
|
||||
}\
|
||||
} while (0);
|
||||
|
||||
@@ -30,7 +30,6 @@
|
||||
#include "list.h"
|
||||
//#include "LAYER2/MAC/extern.h"
|
||||
#include "common/utils/LOG/log.h"
|
||||
#include "msc.h"
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
inline void
|
||||
@@ -152,16 +151,6 @@ rlc_am_send_sdu (
|
||||
#if !ENABLE_ITTI
|
||||
RLC_AM_MUTEX_UNLOCK(&rlc_pP->lock_input_sdus);
|
||||
#endif
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_PDCP_ENB:MSC_PDCP_UE,
|
||||
(const char *)(rlc_pP->output_sdu_in_construction->data),
|
||||
rlc_pP->output_sdu_size_to_write,
|
||||
MSC_AS_TIME_FMT" "PROTOCOL_RLC_AM_MSC_FMT" DATA-IND size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
PROTOCOL_RLC_AM_MSC_ARGS(ctxt_pP,rlc_pP),
|
||||
rlc_pP->output_sdu_size_to_write
|
||||
);
|
||||
rlc_data_ind (ctxt_pP,
|
||||
BOOL_NOT(rlc_pP->is_data_plane),
|
||||
MBMS_FLAG_NO,
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
#include "platform_types.h"
|
||||
//-----------------------------------------------------------------------------
|
||||
#include "assertions.h"
|
||||
#include "msc.h"
|
||||
#include "rlc.h"
|
||||
#include "rlc_am.h"
|
||||
#include "list.h"
|
||||
|
||||
@@ -28,7 +28,6 @@
|
||||
#include "rlc.h"
|
||||
#include "LAYER2/MAC/mac_extern.h"
|
||||
#include "common/utils/LOG/log.h"
|
||||
#include "msc.h"
|
||||
//-----------------------------------------------------------------------------
|
||||
boolean_t rlc_am_nack_pdu (
|
||||
const protocol_ctxt_t* const ctxt_pP,
|
||||
|
||||
@@ -26,7 +26,6 @@
|
||||
//-----------------------------------------------------------------------------
|
||||
#include "platform_types.h"
|
||||
//-----------------------------------------------------------------------------
|
||||
#include "msc.h"
|
||||
#include "list.h"
|
||||
#include "rlc_am.h"
|
||||
#include "LAYER2/MAC/mac_extern.h"
|
||||
|
||||
@@ -29,7 +29,6 @@
|
||||
#include "rlc_am.h"
|
||||
#include "LAYER2/MAC/mac_extern.h"
|
||||
#include "common/utils/LOG/log.h"
|
||||
#include "msc.h"
|
||||
//-----------------------------------------------------------------------------
|
||||
void
|
||||
rlc_am_check_timer_poll_retransmit(
|
||||
@@ -69,11 +68,6 @@ rlc_am_check_timer_poll_retransmit(
|
||||
rlc_pP->t_poll_retransmit.running = 0;
|
||||
rlc_pP->t_poll_retransmit.timed_out = 1;
|
||||
rlc_pP->stat_timer_poll_retransmit_timed_out += 1;
|
||||
#if MESSAGE_CHART_GENERATOR_RLC_MAC
|
||||
MSC_LOG_EVENT((ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,\
|
||||
"0 "PROTOCOL_RLC_AM_MSC_FMT" t_poll_retransmit timed-out",\
|
||||
PROTOCOL_RLC_AM_MSC_ARGS(ctxt_pP,rlc_pP));
|
||||
#endif
|
||||
LOG_D(RLC, PROTOCOL_RLC_AM_CTXT_FMT"[T_POLL_RETRANSMIT] TIME-OUT\n",
|
||||
PROTOCOL_RLC_AM_CTXT_ARGS(ctxt_pP,rlc_pP));
|
||||
|
||||
@@ -144,11 +138,6 @@ rlc_am_stop_and_reset_timer_poll_retransmit(
|
||||
rlc_pP->t_poll_retransmit.ms_time_out = 0;
|
||||
rlc_pP->t_poll_retransmit.ms_start = 0;
|
||||
rlc_pP->t_poll_retransmit.timed_out = 0;
|
||||
#if MESSAGE_CHART_GENERATOR_RLC_MAC
|
||||
MSC_LOG_EVENT((ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,\
|
||||
"0 "PROTOCOL_RLC_AM_MSC_FMT" t_poll_retransmit stopped & reseted",\
|
||||
PROTOCOL_RLC_AM_MSC_ARGS(ctxt_pP,rlc_pP));
|
||||
#endif
|
||||
}
|
||||
//-----------------------------------------------------------------------------
|
||||
void
|
||||
@@ -167,11 +156,6 @@ rlc_am_start_timer_poll_retransmit(
|
||||
LOG_D(RLC, PROTOCOL_RLC_AM_CTXT_FMT"[T_POLL_RETRANSMIT] STARTED (TIME-OUT = FRAME %05d)\n",
|
||||
PROTOCOL_RLC_AM_CTXT_ARGS(ctxt_pP,rlc_pP),
|
||||
rlc_pP->t_poll_retransmit.ms_time_out);
|
||||
#if MESSAGE_CHART_GENERATOR_RLC_MAC
|
||||
MSC_LOG_EVENT((ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,\
|
||||
"0 "PROTOCOL_RLC_AM_MSC_FMT" t_poll_retransmit started (TO %u ms)",\
|
||||
PROTOCOL_RLC_AM_MSC_ARGS(ctxt_pP,rlc_pP), rlc_pP->t_poll_retransmit.ms_time_out);
|
||||
#endif
|
||||
} else {
|
||||
LOG_T(RLC, PROTOCOL_RLC_AM_CTXT_FMT"[T_POLL_RETRANSMIT] NOT STARTED, CAUSE CONFIGURED 0 ms\n",
|
||||
PROTOCOL_RLC_AM_CTXT_ARGS(ctxt_pP,rlc_pP));
|
||||
|
||||
@@ -28,7 +28,6 @@
|
||||
#include "rlc_am.h"
|
||||
# include "LAYER2/MAC/mac_extern.h"
|
||||
#include "common/utils//LOG/log.h"
|
||||
#include "msc.h"
|
||||
//-----------------------------------------------------------------------------
|
||||
void
|
||||
rlc_am_check_timer_reordering(
|
||||
@@ -64,12 +63,6 @@ rlc_am_check_timer_reordering(
|
||||
// - start t-Reordering;
|
||||
// - set VR(X) to VR(H).
|
||||
|
||||
#if MESSAGE_CHART_GENERATOR_RLC_MAC
|
||||
MSC_LOG_EVENT((ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,\
|
||||
"0 "PROTOCOL_RLC_AM_MSC_FMT" t_reordering timed out",\
|
||||
PROTOCOL_RLC_AM_MSC_ARGS(ctxt_pP,rlc_pP));
|
||||
#endif
|
||||
|
||||
//AssertFatal (rlc_pP->vr_x != RLC_SN_UNDEFINED, "RLC AM TReordering Expiry vrX not defined LcId=%d\n", rlc_pP->channel_id);
|
||||
if(rlc_pP->vr_x == RLC_SN_UNDEFINED){
|
||||
LOG_E(RLC, "RLC AM TReordering Expiry vrX not defined LcId=%d\n", rlc_pP->channel_id);
|
||||
@@ -153,11 +146,6 @@ rlc_am_stop_and_reset_timer_reordering(
|
||||
rlc_pP->t_reordering.ms_time_out = 0;
|
||||
rlc_pP->t_reordering.ms_start = 0;
|
||||
rlc_pP->t_reordering.timed_out = 0;
|
||||
#if MESSAGE_CHART_GENERATOR_RLC_MAC
|
||||
MSC_LOG_EVENT((ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,\
|
||||
"0 "PROTOCOL_RLC_AM_MSC_FMT" t_reordering stopped & reseted",\
|
||||
PROTOCOL_RLC_AM_MSC_ARGS(ctxt_pP,rlc_pP));
|
||||
#endif
|
||||
}
|
||||
//-----------------------------------------------------------------------------
|
||||
void
|
||||
@@ -175,11 +163,6 @@ rlc_am_start_timer_reordering(
|
||||
LOG_D(RLC, PROTOCOL_RLC_AM_CTXT_FMT"[T-REORDERING] STARTED (TIME-OUT = %5u ms)\n",
|
||||
PROTOCOL_RLC_AM_CTXT_ARGS(ctxt_pP,rlc_pP),
|
||||
rlc_pP->t_reordering.ms_time_out);
|
||||
#if MESSAGE_CHART_GENERATOR_RLC_MAC
|
||||
MSC_LOG_EVENT((ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,\
|
||||
"0 "PROTOCOL_RLC_AM_MSC_FMT" t_reordering started (TO %u ms)",\
|
||||
PROTOCOL_RLC_AM_MSC_ARGS(ctxt_pP,rlc_pP), rlc_pP->t_reordering.ms_time_out);
|
||||
#endif
|
||||
} else {
|
||||
LOG_T(RLC, PROTOCOL_RLC_AM_CTXT_FMT"[T-REORDERING] NOT STARTED, CAUSE CONFIGURED 0 ms\n",
|
||||
PROTOCOL_RLC_AM_CTXT_ARGS(ctxt_pP,rlc_pP));
|
||||
|
||||
@@ -28,7 +28,6 @@
|
||||
#include "rlc_am.h"
|
||||
#include "LAYER2/MAC/mac_extern.h"
|
||||
#include "common/utils/LOG/log.h"
|
||||
#include "msc.h"
|
||||
//-----------------------------------------------------------------------------
|
||||
void
|
||||
rlc_am_check_timer_status_prohibit(
|
||||
@@ -60,12 +59,6 @@ rlc_am_check_timer_status_prohibit(
|
||||
rlc_pP->t_status_prohibit.running = 0;
|
||||
rlc_pP->t_status_prohibit.timed_out = 1;
|
||||
rlc_pP->stat_timer_status_prohibit_timed_out += 1;
|
||||
|
||||
#if MESSAGE_CHART_GENERATOR_RLC_MAC
|
||||
MSC_LOG_EVENT((ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,\
|
||||
"0 "PROTOCOL_RLC_AM_MSC_FMT" t_status_prohibit timed out",\
|
||||
PROTOCOL_RLC_AM_MSC_ARGS(ctxt_pP,rlc_pP));
|
||||
#endif
|
||||
LOG_D(RLC, PROTOCOL_RLC_AM_CTXT_FMT"[T-STATUS-PROHIBIT] TIME-OUT\n",
|
||||
PROTOCOL_RLC_AM_CTXT_ARGS(ctxt_pP,rlc_pP));
|
||||
//#warning TO DO rlc_am_check_timer_status_prohibit
|
||||
@@ -91,11 +84,6 @@ rlc_am_stop_and_reset_timer_status_prohibit(
|
||||
rlc_pP->t_status_prohibit.ms_time_out = 0;
|
||||
rlc_pP->t_status_prohibit.ms_start = 0;
|
||||
rlc_pP->t_status_prohibit.timed_out = 0;
|
||||
#if MESSAGE_CHART_GENERATOR_RLC_MAC
|
||||
MSC_LOG_EVENT((ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,\
|
||||
"0 "PROTOCOL_RLC_AM_MSC_FMT" t_status_prohibit stopped & reseted",\
|
||||
PROTOCOL_RLC_AM_MSC_ARGS(ctxt_pP,rlc_pP));
|
||||
#endif
|
||||
}
|
||||
}
|
||||
//-----------------------------------------------------------------------------
|
||||
@@ -117,11 +105,6 @@ rlc_am_start_timer_status_prohibit(
|
||||
PROTOCOL_RLC_AM_CTXT_ARGS(ctxt_pP,rlc_pP),
|
||||
rlc_pP->t_status_prohibit.ms_time_out);
|
||||
LOG_D(RLC, "TIME-OUT = FRAME %u\n", rlc_pP->t_status_prohibit.ms_time_out);
|
||||
#if MESSAGE_CHART_GENERATOR_RLC_MAC
|
||||
MSC_LOG_EVENT((ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,\
|
||||
"0 "PROTOCOL_RLC_AM_MSC_FMT" t_status_prohibit started (TO %u ms)",\
|
||||
PROTOCOL_RLC_AM_MSC_ARGS(ctxt_pP,rlc_pP), rlc_pP->t_status_prohibit.ms_time_out);
|
||||
#endif
|
||||
} else {
|
||||
LOG_T(RLC, PROTOCOL_RLC_AM_CTXT_FMT"[T-STATUS-PROHIBIT] NOT STARTED, CAUSE CONFIGURED 0 ms\n",
|
||||
PROTOCOL_RLC_AM_CTXT_ARGS(ctxt_pP,rlc_pP));
|
||||
|
||||
@@ -30,7 +30,6 @@
|
||||
#include "intertask_interface.h"
|
||||
#endif
|
||||
#include "assertions.h"
|
||||
#include "msc.h"
|
||||
#include "rlc_um.h"
|
||||
#include "list.h"
|
||||
#include "rlc_primitives.h"
|
||||
@@ -166,7 +165,6 @@ rlc_um_rx (const protocol_ctxt_t *const ctxt_pP, void *argP, struct mac_data_ind
|
||||
char message_string[10000];
|
||||
mem_block_t *tb_p;
|
||||
int16_t tb_size_in_bytes;
|
||||
size_t message_string_size = 0;
|
||||
rlc_um_pdu_info_t pdu_info;
|
||||
int index;
|
||||
int octet_index;
|
||||
@@ -183,38 +181,15 @@ rlc_um_rx (const protocol_ctxt_t *const ctxt_pP, void *argP, struct mac_data_ind
|
||||
LOG_I(RLC, PROTOCOL_RLC_UM_CTXT_FMT" ERROR MAC_DATA_IND IN RLC_NULL_STATE\n",
|
||||
PROTOCOL_RLC_UM_CTXT_ARGS(ctxt_pP,l_rlc_p));
|
||||
|
||||
if (data_indP.data.nb_elements > 0 && MESSAGE_CHART_GENERATOR) {
|
||||
if (data_indP.data.nb_elements > 0) {
|
||||
tb_p = data_indP.data.head;
|
||||
|
||||
while (tb_p != NULL) {
|
||||
tb_size_in_bytes = ((struct mac_tb_ind *) (tb_p->data))->size;
|
||||
rlc_um_get_pdu_infos(ctxt_pP,l_rlc_p,(rlc_um_pdu_sn_10_t *) ((struct mac_tb_ind *) (tb_p->data))->data_ptr, tb_size_in_bytes, &pdu_info, l_rlc_p->rx_sn_length);
|
||||
message_string_size = 0;
|
||||
message_string_size += sprintf(&message_string[message_string_size],
|
||||
MSC_AS_TIME_FMT" "PROTOCOL_RLC_UM_MSC_FMT"DATA SN %u size %u FI %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
PROTOCOL_RLC_UM_MSC_ARGS(ctxt_pP, l_rlc_p),
|
||||
pdu_info.sn,
|
||||
tb_size_in_bytes,
|
||||
pdu_info.fi);
|
||||
|
||||
if (pdu_info.e) {
|
||||
message_string_size += sprintf(&message_string[message_string_size], "| HE:");
|
||||
|
||||
for (index=0; index < pdu_info.num_li; index++) {
|
||||
message_string_size += sprintf(&message_string[message_string_size], " LI %u", pdu_info.li_list[index]);
|
||||
}
|
||||
}
|
||||
|
||||
MSC_LOG_RX_DISCARDED_MESSAGE(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_UE:MSC_RLC_ENB,
|
||||
(const char *)pdu_info.payload,
|
||||
tb_size_in_bytes,
|
||||
message_string);
|
||||
tb_p = tb_p->next;
|
||||
}
|
||||
}/*MESSAGE_CHART_GENERATOR*/
|
||||
}
|
||||
|
||||
list_free (&data_indP.data);
|
||||
break;
|
||||
@@ -237,7 +212,7 @@ rlc_um_rx (const protocol_ctxt_t *const ctxt_pP, void *argP, struct mac_data_ind
|
||||
// - enters the LOCAL_SUSPEND state.
|
||||
data_indP.tb_size = data_indP.tb_size >> 3;
|
||||
|
||||
if (data_indP.data.nb_elements > 0 && (MESSAGE_CHART_GENERATOR || LOG_DEBUGFLAG(DEBUG_RLC))) {
|
||||
if (data_indP.data.nb_elements > 0 && (LOG_DEBUGFLAG(DEBUG_RLC))) {
|
||||
LOG_D(RLC, PROTOCOL_RLC_UM_CTXT_FMT" MAC_DATA_IND %d TBs\n",
|
||||
PROTOCOL_RLC_UM_CTXT_ARGS(ctxt_pP,l_rlc_p),
|
||||
data_indP.data.nb_elements);
|
||||
@@ -251,32 +226,6 @@ rlc_um_rx (const protocol_ctxt_t *const ctxt_pP, void *argP, struct mac_data_ind
|
||||
&pdu_info,
|
||||
l_rlc_p->rx_sn_length);
|
||||
|
||||
if (MESSAGE_CHART_GENERATOR) {
|
||||
message_string_size = 0;
|
||||
message_string_size += sprintf(&message_string[message_string_size],
|
||||
MSC_AS_TIME_FMT" "PROTOCOL_RLC_UM_MSC_FMT"DATA SN %u size %u FI %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
PROTOCOL_RLC_UM_MSC_ARGS(ctxt_pP, l_rlc_p),
|
||||
pdu_info.sn,
|
||||
tb_size_in_bytes,
|
||||
pdu_info.fi);
|
||||
|
||||
if (pdu_info.e) {
|
||||
message_string_size += sprintf(&message_string[message_string_size], "| HE:");
|
||||
|
||||
for (index=0; index < pdu_info.num_li; index++) {
|
||||
message_string_size += sprintf(&message_string[message_string_size], " LI %u", pdu_info.li_list[index]);
|
||||
}
|
||||
}
|
||||
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_UE:MSC_RLC_ENB,
|
||||
(char *)pdu_info.payload,
|
||||
tb_size_in_bytes,
|
||||
message_string);
|
||||
}
|
||||
|
||||
if (LOG_DEBUGFLAG(DEBUG_RLC)) {
|
||||
message_string_size = 0;
|
||||
message_string_size += sprintf(&message_string[message_string_size], "Bearer : %ld\n", l_rlc_p->rb_id);
|
||||
@@ -483,89 +432,61 @@ rlc_um_mac_data_request (const protocol_ctxt_t *const ctxt_pP, void *rlc_pP,cons
|
||||
continue;
|
||||
}
|
||||
|
||||
if (MESSAGE_CHART_GENERATOR || LOG_DEBUGFLAG(DEBUG_RLC) ) {
|
||||
if (LOG_DEBUGFLAG(DEBUG_RLC) ) {
|
||||
rlc_um_get_pdu_infos(ctxt_pP, l_rlc_p,(rlc_um_pdu_sn_10_t *) ((struct mac_tb_req *) (tb_p->data))->data_ptr, tb_size_in_bytes, &pdu_info, l_rlc_p->rx_sn_length);
|
||||
|
||||
if(MESSAGE_CHART_GENERATOR) {
|
||||
message_string_size = 0;
|
||||
message_string_size += sprintf(&message_string[message_string_size],
|
||||
MSC_AS_TIME_FMT" "PROTOCOL_RLC_UM_MSC_FMT" DATA SN %u size %u FI %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
PROTOCOL_RLC_UM_MSC_ARGS(ctxt_pP, l_rlc_p),
|
||||
pdu_info.sn,
|
||||
tb_size_in_bytes,
|
||||
pdu_info.fi);
|
||||
message_string_size = 0;
|
||||
message_string_size += sprintf(&message_string[message_string_size], "Bearer : %ld\n", l_rlc_p->rb_id);
|
||||
message_string_size += sprintf(&message_string[message_string_size], "PDU size : %u\n", tb_size_in_bytes);
|
||||
message_string_size += sprintf(&message_string[message_string_size], "Header size : %u\n", pdu_info.header_size);
|
||||
message_string_size += sprintf(&message_string[message_string_size], "Payload size: %u\n", pdu_info.payload_size);
|
||||
message_string_size += sprintf(&message_string[message_string_size], "PDU type : RLC UM DATA IND: UMD PDU\n\n");
|
||||
message_string_size += sprintf(&message_string[message_string_size], "Header :\n");
|
||||
message_string_size += sprintf(&message_string[message_string_size], " FI : %u\n", pdu_info.fi);
|
||||
message_string_size += sprintf(&message_string[message_string_size], " E : %u\n", pdu_info.e);
|
||||
message_string_size += sprintf(&message_string[message_string_size], " SN : %u\n", pdu_info.sn);
|
||||
|
||||
if (pdu_info.e) {
|
||||
message_string_size += sprintf(&message_string[message_string_size], "|HE:");
|
||||
if (pdu_info.e) {
|
||||
message_string_size += sprintf(&message_string[message_string_size], "\nHeader extension : \n");
|
||||
|
||||
for (index=0; index < pdu_info.num_li; index++) {
|
||||
message_string_size += sprintf(&message_string[message_string_size], " LI %u", pdu_info.li_list[index]);
|
||||
}
|
||||
for (index=0; index < pdu_info.num_li; index++) {
|
||||
message_string_size += sprintf(&message_string[message_string_size], " LI : %u\n", pdu_info.li_list[index]);
|
||||
}
|
||||
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_UE:MSC_RLC_ENB,
|
||||
(const char *)pdu_info.payload,
|
||||
pdu_info.payload_size,
|
||||
message_string);
|
||||
}
|
||||
|
||||
if(LOG_DEBUGFLAG(DEBUG_RLC)) {
|
||||
message_string_size = 0;
|
||||
message_string_size += sprintf(&message_string[message_string_size], "Bearer : %ld\n", l_rlc_p->rb_id);
|
||||
message_string_size += sprintf(&message_string[message_string_size], "PDU size : %u\n", tb_size_in_bytes);
|
||||
message_string_size += sprintf(&message_string[message_string_size], "Header size : %u\n", pdu_info.header_size);
|
||||
message_string_size += sprintf(&message_string[message_string_size], "Payload size: %u\n", pdu_info.payload_size);
|
||||
message_string_size += sprintf(&message_string[message_string_size], "PDU type : RLC UM DATA IND: UMD PDU\n\n");
|
||||
message_string_size += sprintf(&message_string[message_string_size], "Header :\n");
|
||||
message_string_size += sprintf(&message_string[message_string_size], " FI : %u\n", pdu_info.fi);
|
||||
message_string_size += sprintf(&message_string[message_string_size], " E : %u\n", pdu_info.e);
|
||||
message_string_size += sprintf(&message_string[message_string_size], " SN : %u\n", pdu_info.sn);
|
||||
message_string_size += sprintf(&message_string[message_string_size], "\nPayload : \n");
|
||||
message_string_size += sprintf(&message_string[message_string_size], "------+-------------------------------------------------|\n");
|
||||
message_string_size += sprintf(&message_string[message_string_size], " | 0 1 2 3 4 5 6 7 8 9 a b c d e f |\n");
|
||||
message_string_size += sprintf(&message_string[message_string_size], "------+-------------------------------------------------|\n");
|
||||
|
||||
if (pdu_info.e) {
|
||||
message_string_size += sprintf(&message_string[message_string_size], "\nHeader extension : \n");
|
||||
|
||||
for (index=0; index < pdu_info.num_li; index++) {
|
||||
message_string_size += sprintf(&message_string[message_string_size], " LI : %u\n", pdu_info.li_list[index]);
|
||||
}
|
||||
}
|
||||
|
||||
message_string_size += sprintf(&message_string[message_string_size], "\nPayload : \n");
|
||||
message_string_size += sprintf(&message_string[message_string_size], "------+-------------------------------------------------|\n");
|
||||
message_string_size += sprintf(&message_string[message_string_size], " | 0 1 2 3 4 5 6 7 8 9 a b c d e f |\n");
|
||||
message_string_size += sprintf(&message_string[message_string_size], "------+-------------------------------------------------|\n");
|
||||
|
||||
for (octet_index = 0; octet_index < pdu_info.payload_size; octet_index++) {
|
||||
if ((octet_index % 16) == 0) {
|
||||
if (octet_index != 0) {
|
||||
message_string_size += sprintf(&message_string[message_string_size], " |\n");
|
||||
}
|
||||
|
||||
message_string_size += sprintf(&message_string[message_string_size], " %04d |", octet_index);
|
||||
for (octet_index = 0; octet_index < pdu_info.payload_size; octet_index++) {
|
||||
if ((octet_index % 16) == 0) {
|
||||
if (octet_index != 0) {
|
||||
message_string_size += sprintf(&message_string[message_string_size], " |\n");
|
||||
}
|
||||
|
||||
/*
|
||||
* Print every single octet in hexadecimal form
|
||||
*/
|
||||
message_string_size += sprintf(&message_string[message_string_size], " %02x", pdu_info.payload[octet_index]);
|
||||
/*
|
||||
* Align newline and pipes according to the octets in groups of 2
|
||||
*/
|
||||
message_string_size += sprintf(&message_string[message_string_size], " %04d |", octet_index);
|
||||
}
|
||||
|
||||
/*
|
||||
* Append enough spaces and put final pipe
|
||||
* Print every single octet in hexadecimal form
|
||||
*/
|
||||
for (index = octet_index; index < 16; ++index) {
|
||||
message_string_size += sprintf(&message_string[message_string_size], " ");
|
||||
}
|
||||
message_string_size += sprintf(&message_string[message_string_size], " %02x", pdu_info.payload[octet_index]);
|
||||
/*
|
||||
* Align newline and pipes according to the octets in groups of 2
|
||||
*/
|
||||
}
|
||||
|
||||
message_string_size += sprintf(&message_string[message_string_size], " |\n");
|
||||
LOG_UI(RLC, "%s\n", message_string);
|
||||
} /*LOG_DEBUGFLAG(DEBUG_RLC) */
|
||||
} /* MESSAGE_CHART_GENERATOR || LOG_DEBUGFLAG(DEBUG_RLC) */
|
||||
/*
|
||||
* Append enough spaces and put final pipe
|
||||
*/
|
||||
for (index = octet_index; index < 16; ++index) {
|
||||
message_string_size += sprintf(&message_string[message_string_size], " ");
|
||||
}
|
||||
|
||||
message_string_size += sprintf(&message_string[message_string_size], " |\n");
|
||||
LOG_UI(RLC, "%s\n", message_string);
|
||||
} /* LOG_DEBUGFLAG(DEBUG_RLC) */
|
||||
|
||||
tb_p = tb_p->next;
|
||||
} /* while (tb_p != NULL) */
|
||||
@@ -607,15 +528,6 @@ rlc_um_data_req (const protocol_ctxt_t *const ctxt_pP, void *rlc_pP, mem_block_t
|
||||
//rlc_p->next_sdu_index = (rlc_p->next_sdu_index + 1) % rlc_p->size_input_sdus_buffer;
|
||||
rlc_p->stat_tx_pdcp_sdu += 1;
|
||||
rlc_p->stat_tx_pdcp_bytes += ((struct rlc_um_tx_sdu_management *) (sdu_pP->data))->sdu_size;
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_PDCP_ENB:MSC_PDCP_UE,
|
||||
NULL,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" "PROTOCOL_RLC_UM_MSC_FMT" DATA-REQ size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
PROTOCOL_RLC_UM_MSC_ARGS(ctxt_pP, rlc_p),
|
||||
((struct rlc_um_tx_sdu_management *) (sdu_pP->data))->sdu_size);
|
||||
|
||||
if (LOG_DEBUGFLAG(DEBUG_RLC) ) {
|
||||
data_offset = sizeof (struct rlc_um_data_req_alloc);
|
||||
@@ -660,14 +572,6 @@ rlc_um_data_req (const protocol_ctxt_t *const ctxt_pP, void *rlc_pP, mem_block_t
|
||||
list_add_tail_eurecom(sdu_pP, &rlc_p->input_sdus);
|
||||
RLC_UM_MUTEX_UNLOCK(&rlc_p->lock_input_sdus);
|
||||
|
||||
if (MESSAGE_CHART_GENERATOR) {
|
||||
if (rlc_p->buffer_occupancy > 4096) {
|
||||
MSC_LOG_EVENT((ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,\
|
||||
"0 "PROTOCOL_RLC_AM_MSC_FMT" BO %u bytes",\
|
||||
PROTOCOL_RLC_AM_MSC_ARGS(ctxt_pP,rlc_p), rlc_p->buffer_occupancy);
|
||||
}
|
||||
}
|
||||
|
||||
LOG_T(RLC, PROTOCOL_RLC_UM_CTXT_FMT" BO %d , NB SDU %d\n",
|
||||
PROTOCOL_RLC_UM_CTXT_ARGS(ctxt_pP,rlc_p),
|
||||
rlc_p->buffer_occupancy,
|
||||
|
||||
@@ -56,28 +56,13 @@
|
||||
rLC_Pp->rb_id,\
|
||||
__FUNCTION__
|
||||
|
||||
#define PROTOCOL_RLC_UM_MSC_FMT "[RNTI %" PRIx16 " %s %02ld]"
|
||||
#define PROTOCOL_RLC_UM_MSC_ARGS(CTXT_Pp, rLC_Pp) \
|
||||
CTXT_Pp->rnti,\
|
||||
(rLC_Pp->is_data_plane) ? "DRB UM" : "SRB UM",\
|
||||
rLC_Pp->rb_id
|
||||
|
||||
#if defined(TRACE_RLC_MUTEX)
|
||||
#define RLC_UM_MUTEX_LOCK(mUTEX, cTXT, rLC) \
|
||||
do {\
|
||||
int pmtl_rc = pthread_mutex_trylock(mUTEX);\
|
||||
if (pmtl_rc != 0){\
|
||||
if (pmtl_rc == EBUSY) {\
|
||||
MSC_LOG_EVENT((cTXT->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,\
|
||||
"0 " PROTOCOL_RLC_UM_MSC_FMT " Warning try lock %s busy",\
|
||||
PROTOCOL_RLC_UM_MSC_ARGS(cTXT,rLC),\
|
||||
#mUTEX);\
|
||||
pthread_mutex_lock(mUTEX);\
|
||||
} else {\
|
||||
MSC_LOG_EVENT((cTXT->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,\
|
||||
"0 " PROTOCOL_RLC_UM_MSC_FMT " Error try lock %s %d",\
|
||||
PROTOCOL_RLC_UM_MSC_ARGS(cTXT,rLC),\
|
||||
#mUTEX, pmtl_rc);\
|
||||
}\
|
||||
}\
|
||||
} while (0);
|
||||
|
||||
@@ -32,7 +32,6 @@
|
||||
|
||||
#include "rlc_um_control_primitives.h"
|
||||
#include "LTE_T-Reordering.h"
|
||||
#include "msc.h"
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
void config_req_rlc_um (
|
||||
@@ -173,15 +172,6 @@ void config_req_rlc_um_asn1 (
|
||||
PROTOCOL_RLC_UM_CTXT_ARGS(ctxt_pP,rlc_p),
|
||||
rlc_p->rb_id,
|
||||
ul_rlc_pP->sn_FieldLength);
|
||||
MSC_LOG_RX_DISCARDED_MESSAGE(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RRC_ENB:MSC_RRC_UE,
|
||||
NULL,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" "PROTOCOL_RLC_AM_MSC_FMT" CONFIG-REQ UL sn_FieldLength %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
PROTOCOL_RLC_AM_MSC_ARGS(ctxt_pP, rlc_p),
|
||||
ul_rlc_pP->sn_FieldLength);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -201,15 +191,6 @@ void config_req_rlc_um_asn1 (
|
||||
PROTOCOL_RLC_UM_CTXT_ARGS(ctxt_pP,rlc_p),
|
||||
rlc_p->rb_id,
|
||||
dl_rlc_pP->sn_FieldLength);
|
||||
MSC_LOG_RX_DISCARDED_MESSAGE(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RRC_ENB:MSC_RRC_UE,
|
||||
NULL,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" "PROTOCOL_RLC_AM_MSC_FMT" CONFIG-REQ DL sn_FieldLength %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
PROTOCOL_RLC_AM_MSC_ARGS(ctxt_pP, rlc_p),
|
||||
dl_rlc_pP->sn_FieldLength);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -220,15 +201,6 @@ void config_req_rlc_um_asn1 (
|
||||
PROTOCOL_RLC_UM_CTXT_ARGS(ctxt_pP,rlc_p),
|
||||
rlc_p->rb_id,
|
||||
dl_rlc_pP->t_Reordering);
|
||||
MSC_LOG_RX_DISCARDED_MESSAGE(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RRC_ENB:MSC_RRC_UE,
|
||||
NULL,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" "PROTOCOL_RLC_AM_MSC_FMT" CONFIG-REQ t_Reord %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
PROTOCOL_RLC_AM_MSC_ARGS(ctxt_pP, rlc_p),
|
||||
dl_rlc_pP->t_Reordering);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -239,34 +211,12 @@ void config_req_rlc_um_asn1 (
|
||||
ul_sn_FieldLength,
|
||||
dl_sn_FieldLength,
|
||||
mbms_flagP);
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RRC_ENB:MSC_RRC_UE,
|
||||
NULL,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" "PROTOCOL_RLC_AM_MSC_FMT" CONFIG-REQ t_Reord %u rx snfl %u tx snfl %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
PROTOCOL_RLC_AM_MSC_ARGS(ctxt_pP, rlc_p),
|
||||
t_Reordering,
|
||||
ul_sn_FieldLength,
|
||||
dl_sn_FieldLength);
|
||||
} else {
|
||||
rlc_um_configure(ctxt_pP,rlc_p,
|
||||
t_Reordering,
|
||||
dl_sn_FieldLength,
|
||||
ul_sn_FieldLength,
|
||||
mbms_flagP);
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RRC_ENB:MSC_RRC_UE,
|
||||
NULL,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" "PROTOCOL_RLC_AM_MSC_FMT" CONFIG-REQ t_Reord %u rx snfl %u tx snfl %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
PROTOCOL_RLC_AM_MSC_ARGS(ctxt_pP, rlc_p),
|
||||
t_Reordering,
|
||||
dl_sn_FieldLength,
|
||||
ul_sn_FieldLength);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
#include "platform_types.h"
|
||||
#include "assertions.h"
|
||||
//-----------------------------------------------------------------------------
|
||||
#include "msc.h"
|
||||
#include "rlc.h"
|
||||
#include "rlc_um.h"
|
||||
#include "rlc_primitives.h"
|
||||
|
||||
@@ -35,7 +35,6 @@
|
||||
#include "list.h"
|
||||
#include "LAYER2/MAC/mac_extern.h"
|
||||
#include "common/utils/LOG/log.h"
|
||||
#include "msc.h"
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
inline void
|
||||
@@ -117,17 +116,6 @@ rlc_um_send_sdu (const protocol_ctxt_t* const ctxt_pP, rlc_um_entity_t *rlc_pP)
|
||||
rlc_pP->stat_rx_pdcp_sdu += 1;
|
||||
rlc_pP->stat_rx_pdcp_bytes += rlc_pP->output_sdu_size_to_write;
|
||||
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_RLC_ENB:MSC_RLC_UE,
|
||||
(ctxt_pP->enb_flag == ENB_FLAG_YES) ? MSC_PDCP_ENB:MSC_PDCP_UE,
|
||||
(const char*)(rlc_pP->output_sdu_in_construction->data),
|
||||
rlc_pP->output_sdu_size_to_write,
|
||||
MSC_AS_TIME_FMT" "PROTOCOL_RLC_UM_MSC_FMT" DATA-IND size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
PROTOCOL_RLC_UM_MSC_ARGS(ctxt_pP,rlc_pP),
|
||||
rlc_pP->output_sdu_size_to_write
|
||||
);
|
||||
|
||||
#if TEST_RLC_UM
|
||||
#if TRACE_RLC_UM_DISPLAY_ASCII_DATA
|
||||
rlc_pP->output_sdu_in_construction->data[rlc_pP->output_sdu_size_to_write] = 0;
|
||||
|
||||
@@ -27,7 +27,6 @@
|
||||
//-----------------------------------------------------------------------------
|
||||
#include <assert.h>
|
||||
#include "assertions.h"
|
||||
#include "msc.h"
|
||||
#include "list.h"
|
||||
#include "rlc_um.h"
|
||||
#include "rlc_primitives.h"
|
||||
|
||||
@@ -39,7 +39,6 @@
|
||||
|
||||
#include "m2ap_itti_messaging.h"
|
||||
|
||||
#include "msc.h"
|
||||
#include "assertions.h"
|
||||
#include "conversions.h"
|
||||
|
||||
@@ -174,8 +173,6 @@ int m2ap_MCE_generate_m2_setup_request(
|
||||
return -1;
|
||||
}
|
||||
|
||||
//MSC_LOG_TX_MESSAGE (MSC_M2AP_SRC_MCE, MSC_M2AP_TARGET_MCE, NULL, 0, "0 M2Setup/initiatingMessage assoc_id %u", m2ap_MCE_data_p->assoc_id);
|
||||
|
||||
m2ap_MCE_itti_send_sctp_data_req(instance_p->instance, m2ap_MCE_data_p->assoc_id, buffer, len, 0);
|
||||
|
||||
return ret;
|
||||
@@ -311,8 +308,6 @@ int m2ap_MCE_generate_m2_setup_response(m2ap_MCE_instance_t *instance_p, m2ap_MC
|
||||
|
||||
m2ap_MCE_data_p->state = M2AP_MCE_STATE_READY;
|
||||
|
||||
//MSC_LOG_TX_MESSAGE (MSC_M2AP_SRC_MCE, MSC_M2AP_TARGET_MCE, NULL, 0, "0 M2Setup/successfulOutcome assoc_id %u", m2ap_MCE_data_p->assoc_id);
|
||||
|
||||
m2ap_MCE_itti_send_sctp_data_req(instance_p->instance, m2ap_MCE_data_p->assoc_id, buffer, len, 0);
|
||||
|
||||
return ret;
|
||||
@@ -367,11 +362,6 @@ int m2ap_MCE_generate_m2_setup_failure(instance_t instance,
|
||||
return -1;
|
||||
}
|
||||
|
||||
//MSC_LOG_TX_MESSAGE (MSC_M2AP_SRC_MCE,
|
||||
// MSC_M2AP_TARGET_MCE, NULL, 0,
|
||||
// "0 M2Setup/unsuccessfulOutcome assoc_id %u cause %u value %u",
|
||||
// assoc_id, cause_type, cause_value);
|
||||
|
||||
m2ap_MCE_itti_send_sctp_data_req(instance, assoc_id, buffer, len, 0);
|
||||
|
||||
return ret;
|
||||
@@ -557,8 +547,6 @@ int m2ap_MCE_set_cause (M2AP_Cause_t * cause_p,
|
||||
// return -1;
|
||||
// }
|
||||
//
|
||||
// MSC_LOG_TX_MESSAGE (MSC_M2AP_SRC_MCE, MSC_M2AP_TARGET_MCE, NULL, 0, "0 X2Handover/initiatingMessage assoc_id %u", m2ap_MCE_data_p->assoc_id);
|
||||
//
|
||||
// m2ap_MCE_itti_send_sctp_data_req(instance_p->instance, m2ap_MCE_data_p->assoc_id, buffer, len, 1);
|
||||
//
|
||||
// return ret;
|
||||
@@ -650,8 +638,6 @@ int m2ap_MCE_set_cause (M2AP_Cause_t * cause_p,
|
||||
// return -1;
|
||||
// }
|
||||
//
|
||||
// MSC_LOG_TX_MESSAGE (MSC_M2AP_SRC_MCE, MSC_M2AP_TARGET_MCE, NULL, 0, "0 X2Handover/successfulOutcome assoc_id %u", m2ap_MCE_data_p->assoc_id);
|
||||
//
|
||||
// m2ap_MCE_itti_send_sctp_data_req(instance_p->instance, m2ap_MCE_data_p->assoc_id, buffer, len, 1);
|
||||
//
|
||||
// return ret;
|
||||
@@ -712,8 +698,6 @@ int m2ap_MCE_set_cause (M2AP_Cause_t * cause_p,
|
||||
// return -1;
|
||||
// }
|
||||
//
|
||||
// MSC_LOG_TX_MESSAGE (MSC_M2AP_SRC_MCE, MSC_M2AP_TARGET_MCE, NULL, 0, "0 X2UEContextRelease/initiatingMessage assoc_id %u", m2ap_MCE_data_p->assoc_id);
|
||||
//
|
||||
// m2ap_MCE_itti_send_sctp_data_req(instance_p->instance, m2ap_MCE_data_p->assoc_id, buffer, len, 1);
|
||||
//
|
||||
// return ret;
|
||||
@@ -796,8 +780,6 @@ int m2ap_MCE_set_cause (M2AP_Cause_t * cause_p,
|
||||
// return -1;
|
||||
// }
|
||||
//
|
||||
// MSC_LOG_TX_MESSAGE (MSC_M2AP_SRC_MCE, MSC_M2AP_TARGET_MCE, NULL, 0, "0 X2HandoverCancel/initiatingMessage assoc_id %u", m2ap_MCE_data_p->assoc_id);
|
||||
//
|
||||
// m2ap_MCE_itti_send_sctp_data_req(instance_p->instance, m2ap_MCE_data_p->assoc_id, buffer, len, 1);
|
||||
//
|
||||
// return ret;
|
||||
|
||||
@@ -44,7 +44,6 @@
|
||||
#include "m2ap_MCE_interface_management.h"
|
||||
//#include "m2ap_eNB_interface_management.h"
|
||||
|
||||
#include "msc.h"
|
||||
#include "assertions.h"
|
||||
#include "conversions.h"
|
||||
|
||||
|
||||
@@ -210,16 +210,7 @@ int MCE_handle_MBMS_SESSION_START_RESPONSE(instance_t instance,
|
||||
AssertFatal(MCE_MBMS_M2AP_ID!=-1,"MCE_MBMS_M2AP_ID was not sent\n");
|
||||
AssertFatal(ENB_MBMS_M2AP_ID!=-1,"ENB_MBMS_M2AP_ID was not sent\n");
|
||||
//M2AP_SESSION_START_RESP(msg_p).
|
||||
// MSC_LOG_RX_MESSAGE(
|
||||
// MSC_M2AP_MCE,
|
||||
// MSC_M2AP_ENB,
|
||||
//return 0;
|
||||
// 0,
|
||||
// 0,
|
||||
// MSC_AS_TIME_FMT" MCE_handle_M2_SESSION_START_RESPONSE successfulOutcome assoc_id %d",
|
||||
// 0,0,//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
// assoc_id);
|
||||
//
|
||||
|
||||
LOG_D(M2AP, "Sending M2AP_SESSION_START_RESP ITTI message to ENB_APP with assoc_id (%d->%d)\n",
|
||||
assoc_id,ENB_MODULE_ID_TO_INSTANCE(assoc_id));
|
||||
itti_send_msg_to_task(TASK_MCE_APP, ENB_MODULE_ID_TO_INSTANCE(assoc_id), msg_g);
|
||||
@@ -348,14 +339,6 @@ int MCE_handle_MBMS_SESSION_STOP_RESPONSE(instance_t instance,
|
||||
AssertFatal(MCE_MBMS_M2AP_ID!=-1,"MCE_MBMS_M2AP_ID was not sent\n");
|
||||
AssertFatal(ENB_MBMS_M2AP_ID!=-1,"ENB_MBMS_M2AP_ID was not sent\n");
|
||||
// M2AP_SESSION_STOP_RESP(msg_p).
|
||||
// MSC_LOG_RX_MESSAGE(
|
||||
// MSC_M2AP_MCE,
|
||||
// MSC_M2AP_ENB,
|
||||
// 0,
|
||||
// 0,
|
||||
// MSC_AS_TIME_FMT" MCE_handle_M2_SESSION_STOP_RESPONSE successfulOutcome assoc_id %d",
|
||||
// 0,0,//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
// assoc_id);
|
||||
|
||||
// LOG_D(M2AP, "Sending M2AP_SESSION_START_RESP ITTI message to ENB_APP with assoc_id (%d->%d)\n",
|
||||
// assoc_id,ENB_MODULE_ID_TO_INSTANCE(assoc_id));
|
||||
@@ -645,14 +628,6 @@ int MCE_handle_MBMS_SCHEDULING_INFORMATION_RESPONSE(instance_t instance,
|
||||
// }
|
||||
//
|
||||
// M2AP_SESSION_STOP_RESP(msg_p).
|
||||
// MSC_LOG_RX_MESSAGE(
|
||||
// MSC_M2AP_MCE,
|
||||
// MSC_M2AP_ENB,
|
||||
// 0,
|
||||
// 0,
|
||||
// MSC_AS_TIME_FMT" MCE_handle_M2_SCHEDULING_INFORMATION_RESPONSE successfulOutcome assoc_id %d",
|
||||
// 0,0,//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
// assoc_id);
|
||||
//
|
||||
// LOG_D(M2AP, "Sending M2AP_SCHEDULING_INFO_RESP ITTI message to ENB_APP with assoc_id (%d->%d)\n",
|
||||
// assoc_id,ENB_MODULE_ID_TO_INSTANCE(assoc_id));
|
||||
@@ -836,15 +811,6 @@ int MCE_handle_M2_SETUP_REQUEST(instance_t instance,
|
||||
*m2ap_mce_data_from_enb = M2AP_SETUP_REQ(message_p);
|
||||
//printf("m2ap_mce_data_from_enb->assoc_id %d %d\n",m2ap_mce_data_from_enb->assoc_id,assoc_id);
|
||||
|
||||
// MSC_LOG_TX_MESSAGE(
|
||||
// MSC_M2AP_MCE,
|
||||
// MSC_RRC_ENB,
|
||||
// 0,
|
||||
// 0,
|
||||
// MSC_AS_TIME_FMT" MCE_handle_M2_SETUP_REQUEST",
|
||||
// 0,0//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
// );
|
||||
//
|
||||
if (num_mbms_available > 0) {
|
||||
itti_send_msg_to_task(TASK_MCE_APP, ENB_MODULE_ID_TO_INSTANCE(instance), message_p);
|
||||
} else {
|
||||
@@ -1217,15 +1183,6 @@ int MCE_handle_MCE_CONFIGURATION_UPDATE_FAILURE(instance_t instance,
|
||||
//for (int i=0;i<num_cells_to_activate;i++)
|
||||
// AssertFatal(M2AP_SETUP_RESP (msg_p).num_SI[i] > 0, "System Information %d is missing",i);
|
||||
|
||||
//MSC_LOG_RX_MESSAGE(
|
||||
// MSC_M2AP_eNB,
|
||||
// MSC_M2AP_CU,
|
||||
// 0,
|
||||
// 0,
|
||||
// MSC_AS_TIME_FMT" eNB_handle_M2_SETUP_RESPONSE successfulOutcome assoc_id %d",
|
||||
// 0,0,//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
// assoc_id);
|
||||
|
||||
//LOG_D(M2AP, "Sending M2AP_SETUP_RESP ITTI message to ENB_APP with assoc_id (%d->%d)\n",
|
||||
// assoc_id,ENB_MOeNBLE_ID_TO_INSTANCE(assoc_id));
|
||||
|
||||
@@ -1430,16 +1387,7 @@ int MCE_handle_MBMS_SERVICE_COUNTING_RESPONSE(instance_t instance,
|
||||
//AssertFatal(MCE_MBMS_M2AP_ID!=-1,"MCE_MBMS_M2AP_ID was not sent\n");
|
||||
//AssertFatal(ENB_MBMS_M2AP_ID!=-1,"ENB_MBMS_M2AP_ID was not sent\n");
|
||||
//M2AP_SESSION_START_RESP(msg_p).
|
||||
// MSC_LOG_RX_MESSAGE(
|
||||
// MSC_M2AP_MCE,
|
||||
// MSC_M2AP_ENB,
|
||||
//return 0;
|
||||
// 0,
|
||||
// 0,
|
||||
// MSC_AS_TIME_FMT" MCE_handle_M2_SESSION_START_RESPONSE successfulOutcome assoc_id %d",
|
||||
// 0,0,//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
// assoc_id);
|
||||
//
|
||||
|
||||
//LOG_D(M2AP, "Sending ITTI message to ENB_APP with assoc_id (%d->%d)\n",
|
||||
//assoc_id,ENB_MODULE_ID_TO_INSTANCE(assoc_id));
|
||||
|
||||
|
||||
@@ -39,7 +39,6 @@
|
||||
|
||||
#include "m2ap_itti_messaging.h"
|
||||
|
||||
#include "msc.h"
|
||||
#include "assertions.h"
|
||||
#include "conversions.h"
|
||||
|
||||
@@ -169,15 +168,6 @@
|
||||
//
|
||||
//
|
||||
// LOG_W(M2AP,"pdu.present %d\n",pdu.present);
|
||||
// // MSC_LOG_TX_MESSAGE(
|
||||
// // MSC_M2AP_eNB,
|
||||
// // MSC_M2AP_MCE,
|
||||
// // (const char *)buffer,
|
||||
// // len,
|
||||
// // MSC_AS_TIME_FMT" M2_SETUP_REQUEST initiatingMessage MCEname %s",
|
||||
// // 0,0,//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
// // m2ap_eNB_data_p->ENBname);
|
||||
//
|
||||
// m2ap_eNB_itti_send_sctp_data_req(instance_p, m2ap_eNB_data_p->assoc_id, buffer, len, 0);
|
||||
//
|
||||
// return 0;
|
||||
@@ -315,8 +305,6 @@
|
||||
//
|
||||
// m2ap_eNB_data_p->state = M2AP_ENB_STATE_READY;
|
||||
//
|
||||
// //MSC_LOG_TX_MESSAGE (MSC_M2AP_SRC_ENB, MSC_M2AP_TARGET_ENB, NULL, 0, "0 M2Setup/successfulOutcome assoc_id %u", m2ap_eNB_data_p->assoc_id);
|
||||
//
|
||||
// m2ap_eNB_itti_send_sctp_data_req(instance_p->instance, m2ap_eNB_data_p->assoc_id, buffer, len, 0);
|
||||
//
|
||||
// return ret;
|
||||
@@ -371,11 +359,6 @@
|
||||
// return -1;
|
||||
// }
|
||||
//
|
||||
// //MSC_LOG_TX_MESSAGE (MSC_M2AP_SRC_ENB,
|
||||
// // MSC_M2AP_TARGET_ENB, NULL, 0,
|
||||
// // "0 M2Setup/unsuccessfulOutcome assoc_id %u cause %u value %u",
|
||||
// // assoc_id, cause_type, cause_value);
|
||||
//
|
||||
// m2ap_eNB_itti_send_sctp_data_req(instance, assoc_id, buffer, len, 0);
|
||||
//
|
||||
// return ret;
|
||||
@@ -561,8 +544,6 @@ int m2ap_eNB_set_cause (M2AP_Cause_t * cause_p,
|
||||
// return -1;
|
||||
// }
|
||||
//
|
||||
// MSC_LOG_TX_MESSAGE (MSC_M2AP_SRC_ENB, MSC_M2AP_TARGET_ENB, NULL, 0, "0 X2Handover/initiatingMessage assoc_id %u", m2ap_eNB_data_p->assoc_id);
|
||||
//
|
||||
// m2ap_eNB_itti_send_sctp_data_req(instance_p->instance, m2ap_eNB_data_p->assoc_id, buffer, len, 1);
|
||||
//
|
||||
// return ret;
|
||||
@@ -654,8 +635,6 @@ int m2ap_eNB_set_cause (M2AP_Cause_t * cause_p,
|
||||
// return -1;
|
||||
// }
|
||||
//
|
||||
// MSC_LOG_TX_MESSAGE (MSC_M2AP_SRC_ENB, MSC_M2AP_TARGET_ENB, NULL, 0, "0 X2Handover/successfulOutcome assoc_id %u", m2ap_eNB_data_p->assoc_id);
|
||||
//
|
||||
// m2ap_eNB_itti_send_sctp_data_req(instance_p->instance, m2ap_eNB_data_p->assoc_id, buffer, len, 1);
|
||||
//
|
||||
// return ret;
|
||||
@@ -716,8 +695,6 @@ int m2ap_eNB_set_cause (M2AP_Cause_t * cause_p,
|
||||
// return -1;
|
||||
// }
|
||||
//
|
||||
// MSC_LOG_TX_MESSAGE (MSC_M2AP_SRC_ENB, MSC_M2AP_TARGET_ENB, NULL, 0, "0 X2UEContextRelease/initiatingMessage assoc_id %u", m2ap_eNB_data_p->assoc_id);
|
||||
//
|
||||
// m2ap_eNB_itti_send_sctp_data_req(instance_p->instance, m2ap_eNB_data_p->assoc_id, buffer, len, 1);
|
||||
//
|
||||
// return ret;
|
||||
@@ -800,8 +777,6 @@ int m2ap_eNB_set_cause (M2AP_Cause_t * cause_p,
|
||||
// return -1;
|
||||
// }
|
||||
//
|
||||
// MSC_LOG_TX_MESSAGE (MSC_M2AP_SRC_ENB, MSC_M2AP_TARGET_ENB, NULL, 0, "0 X2HandoverCancel/initiatingMessage assoc_id %u", m2ap_eNB_data_p->assoc_id);
|
||||
//
|
||||
// m2ap_eNB_itti_send_sctp_data_req(instance_p->instance, m2ap_eNB_data_p->assoc_id, buffer, len, 1);
|
||||
//
|
||||
// return ret;
|
||||
|
||||
@@ -44,7 +44,6 @@
|
||||
//#include "m2ap_MCE_interface_management.h"
|
||||
#include "m2ap_eNB_interface_management.h"
|
||||
|
||||
#include "msc.h"
|
||||
#include "assertions.h"
|
||||
#include "conversions.h"
|
||||
|
||||
|
||||
@@ -44,7 +44,6 @@
|
||||
|
||||
#include "m2ap_itti_messaging.h"
|
||||
|
||||
#include "msc.h"
|
||||
#include "assertions.h"
|
||||
#include "conversions.h"
|
||||
|
||||
@@ -255,15 +254,6 @@ int eNB_send_MBMS_SCHEDULING_INFORMATION_RESPONSE(instance_t instance, m2ap_mbms
|
||||
|
||||
|
||||
LOG_D(M2AP,"pdu.present %d\n",pdu.present);
|
||||
// MSC_LOG_TX_MESSAGE(
|
||||
// MSC_M2AP_eNB,
|
||||
// MSC_M2AP_MCE,
|
||||
// (const char *)buffer,
|
||||
// len,
|
||||
// MSC_AS_TIME_FMT" M2_SETUP_REQUEST initiatingMessage MCEname %s",
|
||||
// 0,0,//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
// m2ap_eNB_data_p->ENBname);
|
||||
|
||||
m2ap_eNB_itti_send_sctp_data_req(instance, m2ap_enb_data_g->assoc_id, buffer, len, 0);
|
||||
return 0;
|
||||
}
|
||||
@@ -359,14 +349,6 @@ int eNB_send_MBMS_SESSION_START_RESPONSE(instance_t instance, m2ap_session_start
|
||||
|
||||
|
||||
LOG_D(M2AP,"pdu.present %d\n",pdu.present);
|
||||
// MSC_LOG_TX_MESSAGE(
|
||||
// MSC_M2AP_eNB,
|
||||
// MSC_M2AP_MCE,
|
||||
// (const char *)buffer,
|
||||
// len,
|
||||
// MSC_AS_TIME_FMT" M2_SETUP_REQUEST initiatingMessage MCEname %s",
|
||||
// 0,0,//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
// m2ap_eNB_data_p->ENBname);
|
||||
|
||||
m2ap_eNB_itti_send_sctp_data_req(instance, m2ap_enb_data_g->assoc_id, buffer, len, 0);
|
||||
return 0;
|
||||
@@ -531,14 +513,6 @@ int eNB_send_MBMS_SESSION_STOP_RESPONSE(instance_t instance, m2ap_session_stop_r
|
||||
|
||||
|
||||
LOG_D(M2AP,"pdu.present %d\n",pdu.present);
|
||||
// MSC_LOG_TX_MESSAGE(
|
||||
// MSC_M2AP_eNB,
|
||||
// MSC_M2AP_MCE,
|
||||
// (const char *)buffer,
|
||||
// len,
|
||||
// MSC_AS_TIME_FMT" M2_SETUP_REQUEST initiatingMessage MCEname %s",
|
||||
// 0,0,//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
// m2ap_eNB_data_p->ENBname);
|
||||
|
||||
m2ap_eNB_itti_send_sctp_data_req(instance, m2ap_enb_data_g->assoc_id, buffer, len, 0);
|
||||
return 0;
|
||||
@@ -700,15 +674,6 @@ int eNB_send_M2_SETUP_REQUEST(m2ap_eNB_instance_t *instance_p, m2ap_eNB_data_t*
|
||||
|
||||
|
||||
LOG_D(M2AP,"pdu.present %d\n",pdu.present);
|
||||
// MSC_LOG_TX_MESSAGE(
|
||||
// MSC_M2AP_eNB,
|
||||
// MSC_M2AP_MCE,
|
||||
// (const char *)buffer,
|
||||
// len,
|
||||
// MSC_AS_TIME_FMT" M2_SETUP_REQUEST initiatingMessage MCEname %s",
|
||||
// 0,0,//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
// m2ap_eNB_data_p->ENBname);
|
||||
|
||||
|
||||
// buffer = &bytes[0];
|
||||
// len = 40;
|
||||
@@ -826,15 +791,6 @@ int eNB_handle_M2_SETUP_RESPONSE(instance_t instance,
|
||||
//for (int i=0;i<num_cells_to_activate;i++)
|
||||
// AssertFatal(M2AP_SETUP_RESP (msg_p).num_SI[i] > 0, "System Information %d is missing",i);
|
||||
|
||||
//MSC_LOG_RX_MESSAGE(
|
||||
// MSC_M2AP_eNB,
|
||||
// MSC_M2AP_CU,
|
||||
// 0,
|
||||
// 0,
|
||||
// MSC_AS_TIME_FMT" eNB_handle_M2_SETUP_RESPONSE successfulOutcome assoc_id %d",
|
||||
// 0,0,//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
// assoc_id);
|
||||
|
||||
//LOG_D(M2AP, "Sending M2AP_SETUP_RESP ITTI message to ENB_APP with assoc_id (%d->%d)\n",
|
||||
// assoc_id,ENB_MOeNBLE_ID_TO_INSTANCE(assoc_id));
|
||||
//itti_send_msg_to_task(TASK_ENB_APP, ENB_MODULE_ID_TO_INSTANCE(assoc_id), msg_p2);
|
||||
@@ -880,15 +836,6 @@ int eNB_handle_M2_SETUP_FAILURE(instance_t instance,
|
||||
//for (int i=0;i<num_cells_to_activate;i++)
|
||||
// AssertFatal(M2AP_SETUP_RESP (msg_p).num_SI[i] > 0, "System Information %d is missing",i);
|
||||
|
||||
//MSC_LOG_RX_MESSAGE(
|
||||
// MSC_M2AP_eNB,
|
||||
// MSC_M2AP_CU,
|
||||
// 0,
|
||||
// 0,
|
||||
// MSC_AS_TIME_FMT" eNB_handle_M2_SETUP_RESPONSE successfulOutcome assoc_id %d",
|
||||
// 0,0,//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
// assoc_id);
|
||||
|
||||
//LOG_D(M2AP, "Sending M2AP_SETUP_RESP ITTI message to ENB_APP with assoc_id (%d->%d)\n",
|
||||
// assoc_id,ENB_MOeNBLE_ID_TO_INSTANCE(assoc_id));
|
||||
|
||||
@@ -1025,15 +972,6 @@ int eNB_send_eNB_CONFIGURATION_UPDATE(instance_t instance, m2ap_enb_configuratio
|
||||
|
||||
|
||||
LOG_D(M2AP,"pdu.present %d\n",pdu.present);
|
||||
// MSC_LOG_TX_MESSAGE(
|
||||
// MSC_M2AP_eNB,
|
||||
// MSC_M2AP_MCE,
|
||||
// (const char *)buffer,
|
||||
// len,
|
||||
// MSC_AS_TIME_FMT" M2_SETUP_REQUEST initiatingMessage MCEname %s",
|
||||
// 0,0,//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
// m2ap_eNB_data_p->ENBname);
|
||||
|
||||
|
||||
// buffer = &bytes[0];
|
||||
// len = 40;
|
||||
@@ -1086,15 +1024,6 @@ int eNB_handle_eNB_CONFIGURATION_UPDATE_FAILURE(instance_t instance,
|
||||
//for (int i=0;i<num_cells_to_activate;i++)
|
||||
// AssertFatal(M2AP_SETUP_RESP (msg_p).num_SI[i] > 0, "System Information %d is missing",i);
|
||||
|
||||
//MSC_LOG_RX_MESSAGE(
|
||||
// MSC_M2AP_eNB,
|
||||
// MSC_M2AP_CU,
|
||||
// 0,
|
||||
// 0,
|
||||
// MSC_AS_TIME_FMT" eNB_handle_M2_SETUP_RESPONSE successfulOutcome assoc_id %d",
|
||||
// 0,0,//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
// assoc_id);
|
||||
|
||||
//LOG_D(M2AP, "Sending M2AP_SETUP_RESP ITTI message to ENB_APP with assoc_id (%d->%d)\n",
|
||||
// assoc_id,ENB_MOeNBLE_ID_TO_INSTANCE(assoc_id));
|
||||
|
||||
|
||||
@@ -44,7 +44,6 @@
|
||||
#include "m2ap_MCE_interface_management.h"
|
||||
#include "m2ap_eNB_interface_management.h"
|
||||
|
||||
#include "msc.h"
|
||||
#include "assertions.h"
|
||||
#include "conversions.h"
|
||||
|
||||
|
||||
@@ -43,7 +43,6 @@
|
||||
#include "common/utils/LOG/log.h"
|
||||
#include "rrc_eNB_UE_context.h"
|
||||
#include "pdcp.h"
|
||||
#include "msc.h"
|
||||
#include "common/ran_context.h"
|
||||
|
||||
#include "intertask_interface.h"
|
||||
|
||||
@@ -34,7 +34,6 @@
|
||||
#include "common/utils/LOG/log.h"
|
||||
#include "rrc_eNB_UE_context.h"
|
||||
#include "pdcp.h"
|
||||
#include "msc.h"
|
||||
#include "common/ran_context.h"
|
||||
|
||||
#include "intertask_interface.h"
|
||||
@@ -62,16 +61,6 @@ rrc_data_req(
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
ctxt_pP->enb_flag ? MSC_RRC_ENB : MSC_RRC_UE,
|
||||
ctxt_pP->enb_flag ? MSC_PDCP_ENB : MSC_PDCP_UE,
|
||||
buffer_pP,
|
||||
sdu_sizeP,
|
||||
MSC_AS_TIME_FMT"RRC_DCCH_DATA_REQ UE %x MUI %d size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ctxt_pP->rnti,
|
||||
muiP,
|
||||
sdu_sizeP);
|
||||
MessageDef *message_p;
|
||||
// Uses a new buffer to avoid issue with PDCP buffer content that could be changed by PDCP (asynchronous message handling).
|
||||
uint8_t *message_buffer;
|
||||
|
||||
@@ -44,7 +44,6 @@
|
||||
#include "common/utils/LOG/log.h"
|
||||
#include "rrc_eNB_UE_context.h"
|
||||
#include "pdcp.h"
|
||||
#include "msc.h"
|
||||
|
||||
|
||||
#include "intertask_interface.h"
|
||||
@@ -274,16 +273,6 @@ rrc_data_req_ue(
|
||||
)
|
||||
//------------------------------------------------------------------------------
|
||||
{
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
ctxt_pP->enb_flag ? MSC_RRC_ENB : MSC_RRC_UE,
|
||||
ctxt_pP->enb_flag ? MSC_PDCP_ENB : MSC_PDCP_UE,
|
||||
buffer_pP,
|
||||
sdu_sizeP,
|
||||
MSC_AS_TIME_FMT"RRC_DCCH_DATA_REQ UE %x MUI %d size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ctxt_pP->rnti,
|
||||
muiP,
|
||||
sdu_sizeP);
|
||||
{
|
||||
MessageDef *message_p;
|
||||
// Uses a new buffer to avoid issue with PDCP buffer content that could be changed by PDCP (asynchronous message handling).
|
||||
|
||||
@@ -71,7 +71,6 @@
|
||||
|
||||
#include "pdcp.h"
|
||||
#include "plmn_data.h"
|
||||
#include "msc.h"
|
||||
#include <common/utils/system.h>
|
||||
|
||||
#include "intertask_interface.h"
|
||||
@@ -1390,16 +1389,6 @@ rrc_ue_process_radioResourceConfigDedicated(
|
||||
uint8_t *kUPenc = NULL;
|
||||
derive_key_up_enc(UE_rrc_inst[ctxt_pP->module_id].integrity_algorithm,
|
||||
UE_rrc_inst[ctxt_pP->module_id].kenb, &kUPenc);
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_UE,
|
||||
MSC_PDCP_UE,
|
||||
NULL,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" CONFIG_REQ UE %x DRB (security %X)",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ctxt_pP->rnti,
|
||||
UE_rrc_inst[ctxt_pP->module_id].ciphering_algorithm |
|
||||
(UE_rrc_inst[ctxt_pP->module_id].integrity_algorithm << 4));
|
||||
// Refresh DRBs
|
||||
rrc_pdcp_config_asn1_req(ctxt_pP,
|
||||
(LTE_SRB_ToAddModList_t *)NULL,
|
||||
|
||||
@@ -58,7 +58,6 @@
|
||||
#include "rlc.h"
|
||||
#include "rrc_eNB_UE_context.h"
|
||||
#include "platform_types.h"
|
||||
#include "msc.h"
|
||||
#include "LTE_SL-CommConfig-r12.h"
|
||||
#include "LTE_PeriodicBSR-Timer-r12.h"
|
||||
#include "LTE_RetxBSR-Timer-r12.h"
|
||||
@@ -1247,16 +1246,6 @@ rrc_eNB_generate_SecurityModeCommand(
|
||||
size,
|
||||
rrc_eNB_mui,
|
||||
DCCH);
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_RRC_UE,
|
||||
buffer,
|
||||
size,
|
||||
MSC_AS_TIME_FMT" securityModeCommand UE %x MUI %d size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_context.rnti,
|
||||
rrc_eNB_mui,
|
||||
size);
|
||||
|
||||
if (!NODE_IS_DU(RC.rrc[ctxt_pP->module_id]->node_type)) {
|
||||
LOG_I(RRC,"calling rrc_data_req :securityModeCommand\n");
|
||||
@@ -1301,16 +1290,6 @@ rrc_eNB_generate_UECapabilityEnquiry(
|
||||
size,
|
||||
rrc_eNB_mui,
|
||||
DCCH);
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_RRC_UE,
|
||||
buffer,
|
||||
size,
|
||||
MSC_AS_TIME_FMT" rrcUECapabilityEnquiry UE %x MUI %d size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_context.rnti,
|
||||
rrc_eNB_mui,
|
||||
size);
|
||||
rrc_data_req(
|
||||
ctxt_pP,
|
||||
DCCH,
|
||||
@@ -1352,16 +1331,6 @@ rrc_eNB_generate_NR_UECapabilityEnquiry(
|
||||
size,
|
||||
rrc_eNB_mui,
|
||||
DCCH);
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_RRC_UE,
|
||||
buffer,
|
||||
size,
|
||||
MSC_AS_TIME_FMT" rrcNRUECapabilityEnquiry UE %x MUI %d size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_context.rnti,
|
||||
rrc_eNB_mui,
|
||||
size);
|
||||
rrc_data_req(
|
||||
ctxt_pP,
|
||||
DCCH,
|
||||
@@ -1391,15 +1360,6 @@ rrc_eNB_generate_RRCConnectionReject(
|
||||
(char *)(ue_p->Srb0.Tx_buffer.Payload),
|
||||
ue_p->Srb0.Tx_buffer.payload_size,
|
||||
"[MSG] RRCConnectionReject\n");
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_RRC_UE,
|
||||
ue_p->Srb0.Tx_buffer.Header,
|
||||
ue_p->Srb0.Tx_buffer.payload_size,
|
||||
MSC_AS_TIME_FMT" LTE_RRCConnectionReject UE %x size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP == NULL ? -1 : ue_context_pP->ue_context.rnti,
|
||||
ue_p->Srb0.Tx_buffer.payload_size);
|
||||
LOG_I(RRC,
|
||||
PROTOCOL_RRC_CTXT_UE_FMT" [RAPROC] Logical Channel DL-CCCH, Generating LTE_RRCConnectionReject (bytes %d)\n",
|
||||
PROTOCOL_RRC_CTXT_UE_ARGS(ctxt_pP),
|
||||
@@ -1509,14 +1469,6 @@ rrc_eNB_generate_RRCConnectionReestablishment(
|
||||
} // for (int cnt = 0; cnt < (*SRB_configList)->list.count; cnt++)
|
||||
} // if (*SRB_configList != NULL)
|
||||
|
||||
MSC_LOG_TX_MESSAGE(MSC_RRC_ENB,
|
||||
MSC_RRC_UE,
|
||||
ue_context->Srb0.Tx_buffer.Header,
|
||||
ue_context->Srb0.Tx_buffer.payload_size,
|
||||
MSC_AS_TIME_FMT" LTE_RRCConnectionReestablishment UE %x size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context->rnti,
|
||||
ue_context->Srb0.Tx_buffer.payload_size);
|
||||
LOG_I(RRC, PROTOCOL_RRC_CTXT_UE_FMT" [RAPROC] Logical Channel DL-CCCH, Generating LTE_RRCConnectionReestablishment (bytes %d)\n",
|
||||
PROTOCOL_RRC_CTXT_UE_ARGS(ctxt_pP),
|
||||
ue_context->Srb0.Tx_buffer.payload_size);
|
||||
@@ -2058,16 +2010,6 @@ rrc_eNB_process_RRCConnectionReestablishmentComplete(
|
||||
LOG_D(RRC,
|
||||
"[FRAME %05d][RRC_eNB][MOD %u][][--- PDCP_DATA_REQ/%d Bytes (rrcConnectionReconfiguration to UE %x MUI %d) --->][PDCP][MOD %u][RB %u]\n",
|
||||
ctxt_pP->frame, ctxt_pP->module_id, size, ue_context_pP->ue_context.rnti, rrc_eNB_mui, ctxt_pP->module_id, DCCH);
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_RRC_UE,
|
||||
buffer,
|
||||
size,
|
||||
MSC_AS_TIME_FMT" LTE_RRCConnectionReconfiguration UE %x MUI %d size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_context.rnti,
|
||||
rrc_eNB_mui,
|
||||
size);
|
||||
rrc_data_req(
|
||||
ctxt_pP,
|
||||
DCCH,
|
||||
@@ -2154,15 +2096,6 @@ rrc_eNB_generate_RRCConnectionReestablishmentReject(
|
||||
(char *)(ue_p->Srb0.Tx_buffer.Payload),
|
||||
ue_p->Srb0.Tx_buffer.payload_size,
|
||||
"[MSG] RRCConnectionReestablishmentReject\n");
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_RRC_UE,
|
||||
ue_p->Srb0.Tx_buffer.Header,
|
||||
ue_p->Srb0.Tx_buffer.payload_size,
|
||||
MSC_AS_TIME_FMT" LTE_RRCConnectionReestablishmentReject UE %x size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP == NULL ? -1 : ue_context_pP->ue_context.rnti,
|
||||
ue_p->Srb0.Tx_buffer.payload_size);
|
||||
LOG_I(RRC,
|
||||
PROTOCOL_RRC_CTXT_UE_FMT" [RAPROC] Logical Channel DL-CCCH, Generating LTE_RRCConnectionReestablishmentReject (bytes %d)\n",
|
||||
PROTOCOL_RRC_CTXT_UE_ARGS(ctxt_pP),
|
||||
@@ -2230,16 +2163,6 @@ rrc_eNB_generate_RRCConnectionRelease(
|
||||
size,
|
||||
rrc_eNB_mui,
|
||||
DCCH);
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_RRC_UE,
|
||||
buffer,
|
||||
size,
|
||||
MSC_AS_TIME_FMT" LTE_RRCConnectionRelease UE %x MUI %d size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_context.rnti,
|
||||
rrc_eNB_mui,
|
||||
size);
|
||||
pthread_mutex_lock(&rrc_release_freelist);
|
||||
|
||||
for (release_num = 0; release_num < NUMBER_OF_UE_MAX; release_num++) {
|
||||
@@ -2525,16 +2448,6 @@ rrc_eNB_generate_dedicatedRRCConnectionReconfiguration(const protocol_ctxt_t *co
|
||||
LOG_D(RRC,
|
||||
"[FRAME %05d][RRC_eNB][MOD %u][][--- PDCP_DATA_REQ/%d Bytes (rrcConnectionReconfiguration to UE %x MUI %d) --->][PDCP][MOD %u][RB %u]\n",
|
||||
ctxt_pP->frame, ctxt_pP->module_id, size, ue_context_pP->ue_context.rnti, rrc_eNB_mui, ctxt_pP->module_id, DCCH);
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_RRC_UE,
|
||||
buffer,
|
||||
size,
|
||||
MSC_AS_TIME_FMT" dedicated LTE_RRCConnectionReconfiguration UE %x MUI %d size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_context.rnti,
|
||||
rrc_eNB_mui,
|
||||
size);
|
||||
rrc_data_req(
|
||||
ctxt_pP,
|
||||
DCCH,
|
||||
@@ -2773,16 +2686,6 @@ rrc_eNB_modify_dedicatedRRCConnectionReconfiguration(const protocol_ctxt_t *cons
|
||||
LOG_D(RRC,
|
||||
"[FRAME %05d][RRC_eNB][MOD %u][][--- PDCP_DATA_REQ/%d Bytes (rrcConnectionReconfiguration to UE %x MUI %d) --->][PDCP][MOD %u][RB %u]\n",
|
||||
ctxt_pP->frame, ctxt_pP->module_id, size, ue_context_pP->ue_context.rnti, rrc_eNB_mui, ctxt_pP->module_id, DCCH);
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_RRC_UE,
|
||||
buffer,
|
||||
size,
|
||||
MSC_AS_TIME_FMT" dedicated LTE_RRCConnectionReconfiguration UE %x MUI %d size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_context.rnti,
|
||||
rrc_eNB_mui,
|
||||
size);
|
||||
rrc_data_req(
|
||||
ctxt_pP,
|
||||
DCCH,
|
||||
@@ -2883,16 +2786,6 @@ rrc_eNB_generate_dedicatedRRCConnectionReconfiguration_release( const protocol_
|
||||
LOG_D(RRC,
|
||||
"[FRAME %05d][RRC_eNB][MOD %u][][--- PDCP_DATA_REQ/%d Bytes (rrcConnectionReconfiguration to UE %x MUI %d) --->][PDCP][MOD %u][RB %u]\n",
|
||||
ctxt_pP->frame, ctxt_pP->module_id, size, ue_context_pP->ue_context.rnti, rrc_eNB_mui, ctxt_pP->module_id, DCCH);
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_RRC_UE,
|
||||
buffer,
|
||||
size,
|
||||
MSC_AS_TIME_FMT" dedicated LTE_RRCConnectionReconfiguration UE %x MUI %d size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_context.rnti,
|
||||
rrc_eNB_mui,
|
||||
size);
|
||||
rrc_data_req(
|
||||
ctxt_pP,
|
||||
DCCH,
|
||||
@@ -3603,15 +3496,6 @@ void rrc_eNB_generate_defaultRRCConnectionReconfiguration(const protocol_ctxt_t
|
||||
rrc_eNB_mui,
|
||||
ctxt_pP->module_id,
|
||||
DCCH);
|
||||
MSC_LOG_TX_MESSAGE(MSC_RRC_ENB,
|
||||
MSC_RRC_UE,
|
||||
buffer,
|
||||
size,
|
||||
MSC_AS_TIME_FMT" LTE_RRCConnectionReconfiguration UE %x MUI %d size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_context.rnti,
|
||||
rrc_eNB_mui,
|
||||
size);
|
||||
rrc_data_req(ctxt_pP,
|
||||
DCCH,
|
||||
rrc_eNB_mui++,
|
||||
@@ -4316,15 +4200,6 @@ flexran_rrc_eNB_generate_defaultRRCConnectionReconfiguration(const protocol_ctxt
|
||||
rrc_eNB_mui,
|
||||
ctxt_pP->module_id,
|
||||
DCCH);
|
||||
MSC_LOG_TX_MESSAGE(MSC_RRC_ENB,
|
||||
MSC_RRC_UE,
|
||||
buffer,
|
||||
size,
|
||||
MSC_AS_TIME_FMT" LTE_RRCConnectionReconfiguration UE %x MUI %d size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_context.rnti,
|
||||
rrc_eNB_mui,
|
||||
size);
|
||||
rrc_data_req(ctxt_pP,
|
||||
DCCH,
|
||||
rrc_eNB_mui++,
|
||||
@@ -4392,16 +4267,6 @@ rrc_eNB_generate_RRCConnectionReconfiguration_SCell(
|
||||
);
|
||||
LOG_I(RRC,"[eNB %d] Frame %d, Logical Channel DL-DCCH, Generate LTE_RRCConnectionReconfiguration (bytes %d, UE id %x)\n",
|
||||
ctxt_pP->module_id,ctxt_pP->frame, size, ue_context_pP->ue_context.rnti);
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_RRC_UE,
|
||||
buffer,
|
||||
size,
|
||||
MSC_AS_TIME_FMT" LTE_RRCConnectionReconfiguration UE %x MUI %d size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_context.rnti,
|
||||
rrc_eNB_mui,
|
||||
size);
|
||||
rrc_data_req(
|
||||
ctxt_pP,
|
||||
DCCH,
|
||||
@@ -4996,7 +4861,6 @@ void rrc_eNB_handover_ue_context_release(
|
||||
//msg_release_p = itti_alloc_new_message(TASK_RRC_ENB, 0, S1AP_UE_CONTEXT_RELEASE);
|
||||
//itti_send_msg_to_task(TASK_S1AP, ctxt_pP->module_id, msg_release_p);
|
||||
s1ap_ue_context_release(ctxt_pP->instance, ue_context_p->ue_context.eNB_ue_s1ap_id);
|
||||
//MSC_LOG_TX_MESSAGE(MSC_RRC_ENB, MSC_GTPU_ENB, NULL,0, "0 GTPV1U_ENB_DELETE_TUNNEL_REQ rnti %x ", eNB_ue_s1ap_id);
|
||||
gtpv1u_enb_delete_tunnel_req_t delete_tunnels={0};
|
||||
delete_tunnels.rnti = ue_context_p->ue_context.rnti;
|
||||
delete_tunnels.from_gnb = 0;
|
||||
@@ -6330,16 +6194,6 @@ rrc_eNB_generate_HO_RRCConnectionReconfiguration(const protocol_ctxt_t *const ct
|
||||
LOG_D(RRC,
|
||||
"[FRAME %05d][RRC_eNB][MOD %u][][--- PDCP_DATA_REQ/%d Bytes (rrcConnectionReconfiguration handover to UE %x MUI %d) --->][PDCP][MOD %u][RB %u]\n",
|
||||
ctxt_pP->frame, ctxt_pP->module_id, size, ue_context_pP->ue_context.rnti, rrc_eNB_mui, ctxt_pP->module_id, DCCH);
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_RRC_UE,
|
||||
buffer,
|
||||
size,
|
||||
MSC_AS_TIME_FMT" rrcConnectionReconfiguration handover UE %x MUI %d size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_context.rnti,
|
||||
rrc_eNB_mui,
|
||||
size);
|
||||
/* Refresh SRBs/DRBs */
|
||||
rrc_pdcp_config_asn1_req(ctxt_pP,
|
||||
*SRB_configList2, // NULL,
|
||||
@@ -6535,9 +6389,6 @@ rrc_eNB_process_RRCConnectionReconfigurationComplete(
|
||||
ue_context_pP->ue_context.kenb,
|
||||
&kRRCint);
|
||||
/* Refresh SRBs/DRBs */
|
||||
MSC_LOG_TX_MESSAGE(MSC_RRC_ENB, MSC_PDCP_ENB, NULL, 0, MSC_AS_TIME_FMT" CONFIG_REQ UE %x DRB (security unchanged)",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_context.rnti);
|
||||
rrc_pdcp_config_asn1_req(ctxt_pP,
|
||||
SRB_configList, // NULL,
|
||||
DRB_configList,
|
||||
@@ -6906,15 +6757,6 @@ rrc_eNB_generate_RRCConnectionSetup(
|
||||
LOG_W(RRC, "Unknown node type %d\n", RC.rrc[ctxt_pP->module_id]->node_type);
|
||||
}
|
||||
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_RRC_UE,
|
||||
ue_p->Srb0.Tx_buffer.Header, // LG WARNING
|
||||
ue_p->Srb0.Tx_buffer.payload_size,
|
||||
MSC_AS_TIME_FMT" RRCConnectionSetup UE %x size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_context.rnti,
|
||||
ue_p->Srb0.Tx_buffer.payload_size);
|
||||
LOG_I(RRC,
|
||||
PROTOCOL_RRC_CTXT_UE_FMT" [RAPROC] Logical Channel DL-CCCH, Generating RRCConnectionSetup (bytes %d)\n",
|
||||
PROTOCOL_RRC_CTXT_UE_ARGS(ctxt_pP),
|
||||
@@ -7326,13 +7168,6 @@ rrc_eNB_decode_ccch(
|
||||
LOG_I(RRC, PROTOCOL_RRC_CTXT_UE_FMT"CALLING RLC CONFIG SRB1 (rbid %d)\n",
|
||||
PROTOCOL_RRC_CTXT_UE_ARGS(ctxt_pP),
|
||||
Idx);
|
||||
MSC_LOG_TX_MESSAGE(MSC_RRC_ENB,
|
||||
MSC_PDCP_ENB,
|
||||
NULL,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" CONFIG_REQ UE %x SRB",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_p->ue_context.rnti);
|
||||
rrc_pdcp_config_asn1_req(ctxt_pP,
|
||||
ue_context_p->ue_context.SRB_configList,
|
||||
(LTE_DRB_ToAddModList_t *) NULL,
|
||||
@@ -7373,15 +7208,6 @@ rrc_eNB_decode_ccch(
|
||||
if (ue_context_p != NULL) {
|
||||
// erase content
|
||||
rrc_eNB_free_mem_UE_context(ctxt_pP, ue_context_p);
|
||||
MSC_LOG_RX_DISCARDED_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_RRC_UE,
|
||||
buffer,
|
||||
dec_rval.consumed,
|
||||
MSC_AS_TIME_FMT" LTE_RRCConnectionRequest UE %x size %u (UE already in context)",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_p->ue_context.rnti,
|
||||
dec_rval.consumed);
|
||||
} else {
|
||||
rrcConnectionRequest = &ul_ccch_msg->message.choice.c1.choice.rrcConnectionRequest.criticalExtensions.choice.rrcConnectionRequest_r8;
|
||||
{
|
||||
@@ -7467,18 +7293,6 @@ rrc_eNB_decode_ccch(
|
||||
}
|
||||
}
|
||||
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_RRC_UE,
|
||||
buffer,
|
||||
dec_rval.consumed,
|
||||
MSC_AS_TIME_FMT" RRCConnectionRequest UE %x size %u (s-TMSI mmec %u m_TMSI %u random UE id (0x%" PRIx64 ")",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_p->ue_context.rnti,
|
||||
dec_rval.consumed,
|
||||
ue_context_p->ue_context.Initialue_identity_s_TMSI.mme_code,
|
||||
ue_context_p->ue_context.Initialue_identity_s_TMSI.m_tmsi,
|
||||
ue_context_p->ue_context.random_ue_identity);
|
||||
} else {
|
||||
LOG_E(RRC,
|
||||
PROTOCOL_RRC_CTXT_UE_FMT" RRCConnectionRequest without random UE identity or S-TMSI not supported, let's reject the UE\n",
|
||||
@@ -7567,14 +7381,6 @@ rrc_eNB_decode_ccch(
|
||||
LOG_I(RRC, PROTOCOL_RRC_CTXT_UE_FMT"CALLING RLC CONFIG SRB1 (rbid %d)\n",
|
||||
PROTOCOL_RRC_CTXT_UE_ARGS(ctxt_pP),
|
||||
Idx);
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_PDCP_ENB,
|
||||
NULL,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" CONFIG_REQ UE %x SRB",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_p->ue_context.rnti);
|
||||
rrc_pdcp_config_asn1_req(ctxt_pP,
|
||||
ue_context_p->ue_context.SRB_configList,
|
||||
(LTE_DRB_ToAddModList_t *) NULL,
|
||||
@@ -7949,15 +7755,6 @@ rrc_eNB_decode_dcch(
|
||||
|
||||
LOG_DUMPMSG(RRC,DEBUG_RRC,(char *)(Rx_sdu),sdu_sizeP,
|
||||
"[MSG] RRC Connection Reconfiguration Complete\n");
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_RRC_UE,
|
||||
Rx_sdu,
|
||||
sdu_sizeP,
|
||||
MSC_AS_TIME_FMT" LTE_RRCConnectionReconfigurationComplete UE %x size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_p->ue_context.rnti,
|
||||
sdu_sizeP);
|
||||
LOG_D(RRC,
|
||||
PROTOCOL_RRC_CTXT_UE_FMT" RLC RB %02d --- RLC_DATA_IND %d bytes "
|
||||
"(RRCConnectionReconfigurationComplete) ---> RRC_eNB]\n",
|
||||
@@ -8169,15 +7966,6 @@ rrc_eNB_decode_dcch(
|
||||
T_INT(ctxt_pP->subframe), T_INT(ctxt_pP->rnti));
|
||||
LOG_DUMPMSG(RRC,DEBUG_RRC,(char *)Rx_sdu,sdu_sizeP,
|
||||
"[MSG] RRC Connection Reestablishment Complete\n");
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_RRC_UE,
|
||||
Rx_sdu,
|
||||
sdu_sizeP,
|
||||
MSC_AS_TIME_FMT" LTE_RRCConnectionReestablishmentComplete UE %x size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_p->ue_context.rnti,
|
||||
sdu_sizeP);
|
||||
LOG_I(RRC,
|
||||
PROTOCOL_RRC_CTXT_UE_FMT" RLC RB %02d --- RLC_DATA_IND %d bytes "
|
||||
"(rrcConnectionReestablishmentComplete) ---> RRC_eNB\n",
|
||||
@@ -8254,15 +8042,6 @@ rrc_eNB_decode_dcch(
|
||||
|
||||
LOG_DUMPMSG(RRC,DEBUG_RRC,(char *)Rx_sdu,sdu_sizeP,
|
||||
"[MSG] RRC Connection SetupComplete\n");
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_RRC_UE,
|
||||
Rx_sdu,
|
||||
sdu_sizeP,
|
||||
MSC_AS_TIME_FMT" LTE_RRCConnectionSetupComplete UE %x size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_p->ue_context.rnti,
|
||||
sdu_sizeP);
|
||||
LOG_D(RRC,
|
||||
PROTOCOL_RRC_CTXT_UE_FMT" RLC RB %02d --- RLC_DATA_IND %d bytes "
|
||||
"(RRCConnectionSetupComplete) ---> RRC_eNB\n",
|
||||
@@ -8308,15 +8087,6 @@ rrc_eNB_decode_dcch(
|
||||
|
||||
LOG_DUMPMSG(RRC,DEBUG_RRC,(char *)Rx_sdu,sdu_sizeP,
|
||||
"[MSG] RRC Security Mode Complete\n");
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_RRC_UE,
|
||||
Rx_sdu,
|
||||
sdu_sizeP,
|
||||
MSC_AS_TIME_FMT" securityModeComplete UE %x size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_p->ue_context.rnti,
|
||||
sdu_sizeP);
|
||||
LOG_I(RRC,
|
||||
PROTOCOL_RRC_CTXT_UE_FMT" received securityModeComplete on UL-DCCH %d from UE\n",
|
||||
PROTOCOL_RRC_CTXT_UE_ARGS(ctxt_pP),
|
||||
@@ -8345,15 +8115,6 @@ rrc_eNB_decode_dcch(
|
||||
T_INT(ctxt_pP->subframe), T_INT(ctxt_pP->rnti));
|
||||
LOG_DUMPMSG(RRC,DEBUG_RRC,(char *)Rx_sdu,sdu_sizeP,
|
||||
"[MSG] RRC Security Mode Failure\n");
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_RRC_UE,
|
||||
Rx_sdu,
|
||||
sdu_sizeP,
|
||||
MSC_AS_TIME_FMT" securityModeFailure UE %x size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_p->ue_context.rnti,
|
||||
sdu_sizeP);
|
||||
LOG_W(RRC,
|
||||
PROTOCOL_RRC_CTXT_UE_FMT" RLC RB %02d --- RLC_DATA_IND %d bytes "
|
||||
"(securityModeFailure) ---> RRC_eNB\n",
|
||||
@@ -8383,15 +8144,6 @@ rrc_eNB_decode_dcch(
|
||||
|
||||
LOG_DUMPMSG(RRC,DEBUG_RRC,(char *)Rx_sdu,sdu_sizeP,
|
||||
"[MSG] RRC UECapablility Information\n");
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_RRC_UE,
|
||||
Rx_sdu,
|
||||
sdu_sizeP,
|
||||
MSC_AS_TIME_FMT" ueCapabilityInformation UE %x size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_p->ue_context.rnti,
|
||||
sdu_sizeP);
|
||||
LOG_I(RRC,
|
||||
PROTOCOL_RRC_CTXT_UE_FMT" received ueCapabilityInformation on UL-DCCH %d from UE\n",
|
||||
PROTOCOL_RRC_CTXT_UE_ARGS(ctxt_pP),
|
||||
@@ -8569,15 +8321,6 @@ rrc_eNB_decode_dcch(
|
||||
LOG_D(RRC,"[MSG] RRC UL Information Transfer \n");
|
||||
LOG_DUMPMSG(RRC,DEBUG_RRC,(char *)Rx_sdu,sdu_sizeP,
|
||||
"[MSG] RRC UL Information Transfer \n");
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_RRC_UE,
|
||||
Rx_sdu,
|
||||
sdu_sizeP,
|
||||
MSC_AS_TIME_FMT" ulInformationTransfer UE %x size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_p->ue_context.rnti,
|
||||
sdu_sizeP);
|
||||
|
||||
if (EPC_MODE_ENABLED == 1) {
|
||||
rrc_eNB_send_S1AP_UPLINK_NAS(ctxt_pP,
|
||||
@@ -8668,15 +8411,6 @@ rrc_eNB_decode_dcch(
|
||||
LOG_I(RRC,"THINH [LTE_UL_DCCH_MessageType__messageClassExtension_PR_c2]\n");
|
||||
LOG_DUMPMSG(RRC,DEBUG_RRC,(char *)Rx_sdu,sdu_sizeP,
|
||||
"[MSG] RRC SidelinkUEInformation \n");
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_RRC_UE,
|
||||
Rx_sdu,
|
||||
sdu_sizeP,
|
||||
MSC_AS_TIME_FMT" SidelinkUEInformation UE %x size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_p->ue_context.rnti,
|
||||
sdu_sizeP);
|
||||
LOG_I(RRC,
|
||||
PROTOCOL_RRC_CTXT_UE_FMT" RLC RB %02d --- RLC_DATA_IND %d bytes "
|
||||
"(SidelinkUEInformation) ---> RRC_eNB\n",
|
||||
|
||||
@@ -32,7 +32,6 @@
|
||||
# include "RRC/LTE/MESSAGES/asn1_msg.h"
|
||||
# include "rrc_eNB_GTPV1U.h"
|
||||
# include "rrc_eNB_UE_context.h"
|
||||
# include "msc.h"
|
||||
|
||||
|
||||
#include "asn1_conversions.h"
|
||||
@@ -77,15 +76,6 @@ rrc_eNB_process_GTPV1U_CREATE_TUNNEL_RESP(
|
||||
create_tunnel_resp_pP->enb_addr.length);
|
||||
}
|
||||
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_GTPU_ENB,
|
||||
NULL,0,
|
||||
MSC_AS_TIME_FMT" CREATE_TUNNEL_RESP RNTI %"PRIx16" ntuns %u ebid %u enb-s1u teid %u",
|
||||
0,0,rnti,
|
||||
create_tunnel_resp_pP->num_tunnels,
|
||||
ue_context_p->ue_context.enb_gtp_ebi[0],
|
||||
ue_context_p->ue_context.enb_gtp_teid[0]);
|
||||
(void)rnti; /* avoid gcc warning "set but not used" */
|
||||
return 0;
|
||||
} else {
|
||||
|
||||
@@ -32,7 +32,6 @@
|
||||
# include "RRC/LTE/MESSAGES/asn1_msg.h"
|
||||
# include "rrc_eNB_M2AP.h"
|
||||
//# include "rrc_eNB_UE_context.h"
|
||||
# include "msc.h"
|
||||
# include "asn1_conversions.h"
|
||||
# include "intertask_interface.h"
|
||||
# include "common/ran_context.h"
|
||||
|
||||
@@ -48,7 +48,6 @@
|
||||
#include "pdcp_primitives.h"
|
||||
|
||||
#include "UTIL/OSA/osa_defs.h"
|
||||
#include <common/utils/msc/msc.h>
|
||||
|
||||
#include "LTE_UERadioAccessCapabilityInformation.h"
|
||||
|
||||
@@ -586,17 +585,6 @@ rrc_eNB_send_S1AP_INITIAL_CONTEXT_SETUP_RESP(
|
||||
// TODO add cause when it will be integrated
|
||||
}
|
||||
}
|
||||
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_S1AP_ENB,
|
||||
(const char *)&S1AP_INITIAL_CONTEXT_SETUP_RESP (msg_p),
|
||||
sizeof(s1ap_initial_context_setup_resp_t),
|
||||
MSC_AS_TIME_FMT" INITIAL_CONTEXT_SETUP_RESP UE %X eNB_ue_s1ap_id %u e_rabs:%u succ %u fail",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_id_rnti,
|
||||
S1AP_INITIAL_CONTEXT_SETUP_RESP (msg_p).eNB_ue_s1ap_id,
|
||||
e_rabs_done, e_rabs_failed);
|
||||
}
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
@@ -804,14 +792,6 @@ rrc_eNB_send_S1AP_NAS_FIRST_REQ(
|
||||
ue_context_pP->ue_context.ue_gummei.mnc_len = S1AP_NAS_FIRST_REQ (message_p).ue_identity.gummei.mnc_len;
|
||||
ue_context_pP->ue_context.ue_gummei.mme_code = S1AP_NAS_FIRST_REQ (message_p).ue_identity.gummei.mme_code;
|
||||
ue_context_pP->ue_context.ue_gummei.mme_group_id = S1AP_NAS_FIRST_REQ (message_p).ue_identity.gummei.mme_group_id;
|
||||
MSC_LOG_TX_MESSAGE(MSC_S1AP_ENB,
|
||||
MSC_S1AP_MME,
|
||||
(const char *)&message_p->ittiMsg.s1ap_nas_first_req,
|
||||
sizeof(s1ap_nas_first_req_t),
|
||||
MSC_AS_TIME_FMT" S1AP_NAS_FIRST_REQ eNB %u UE %x",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ctxt_pP->module_id,
|
||||
ctxt_pP->rnti);
|
||||
LOG_I(S1AP, "[eNB %d] Build S1AP_NAS_FIRST_REQ adding in s_TMSI: GUMMEI mme_code %u mme_group_id %u ue %x\n",
|
||||
ctxt_pP->module_id,
|
||||
S1AP_NAS_FIRST_REQ (message_p).ue_identity.gummei.mme_code,
|
||||
@@ -852,15 +832,6 @@ rrc_eNB_process_S1AP_DOWNLINK_NAS(
|
||||
eNB_ue_s1ap_id);
|
||||
|
||||
if (ue_context_p == NULL) {
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_S1AP_ENB,
|
||||
NULL,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" DOWNLINK-NAS UE initial id %u eNB_ue_s1ap_id %u",
|
||||
0,0,//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_initial_id,
|
||||
eNB_ue_s1ap_id);
|
||||
/* Can not associate this message to an UE index, send a failure to S1AP and discard it! */
|
||||
MessageDef *msg_fail_p;
|
||||
LOG_W(RRC, "[eNB %ld] In S1AP_DOWNLINK_NAS: unknown UE from S1AP ids (%d, %d)\n", instance, ue_initial_id, eNB_ue_s1ap_id);
|
||||
@@ -869,15 +840,6 @@ rrc_eNB_process_S1AP_DOWNLINK_NAS(
|
||||
S1AP_NAS_NON_DELIVERY_IND (msg_fail_p).nas_pdu.length = S1AP_DOWNLINK_NAS (msg_p).nas_pdu.length;
|
||||
S1AP_NAS_NON_DELIVERY_IND (msg_fail_p).nas_pdu.buffer = S1AP_DOWNLINK_NAS (msg_p).nas_pdu.buffer;
|
||||
// TODO add failure cause when defined!
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_S1AP_ENB,
|
||||
(const char *)NULL,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" S1AP_NAS_NON_DELIVERY_IND UE initial id %u eNB_ue_s1ap_id %u (ue ctxt !found)",
|
||||
0,0,//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_initial_id,
|
||||
eNB_ue_s1ap_id);
|
||||
itti_send_msg_to_task (TASK_S1AP, instance, msg_fail_p);
|
||||
return (-1);
|
||||
} else {
|
||||
@@ -889,15 +851,6 @@ rrc_eNB_process_S1AP_DOWNLINK_NAS(
|
||||
ue_context_p->ue_context.eNB_ue_s1ap_id = S1AP_DOWNLINK_NAS (msg_p).eNB_ue_s1ap_id;
|
||||
}
|
||||
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_S1AP_ENB,
|
||||
(const char *)NULL,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" DOWNLINK-NAS UE initial id %u eNB_ue_s1ap_id %u",
|
||||
0,0,//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_initial_id,
|
||||
S1AP_DOWNLINK_NAS (msg_p).eNB_ue_s1ap_id);
|
||||
/* Create message for PDCP (DLInformationTransfer_t) */
|
||||
length = do_DLInformationTransfer (
|
||||
instance,
|
||||
@@ -1195,12 +1148,6 @@ rrc_eNB_send_S1AP_UE_CONTEXT_RELEASE_REQ(
|
||||
if (ue_context_pP == NULL) {
|
||||
LOG_E(RRC, "[eNB] In S1AP_UE_CONTEXT_RELEASE_REQ: invalid UE\n");
|
||||
} else {
|
||||
MSC_LOG_TX_MESSAGE(MSC_RRC_ENB,
|
||||
MSC_S1AP_ENB,
|
||||
NULL,
|
||||
0,
|
||||
"0 S1AP_UE_CONTEXT_RELEASE_REQ eNB_ue_s1ap_id 0x%06"PRIX32" ",
|
||||
ue_context_pP->ue_context.eNB_ue_s1ap_id);
|
||||
MessageDef *msg_context_release_req_p = NULL;
|
||||
msg_context_release_req_p = itti_alloc_new_message(TASK_RRC_ENB, 0, S1AP_UE_CONTEXT_RELEASE_REQ);
|
||||
S1AP_UE_CONTEXT_RELEASE_REQ(msg_context_release_req_p).eNB_ue_s1ap_id = ue_context_pP->ue_context.eNB_ue_s1ap_id;
|
||||
@@ -1214,9 +1161,6 @@ void rrc_eNB_send_S1AP_UE_CONTEXT_RELEASE_CPLT(
|
||||
module_id_t enb_mod_idP,
|
||||
uint32_t eNB_ue_s1ap_id
|
||||
) {
|
||||
MSC_LOG_TX_MESSAGE(MSC_RRC_ENB, MSC_S1AP_ENB, NULL, 0,
|
||||
"0 S1AP_UE_CONTEXT_RELEASE_COMPLETE eNB_ue_s1ap_id 0x%06"PRIX32" ",
|
||||
eNB_ue_s1ap_id);
|
||||
MessageDef *msg = itti_alloc_new_message(TASK_RRC_ENB, 0, S1AP_UE_CONTEXT_RELEASE_COMPLETE);
|
||||
S1AP_UE_CONTEXT_RELEASE_COMPLETE(msg).eNB_ue_s1ap_id = eNB_ue_s1ap_id;
|
||||
itti_send_msg_to_task(TASK_S1AP, ENB_MODULE_ID_TO_INSTANCE(enb_mod_idP), msg);
|
||||
@@ -1247,14 +1191,6 @@ rrc_eNB_process_S1AP_UE_CONTEXT_RELEASE_COMMAND(
|
||||
LOG_W(RRC, "[eNB %ld] In S1AP_UE_CONTEXT_RELEASE_COMMAND: unknown UE from eNB_ue_s1ap_id (%d)\n",
|
||||
instance,
|
||||
eNB_ue_s1ap_id);
|
||||
MSC_LOG_EVENT(MSC_RRC_ENB, "0 S1AP_UE_CONTEXT_RELEASE_COMPLETE eNB_ue_s1ap_id 0x%06"PRIX32" context not found",
|
||||
eNB_ue_s1ap_id);
|
||||
MSC_LOG_TX_MESSAGE(MSC_RRC_ENB,
|
||||
MSC_S1AP_ENB,
|
||||
NULL,
|
||||
0,
|
||||
"0 S1AP_UE_CONTEXT_RELEASE_COMPLETE eNB_ue_s1ap_id 0x%06"PRIX32" ",
|
||||
eNB_ue_s1ap_id);
|
||||
msg_complete_p = itti_alloc_new_message(TASK_RRC_ENB, 0, S1AP_UE_CONTEXT_RELEASE_COMPLETE);
|
||||
S1AP_UE_CONTEXT_RELEASE_COMPLETE(msg_complete_p).eNB_ue_s1ap_id = eNB_ue_s1ap_id;
|
||||
itti_send_msg_to_task(TASK_S1AP, instance, msg_complete_p);
|
||||
@@ -1432,16 +1368,6 @@ int rrc_eNB_send_S1AP_E_RAB_SETUP_RESP(const protocol_ctxt_t *const ctxt_pP,
|
||||
if ((e_rabs_done > 0) ) {
|
||||
LOG_I(RRC,"S1AP_E_RAB_SETUP_RESP: sending the message: nb_of_erabs %d, total e_rabs %d, index %d\n",
|
||||
ue_context_pP->ue_context.nb_of_e_rabs, ue_context_pP->ue_context.setup_e_rabs, e_rab);
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_S1AP_ENB,
|
||||
(const char *)&S1AP_E_RAB_SETUP_RESP (msg_p),
|
||||
sizeof(s1ap_e_rab_setup_resp_t),
|
||||
MSC_AS_TIME_FMT" E_RAB_SETUP_RESP UE %X eNB_ue_s1ap_id %u e_rabs:%u succ %u fail",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_id_rnti,
|
||||
S1AP_E_RAB_SETUP_RESP (msg_p).eNB_ue_s1ap_id,
|
||||
e_rabs_done, e_rabs_failed);
|
||||
itti_send_msg_to_task (TASK_S1AP, ctxt_pP->instance, msg_p);
|
||||
}
|
||||
|
||||
@@ -1667,16 +1593,6 @@ int rrc_eNB_send_S1AP_E_RAB_MODIFY_RESP(const protocol_ctxt_t *const ctxt_pP,
|
||||
if (e_rabs_done > 0 || e_rabs_failed > 0) {
|
||||
LOG_D(RRC,"S1AP_E_RAB_MODIFY_RESP: sending the message: nb_of_modify_e_rabs %d, total e_rabs %d, index %d\n",
|
||||
ue_context_pP->ue_context.nb_of_modify_e_rabs, ue_context_pP->ue_context.setup_e_rabs, e_rab);
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_S1AP_ENB,
|
||||
(const char *)&S1AP_E_RAB_SETUP_RESP (msg_p),
|
||||
sizeof(s1ap_e_rab_setup_resp_t),
|
||||
MSC_AS_TIME_FMT" E_RAB_MODIFY_RESP UE %X eNB_ue_s1ap_id %u e_rabs:%u succ %u fail",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_id_rnti,
|
||||
S1AP_E_RAB_MODIFY_RESP (msg_p).eNB_ue_s1ap_id,
|
||||
e_rabs_done, e_rabs_failed);
|
||||
itti_send_msg_to_task (TASK_S1AP, ctxt_pP->instance, msg_p);
|
||||
} else {
|
||||
itti_free (ITTI_MSG_ORIGIN_ID(msg_p), msg_p);
|
||||
@@ -2067,16 +1983,6 @@ int rrc_eNB_send_PATH_SWITCH_REQ(const protocol_ctxt_t *const ctxt_pP,
|
||||
if (e_rabs_done > 0) {
|
||||
LOG_I(RRC,"S1AP_PATH_SWITCH_REQ: sending the message: nb_of_erabstobeswitched %d, total e_rabs %d, index %d\n",
|
||||
S1AP_PATH_SWITCH_REQ (msg_p).nb_of_e_rabs, ue_context_pP->ue_context.setup_e_rabs, e_rab);
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_S1AP_ENB,
|
||||
(const char *)&S1AP_PATH_SWITCH_REQ (msg_p),
|
||||
sizeof(s1ap_path_switch_req_t),
|
||||
MSC_AS_TIME_FMT" PATH_SWITCH_REQ UE %X eNB_ue_s1ap_id %u e_rabs:%u succ",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_id_rnti,
|
||||
S1AP_PATH_SWITCH_REQ (msg_p).eNB_ue_s1ap_id,
|
||||
e_rabs_done);
|
||||
itti_send_msg_to_task (TASK_S1AP, ctxt_pP->instance, msg_p);
|
||||
} else {
|
||||
itti_free(ITTI_MSG_ORIGIN_ID(msg_p), msg_p);
|
||||
@@ -2355,16 +2261,6 @@ int rrc_eNB_send_E_RAB_Modification_Indication(const protocol_ctxt_t *const ctxt
|
||||
if (e_rab_modify_index > 0) {
|
||||
LOG_I(RRC,"S1AP_E_RAB_MODIFICATION_IND: sending the message: nb_of_erabstobemodified %d, total e_rabs %d, index %d\n",
|
||||
S1AP_E_RAB_MODIFICATION_IND (msg_p).nb_of_e_rabs_tobemodified, ue_context_pP->ue_context.setup_e_rabs, e_rab);
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_S1AP_ENB,
|
||||
(const char *)&S1AP_E_RAB_MODIFICATION_IND (msg_p),
|
||||
sizeof(s1ap_e_rab_modification_ind_t),
|
||||
MSC_AS_TIME_FMT" E RAB MODIFICATION IND UE %X eNB_ue_s1ap_id %u e_rabs:%u succ",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_id_rnti,
|
||||
S1AP_E_RAB_MODIFICATION_IND (msg_p).eNB_ue_s1ap_id,
|
||||
e_rab_modify_index);
|
||||
itti_send_msg_to_task (TASK_S1AP, ctxt_pP->instance, msg_p);
|
||||
} else {
|
||||
itti_free(ITTI_MSG_ORIGIN_ID(msg_p), msg_p);
|
||||
|
||||
@@ -35,7 +35,6 @@
|
||||
|
||||
#include "common/utils/LOG/log.h"
|
||||
#include "rrc_eNB_UE_context.h"
|
||||
#include "msc.h"
|
||||
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
@@ -210,10 +209,6 @@ void rrc_eNB_remove_ue_context(
|
||||
}
|
||||
|
||||
RB_REMOVE(rrc_ue_tree_s, &rrc_instance_pP->rrc_ue_head, ue_context_pP);
|
||||
MSC_LOG_EVENT(
|
||||
MSC_RRC_ENB,
|
||||
"0 Removed UE %"PRIx16" ",
|
||||
ue_context_pP->ue_context.rnti);
|
||||
rrc_eNB_free_mem_UE_context(ctxt_pP, ue_context_pP);
|
||||
uid_linear_allocator_free(rrc_instance_pP, ue_context_pP->local_uid);
|
||||
free(ue_context_pP);
|
||||
|
||||
@@ -34,7 +34,6 @@
|
||||
#include "nr_rrc_extern.h"
|
||||
#include "common/utils/LOG/log.h"
|
||||
#include "pdcp.h"
|
||||
#include "msc.h"
|
||||
#include "common/ran_context.h"
|
||||
#include "LAYER2/NR_MAC_COMMON/nr_mac_common.h"
|
||||
#include "LAYER2/NR_MAC_COMMON/nr_mac_extern.h"
|
||||
@@ -172,16 +171,6 @@ nr_rrc_data_req(
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
ctxt_pP->enb_flag ? MSC_RRC_GNB : MSC_RRC_UE,
|
||||
ctxt_pP->enb_flag ? MSC_PDCP_ENB : MSC_PDCP_UE,
|
||||
buffer_pP,
|
||||
sdu_sizeP,
|
||||
MSC_AS_TIME_FMT"RRC_DCCH_DATA_REQ UE %x MUI %d size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ctxt_pP->rnti,
|
||||
muiP,
|
||||
sdu_sizeP);
|
||||
MessageDef *message_p;
|
||||
// Uses a new buffer to avoid issue with PDCP buffer content that could be changed by PDCP (asynchronous message handling).
|
||||
uint8_t *message_buffer;
|
||||
|
||||
@@ -66,7 +66,6 @@
|
||||
#include "rlc.h"
|
||||
#include "rrc_eNB_UE_context.h"
|
||||
#include "platform_types.h"
|
||||
#include "msc.h"
|
||||
#include "common/utils/LOG/vcd_signal_dumper.h"
|
||||
|
||||
#include "T.h"
|
||||
@@ -421,15 +420,6 @@ rrc_gNB_generate_RRCSetup(
|
||||
LOG_D(NR_RRC,
|
||||
PROTOCOL_NR_RRC_CTXT_UE_FMT" RRC_gNB --- MAC_CONFIG_REQ (SRB1) ---> MAC_gNB\n",
|
||||
PROTOCOL_NR_RRC_CTXT_UE_ARGS(ctxt_pP));
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_GNB,
|
||||
MSC_RRC_UE,
|
||||
ue_p->Srb0.Tx_buffer.Header, // LG WARNING
|
||||
ue_p->Srb0.Tx_buffer.payload_size,
|
||||
MSC_AS_TIME_FMT" RRCSetup UE %x size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_context.rnti,
|
||||
ue_p->Srb0.Tx_buffer.payload_size);
|
||||
LOG_I(NR_RRC,
|
||||
PROTOCOL_NR_RRC_CTXT_UE_FMT" [RAPROC] Logical Channel DL-CCCH, Generating RRCSetup (bytes %d)\n",
|
||||
PROTOCOL_NR_RRC_CTXT_UE_ARGS(ctxt_pP),
|
||||
@@ -499,15 +489,6 @@ rrc_gNB_generate_RRCSetup_for_RRCReestablishmentRequest(
|
||||
(NR_CellGroupConfig_t *)NULL
|
||||
);
|
||||
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_GNB,
|
||||
MSC_RRC_UE,
|
||||
ue_p->Srb0.Tx_buffer.Header, // LG WARNING
|
||||
ue_p->Srb0.Tx_buffer.payload_size,
|
||||
MSC_AS_TIME_FMT" RRCSetup UE %x size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_context.rnti,
|
||||
ue_p->Srb0.Tx_buffer.payload_size);
|
||||
LOG_I(NR_RRC,
|
||||
PROTOCOL_NR_RRC_CTXT_UE_FMT" [RAPROC] Logical Channel DL-CCCH, Generating RRCSetup (bytes %d)\n",
|
||||
PROTOCOL_NR_RRC_CTXT_UE_ARGS(ctxt_pP),
|
||||
@@ -549,14 +530,6 @@ rrc_gNB_generate_RRCReject(
|
||||
(char *)(ue_p->Srb0.Tx_buffer.Payload),
|
||||
ue_p->Srb0.Tx_buffer.payload_size,
|
||||
"[MSG] RRCReject \n");
|
||||
MSC_LOG_TX_MESSAGE(MSC_RRC_GNB,
|
||||
MSC_RRC_UE,
|
||||
ue_p->Srb0.Tx_buffer.Header,
|
||||
ue_p->Srb0.Tx_buffer.payload_size,
|
||||
MSC_AS_TIME_FMT" NR_RRCReject UE %x size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP == NULL ? -1 : ue_context_pP->ue_context.rnti,
|
||||
ue_p->Srb0.Tx_buffer.payload_size);
|
||||
LOG_I(NR_RRC,
|
||||
PROTOCOL_NR_RRC_CTXT_UE_FMT" [RAPROC] Logical Channel DL-CCCH, Generating NR_RRCReject (bytes %d)\n",
|
||||
PROTOCOL_NR_RRC_CTXT_UE_ARGS(ctxt_pP),
|
||||
@@ -817,15 +790,6 @@ rrc_gNB_generate_defaultRRCReconfiguration(
|
||||
rrc_gNB_mui,
|
||||
ctxt_pP->module_id,
|
||||
DCCH);
|
||||
MSC_LOG_TX_MESSAGE(MSC_RRC_GNB,
|
||||
MSC_RRC_UE,
|
||||
buffer,
|
||||
size,
|
||||
MSC_AS_TIME_FMT" NR_RRCReconfiguration UE %x MUI %d size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_context.rnti,
|
||||
rrc_gNB_mui,
|
||||
size);
|
||||
nr_rrc_data_req(ctxt_pP,
|
||||
DCCH,
|
||||
rrc_gNB_mui++,
|
||||
@@ -1047,16 +1011,6 @@ rrc_gNB_generate_dedicatedRRCReconfiguration(
|
||||
LOG_D(NR_RRC,
|
||||
"[FRAME %05d][RRC_gNB][MOD %u][][--- PDCP_DATA_REQ/%d Bytes (rrcReconfiguration to UE %x MUI %d) --->][PDCP][MOD %u][RB %u]\n",
|
||||
ctxt_pP->frame, ctxt_pP->module_id, size, ue_context_pP->ue_context.rnti, rrc_gNB_mui, ctxt_pP->module_id, DCCH);
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_GNB,
|
||||
MSC_RRC_UE,
|
||||
buffer,
|
||||
size,
|
||||
MSC_AS_TIME_FMT" dedicated RRCReconfiguration UE %x MUI %d size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_context.rnti,
|
||||
rrc_gNB_mui,
|
||||
size);
|
||||
|
||||
#ifdef ITTI_SIM
|
||||
MessageDef *message_p;
|
||||
@@ -1155,16 +1109,6 @@ rrc_gNB_generate_dedicatedRRCReconfiguration_release(
|
||||
LOG_D(NR_RRC,
|
||||
"[FRAME %05d][RRC_gNB][MOD %u][][--- PDCP_DATA_REQ/%d Bytes (rrcReconfiguration to UE %x MUI %d) --->][PDCP][MOD %u][RB %u]\n",
|
||||
ctxt_pP->frame, ctxt_pP->module_id, size, ue_context_pP->ue_context.rnti, rrc_gNB_mui, ctxt_pP->module_id, DCCH);
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_GNB,
|
||||
MSC_RRC_UE,
|
||||
buffer,
|
||||
size,
|
||||
MSC_AS_TIME_FMT" dedicated NR_RRCReconfiguration UE %x MUI %d size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_context.rnti,
|
||||
rrc_gNB_mui,
|
||||
size);
|
||||
#ifdef ITTI_SIM
|
||||
MessageDef *message_p;
|
||||
uint8_t *message_buffer;
|
||||
@@ -1229,9 +1173,6 @@ rrc_gNB_process_RRCReconfigurationComplete(
|
||||
ue_context_pP->ue_context.kgnb,
|
||||
&kRRCint);
|
||||
/* Refresh SRBs/DRBs */
|
||||
MSC_LOG_TX_MESSAGE(MSC_RRC_GNB, MSC_PDCP_ENB, NULL, 0, MSC_AS_TIME_FMT" CONFIG_REQ UE %x DRB (security unchanged)",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_context.rnti);
|
||||
|
||||
#ifndef ITTI_SIM
|
||||
LOG_D(NR_RRC,"Configuring PDCP DRBs/SRBs for UE %x\n",ue_context_pP->ue_context.rnti);
|
||||
@@ -1459,14 +1400,6 @@ rrc_gNB_generate_RRCReestablishment(
|
||||
}
|
||||
} // if (*SRB_configList != NULL)
|
||||
|
||||
MSC_LOG_TX_MESSAGE(MSC_RRC_GNB,
|
||||
MSC_RRC_UE,
|
||||
ue_context->Srb0.Tx_buffer.Header,
|
||||
ue_context->Srb0.Tx_buffer.payload_size,
|
||||
MSC_AS_TIME_FMT" NR_RRCReestablishment UE %x size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context->rnti,
|
||||
ue_context->Srb0.Tx_buffer.payload_size);
|
||||
LOG_I(NR_RRC, PROTOCOL_NR_RRC_CTXT_UE_FMT" [RAPROC] Logical Channel DL-DCCH, Generating NR_RRCReestablishment (bytes %d)\n",
|
||||
PROTOCOL_NR_RRC_CTXT_UE_ARGS(ctxt_pP),
|
||||
ue_context->Srb0.Tx_buffer.payload_size);
|
||||
@@ -1729,16 +1662,6 @@ rrc_gNB_process_RRCConnectionReestablishmentComplete(
|
||||
LOG_D(NR_RRC,
|
||||
"[FRAME %05d][RRC_gNB][MOD %u][][--- PDCP_DATA_REQ/%d Bytes (rrcConnectionReconfiguration to UE %x MUI %d) --->][PDCP][MOD %u][RB %u]\n",
|
||||
ctxt_pP->frame, ctxt_pP->module_id, size, ue_context_pP->ue_context.rnti, rrc_gNB_mui, ctxt_pP->module_id, DCCH);
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_GNB,
|
||||
MSC_RRC_UE,
|
||||
buffer,
|
||||
size,
|
||||
MSC_AS_TIME_FMT" LTE_RRCConnectionReconfiguration UE %x MUI %d size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_context.rnti,
|
||||
rrc_gNB_mui,
|
||||
size);
|
||||
#ifdef ITTI_SIM
|
||||
MessageDef *message_p;
|
||||
uint8_t *message_buffer;
|
||||
@@ -1809,15 +1732,6 @@ int nr_rrc_gNB_decode_ccch(protocol_ctxt_t *const ctxt_pP,
|
||||
ue_context_p = rrc_gNB_get_ue_context(gnb_rrc_inst, ctxt_pP->rnti);
|
||||
if (ue_context_p != NULL) {
|
||||
rrc_gNB_free_mem_UE_context(ctxt_pP, ue_context_p);
|
||||
MSC_LOG_RX_DISCARDED_MESSAGE(
|
||||
MSC_RRC_GNB,
|
||||
MSC_RRC_UE,
|
||||
buffer,
|
||||
dec_rval.consumed,
|
||||
MSC_AS_TIME_FMT" NR_RRCSetupRequest UE %x size %u (UE already in context)",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_p->ue_context.rnti,
|
||||
dec_rval.consumed);
|
||||
} else {
|
||||
rrcSetupRequest = &ul_ccch_msg->message.choice.c1->choice.rrcSetupRequest->rrcSetupRequest;
|
||||
if (NR_InitialUE_Identity_PR_randomValue == rrcSetupRequest->ue_Identity.present) {
|
||||
@@ -2109,13 +2023,6 @@ int nr_rrc_gNB_decode_ccch(protocol_ctxt_t *const ctxt_pP,
|
||||
LOG_I(NR_RRC, PROTOCOL_NR_RRC_CTXT_UE_FMT"CALLING RLC CONFIG SRB1 (rbid %d)\n",
|
||||
PROTOCOL_NR_RRC_CTXT_UE_ARGS(ctxt_pP),
|
||||
Idx);
|
||||
MSC_LOG_TX_MESSAGE(MSC_RRC_GNB,
|
||||
MSC_PDCP_GNB,
|
||||
NULL,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" CONFIG_REQ UE %x SRB",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_p->ue_context.rnti);
|
||||
// nr_rrc_pdcp_config_asn1_req(ctxt_pP,
|
||||
// ue_context_p->ue_context.SRB_configList,
|
||||
// NULL,
|
||||
@@ -2259,15 +2166,6 @@ rrc_gNB_decode_dcch(
|
||||
|
||||
LOG_DUMPMSG(NR_RRC, DEBUG_RRC, (char *)(Rx_sdu), sdu_sizeP,
|
||||
"[MSG] RRC Connection Reconfiguration Complete\n");
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
MSC_RRC_GNB,
|
||||
MSC_RRC_UE,
|
||||
Rx_sdu,
|
||||
sdu_sizeP,
|
||||
MSC_AS_TIME_FMT" NR_RRCReconfigurationComplete UE %x size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_p->ue_context.rnti,
|
||||
sdu_sizeP);
|
||||
LOG_D(NR_RRC,
|
||||
PROTOCOL_NR_RRC_CTXT_UE_FMT" RLC RB %02d --- RLC_DATA_IND %d bytes "
|
||||
"(RRCReconfigurationComplete) ---> RRC_gNB]\n",
|
||||
@@ -2329,15 +2227,6 @@ rrc_gNB_decode_dcch(
|
||||
|
||||
LOG_DUMPMSG(NR_RRC, DEBUG_RRC,(char *)Rx_sdu,sdu_sizeP,
|
||||
"[MSG] RRC SetupComplete\n");
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
MSC_RRC_GNB,
|
||||
MSC_RRC_UE,
|
||||
Rx_sdu,
|
||||
sdu_sizeP,
|
||||
MSC_AS_TIME_FMT" NR_RRCSetupComplete UE %x size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_p->ue_context.rnti,
|
||||
sdu_sizeP);
|
||||
LOG_D(NR_RRC,
|
||||
PROTOCOL_NR_RRC_CTXT_UE_FMT" RLC RB %02d --- RLC_DATA_IND %d bytes "
|
||||
"(RRCSetupComplete) ---> RRC_gNB\n",
|
||||
@@ -2416,15 +2305,6 @@ rrc_gNB_decode_dcch(
|
||||
LOG_D(NR_RRC,"[MSG] RRC UL Information Transfer \n");
|
||||
LOG_DUMPMSG(RRC,DEBUG_RRC,(char *)Rx_sdu,sdu_sizeP,
|
||||
"[MSG] RRC UL Information Transfer \n");
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
MSC_RRC_GNB,
|
||||
MSC_RRC_UE,
|
||||
Rx_sdu,
|
||||
sdu_sizeP,
|
||||
MSC_AS_TIME_FMT" ulInformationTransfer UE %x size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_p->ue_context.rnti,
|
||||
sdu_sizeP);
|
||||
|
||||
if (AMF_MODE_ENABLED == 1) {
|
||||
rrc_gNB_send_NGAP_UPLINK_NAS(ctxt_pP,
|
||||
@@ -2464,15 +2344,6 @@ rrc_gNB_decode_dcch(
|
||||
case NR_UL_DCCH_MessageType__c1_PR_securityModeFailure:
|
||||
LOG_DUMPMSG(NR_RRC,DEBUG_RRC,(char *)Rx_sdu,sdu_sizeP,
|
||||
"[MSG] NR RRC Security Mode Failure\n");
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
MSC_RRC_GNB,
|
||||
MSC_RRC_UE,
|
||||
Rx_sdu,
|
||||
sdu_sizeP,
|
||||
MSC_AS_TIME_FMT" securityModeFailure UE %x size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_p->ue_context.rnti,
|
||||
sdu_sizeP);
|
||||
LOG_W(NR_RRC,
|
||||
PROTOCOL_RRC_CTXT_UE_FMT" RLC RB %02d --- RLC_DATA_IND %d bytes "
|
||||
"(securityModeFailure) ---> RRC_gNB\n",
|
||||
@@ -2495,15 +2366,6 @@ rrc_gNB_decode_dcch(
|
||||
|
||||
LOG_DUMPMSG(NR_RRC,DEBUG_RRC,(char *)Rx_sdu,sdu_sizeP,
|
||||
"[MSG] NR_RRC UECapablility Information\n");
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
MSC_RRC_GNB,
|
||||
MSC_RRC_UE,
|
||||
Rx_sdu,
|
||||
sdu_sizeP,
|
||||
MSC_AS_TIME_FMT" ueCapabilityInformation UE %x size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_p->ue_context.rnti,
|
||||
sdu_sizeP);
|
||||
LOG_I(NR_RRC,
|
||||
PROTOCOL_NR_RRC_CTXT_UE_FMT" received ueCapabilityInformation on UL-DCCH %d from UE\n",
|
||||
PROTOCOL_NR_RRC_CTXT_UE_ARGS(ctxt_pP),
|
||||
@@ -2609,15 +2471,6 @@ rrc_gNB_decode_dcch(
|
||||
case NR_UL_DCCH_MessageType__c1_PR_rrcReestablishmentComplete:
|
||||
LOG_DUMPMSG(NR_RRC,DEBUG_RRC,(char *)Rx_sdu,sdu_sizeP,
|
||||
"[MSG] NR_RRC Connection Reestablishment Complete\n");
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
MSC_RRC_GNB,
|
||||
MSC_RRC_UE,
|
||||
Rx_sdu,
|
||||
sdu_sizeP,
|
||||
MSC_AS_TIME_FMT" NR_RRCConnectionReestablishmentComplete UE %x size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_p->ue_context.rnti,
|
||||
sdu_sizeP);
|
||||
LOG_I(NR_RRC,
|
||||
PROTOCOL_RRC_CTXT_UE_FMT" RLC RB %02d --- RLC_DATA_IND %d bytes "
|
||||
"(rrcConnectionReestablishmentComplete) ---> RRC_gNB\n",
|
||||
@@ -3766,16 +3619,6 @@ rrc_gNB_generate_SecurityModeCommand(
|
||||
size,
|
||||
rrc_gNB_mui,
|
||||
DCCH);
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_GNB,
|
||||
MSC_RRC_UE,
|
||||
buffer,
|
||||
size,
|
||||
MSC_AS_TIME_FMT" securityModeCommand UE %x MUI %d size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_context.rnti,
|
||||
rrc_gNB_mui,
|
||||
size);
|
||||
#ifdef ITTI_SIM
|
||||
MessageDef *message_p;
|
||||
uint8_t *message_buffer;
|
||||
@@ -3848,16 +3691,6 @@ rrc_gNB_generate_UECapabilityEnquiry(
|
||||
size,
|
||||
rrc_gNB_mui,
|
||||
DCCH);
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_GNB,
|
||||
MSC_RRC_UE,
|
||||
buffer,
|
||||
size,
|
||||
MSC_AS_TIME_FMT" rrcNRUECapabilityEnquiry UE %x MUI %d size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_context.rnti,
|
||||
rrc_gNB_mui,
|
||||
size);
|
||||
#ifdef ITTI_SIM
|
||||
MessageDef *message_p;
|
||||
uint8_t *message_buffer;
|
||||
@@ -3917,16 +3750,6 @@ rrc_gNB_generate_RRCRelease(
|
||||
size,
|
||||
rrc_gNB_mui,
|
||||
DCCH);
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_GNB,
|
||||
MSC_RRC_UE,
|
||||
buffer,
|
||||
size,
|
||||
MSC_AS_TIME_FMT" NR_RRCRelease UE %x MUI %d size %u",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_context.rnti,
|
||||
rrc_gNB_mui,
|
||||
size);
|
||||
|
||||
#ifdef ITTI_SIM
|
||||
MessageDef *message_p;
|
||||
|
||||
@@ -32,7 +32,6 @@
|
||||
# include "RRC/LTE/MESSAGES/asn1_msg.h"
|
||||
# include "rrc_eNB_GTPV1U.h"
|
||||
# include "rrc_eNB_UE_context.h"
|
||||
# include "msc.h"
|
||||
# include "openair2/RRC/NR/rrc_gNB_UE_context.h"
|
||||
|
||||
//# if defined(ENABLE_ITTI)
|
||||
@@ -77,15 +76,6 @@ rrc_gNB_process_GTPV1U_CREATE_TUNNEL_RESP(
|
||||
create_tunnel_resp_pP->enb_addr.length);
|
||||
}
|
||||
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_GTPU_ENB,
|
||||
NULL,0,
|
||||
MSC_AS_TIME_FMT" CREATE_TUNNEL_RESP RNTI %"PRIx16" ntuns %u ebid %u enb-s1u teid %u",
|
||||
0,0,rnti,
|
||||
create_tunnel_resp_pP->num_tunnels,
|
||||
ue_context_p->ue_context.gnb_gtp_ebi[0],
|
||||
ue_context_p->ue_context.gnb_gtp_teid[0]);
|
||||
(void)rnti; /* avoid gcc warning "set but not used" */
|
||||
return 0;
|
||||
} else {
|
||||
@@ -126,15 +116,6 @@ nr_rrc_gNB_process_GTPV1U_CREATE_TUNNEL_RESP(
|
||||
create_tunnel_resp_pP->gnb_addr.length);
|
||||
}
|
||||
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
MSC_RRC_GNB,
|
||||
MSC_GTPU_GNB,
|
||||
NULL,0,
|
||||
MSC_AS_TIME_FMT" CREATE_TUNNEL_RESP RNTI %"PRIx16" ntuns %u psid %u enb-s1u teid %u",
|
||||
0,0,rnti,
|
||||
create_tunnel_resp_pP->num_tunnels,
|
||||
ue_context_p->ue_context.gnb_gtp_psi[0],
|
||||
ue_context_p->ue_context.gnb_gtp_teid[0]);
|
||||
(void)rnti; /* avoid gcc warning "set but not used" */
|
||||
return 0;
|
||||
} else {
|
||||
|
||||
@@ -40,8 +40,6 @@
|
||||
#include "pdcp.h"
|
||||
#include "pdcp_primitives.h"
|
||||
|
||||
#include "msc.h"
|
||||
|
||||
#include "gtpv1u_eNB_task.h"
|
||||
#include "gtpv1u_gNB_task.h"
|
||||
#include "RRC/LTE/rrc_eNB_GTPV1U.h"
|
||||
@@ -453,14 +451,6 @@ rrc_gNB_send_NGAP_NAS_FIRST_REQ(
|
||||
ue_context_pP->ue_context.ue_guami.amf_set_id = NGAP_NAS_FIRST_REQ(message_p).ue_identity.guami.amf_set_id;
|
||||
ue_context_pP->ue_context.ue_guami.amf_pointer = NGAP_NAS_FIRST_REQ(message_p).ue_identity.guami.amf_pointer;
|
||||
|
||||
MSC_LOG_TX_MESSAGE(MSC_NGAP_GNB,
|
||||
MSC_NGAP_AMF,
|
||||
(const char *)&message_p->ittiMsg.ngap_nas_first_req,
|
||||
sizeof(ngap_nas_first_req_t),
|
||||
MSC_AS_TIME_FMT" NGAP_NAS_FIRST_REQ gNB %u UE %x",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ctxt_pP->module_id,
|
||||
ctxt_pP->rnti);
|
||||
LOG_I(NGAP, "[gNB %d] Build NGAP_NAS_FIRST_REQ adding in s_TMSI: GUAMI amf_set_id %u amf_region_id %u ue %x\n",
|
||||
ctxt_pP->module_id,
|
||||
NGAP_NAS_FIRST_REQ (message_p).ue_identity.guami.amf_set_id,
|
||||
@@ -636,16 +626,6 @@ rrc_gNB_send_NGAP_INITIAL_CONTEXT_SETUP_RESP(
|
||||
}
|
||||
}
|
||||
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_GNB,
|
||||
MSC_S1AP_ENB,
|
||||
(const char *)&NGAP_INITIAL_CONTEXT_SETUP_RESP (msg_p),
|
||||
sizeof(ngap_initial_context_setup_resp_t),
|
||||
MSC_AS_TIME_FMT" INITIAL_CONTEXT_SETUP_RESP UE %X eNB_ue_s1ap_id %u e_rabs:%u succ %u fail",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_id_rnti,
|
||||
NGAP_INITIAL_CONTEXT_SETUP_RESP (msg_p).gNB_ue_ngap_id,
|
||||
pdu_sessions_done, pdu_sessions_failed);
|
||||
NGAP_INITIAL_CONTEXT_SETUP_RESP (msg_p).nb_of_pdusessions = pdu_sessions_done;
|
||||
NGAP_INITIAL_CONTEXT_SETUP_RESP (msg_p).nb_of_pdusessions_failed = pdu_sessions_failed;
|
||||
itti_send_msg_to_task (TASK_NGAP, ctxt_pP->instance, msg_p);
|
||||
@@ -794,15 +774,6 @@ rrc_gNB_process_NGAP_DOWNLINK_NAS(
|
||||
gNB_ue_ngap_id);
|
||||
|
||||
if (ue_context_p == NULL) {
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
MSC_RRC_GNB,
|
||||
MSC_NGAP_GNB,
|
||||
NULL,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" DOWNLINK-NAS UE initial id %u gNB_ue_ngap_id %u",
|
||||
0,0,//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_initial_id,
|
||||
gNB_ue_ngap_id);
|
||||
/* Can not associate this message to an UE index, send a failure to NGAP and discard it! */
|
||||
MessageDef *msg_fail_p;
|
||||
LOG_W(NR_RRC, "[gNB %ld] In NGAP_DOWNLINK_NAS: unknown UE from NGAP ids (%d, %u)\n", instance, ue_initial_id, gNB_ue_ngap_id);
|
||||
@@ -811,15 +782,6 @@ rrc_gNB_process_NGAP_DOWNLINK_NAS(
|
||||
NGAP_NAS_NON_DELIVERY_IND (msg_fail_p).nas_pdu.length = NGAP_DOWNLINK_NAS (msg_p).nas_pdu.length;
|
||||
NGAP_NAS_NON_DELIVERY_IND (msg_fail_p).nas_pdu.buffer = NGAP_DOWNLINK_NAS (msg_p).nas_pdu.buffer;
|
||||
// TODO add failure cause when defined!
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_ENB,
|
||||
MSC_NGAP_GNB,
|
||||
(const char *)NULL,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" NGAP_NAS_NON_DELIVERY_IND UE initial id %u gNB_ue_ngap_id %u (ue ctxt !found)",
|
||||
0,0,//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_initial_id,
|
||||
gNB_ue_ngap_id);
|
||||
itti_send_msg_to_task (TASK_NGAP, instance, msg_fail_p);
|
||||
return (-1);
|
||||
} else {
|
||||
@@ -830,15 +792,6 @@ rrc_gNB_process_NGAP_DOWNLINK_NAS(
|
||||
ue_context_p->ue_context.gNB_ue_ngap_id = NGAP_DOWNLINK_NAS (msg_p).gNB_ue_ngap_id;
|
||||
}
|
||||
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
MSC_RRC_GNB,
|
||||
MSC_NGAP_GNB,
|
||||
(const char *)NULL,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" DOWNLINK-NAS UE initial id %u gNB_ue_ngap_id %u",
|
||||
0,0,//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_initial_id,
|
||||
NGAP_DOWNLINK_NAS (msg_p).gNB_ue_ngap_id);
|
||||
/* Create message for PDCP (DLInformationTransfer_t) */
|
||||
length = do_NR_DLInformationTransfer (
|
||||
instance,
|
||||
@@ -997,16 +950,6 @@ rrc_gNB_send_NGAP_PDUSESSION_SETUP_RESP(
|
||||
if ((pdu_sessions_done > 0) ) {
|
||||
LOG_I(NR_RRC,"NGAP_PDUSESSION_SETUP_RESP: sending the message: nb_of_pdusessions %d, total pdu_sessions %d, index %d\n",
|
||||
ue_context_pP->ue_context.nb_of_pdusessions, ue_context_pP->ue_context.setup_pdu_sessions, pdusession);
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_GNB,
|
||||
MSC_NGAP_GNB,
|
||||
(const char *)&NGAP_PDUSESSION_SETUP_RESP (msg_p),
|
||||
sizeof(ngap_pdusession_setup_resp_t),
|
||||
MSC_AS_TIME_FMT" PDUSESSION_SETUP_RESP UE %X gNB_ue_ngap_id %u pdu_sessions:%u succ %u fail",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ue_context_pP->ue_id_rnti,
|
||||
NGAP_PDUSESSION_SETUP_RESP (msg_p).gNB_ue_ngap_id,
|
||||
pdu_sessions_done, pdu_sessions_failed);
|
||||
itti_send_msg_to_task (TASK_NGAP, ctxt_pP->instance, msg_p);
|
||||
}
|
||||
|
||||
@@ -1126,12 +1069,6 @@ rrc_gNB_send_NGAP_UE_CONTEXT_RELEASE_REQ(
|
||||
if (ue_context_pP == NULL) {
|
||||
LOG_E(RRC, "[gNB] In NGAP_UE_CONTEXT_RELEASE_REQ: invalid UE\n");
|
||||
} else {
|
||||
MSC_LOG_TX_MESSAGE(MSC_RRC_GNB,
|
||||
MSC_NGAP_GNB,
|
||||
NULL,
|
||||
0,
|
||||
"0 NGAP_UE_CONTEXT_RELEASE_REQ gNB_ue_ngap_id 0x%06"PRIX32" ",
|
||||
ue_context_pP->ue_context.gNB_ue_ngap_id);
|
||||
MessageDef *msg_context_release_req_p = NULL;
|
||||
msg_context_release_req_p = itti_alloc_new_message(TASK_RRC_GNB, 0, NGAP_UE_CONTEXT_RELEASE_REQ);
|
||||
NGAP_UE_CONTEXT_RELEASE_REQ(msg_context_release_req_p).gNB_ue_ngap_id = ue_context_pP->ue_context.gNB_ue_ngap_id;
|
||||
@@ -1204,14 +1141,6 @@ rrc_gNB_process_NGAP_UE_CONTEXT_RELEASE_COMMAND(
|
||||
LOG_W(NR_RRC, "[gNB %ld] In NGAP_UE_CONTEXT_RELEASE_COMMAND: unknown UE from gNB_ue_ngap_id (%u)\n",
|
||||
instance,
|
||||
gNB_ue_ngap_id);
|
||||
MSC_LOG_EVENT(MSC_RRC_GNB, "0 NGAP_UE_CONTEXT_RELEASE_COMPLETE gNB_ue_ngap_id 0x%06"PRIX32" context not found",
|
||||
gNB_ue_ngap_id);
|
||||
MSC_LOG_TX_MESSAGE(MSC_RRC_GNB,
|
||||
MSC_NGAP_GNB,
|
||||
NULL,
|
||||
0,
|
||||
"0 NGAP_UE_CONTEXT_RELEASE_COMPLETE gNB_ue_ngap_id 0x%06"PRIX32" ",
|
||||
gNB_ue_ngap_id);
|
||||
msg_complete_p = itti_alloc_new_message(TASK_RRC_GNB, 0, NGAP_UE_CONTEXT_RELEASE_COMPLETE);
|
||||
NGAP_UE_CONTEXT_RELEASE_COMPLETE(msg_complete_p).gNB_ue_ngap_id = gNB_ue_ngap_id;
|
||||
itti_send_msg_to_task(TASK_NGAP, instance, msg_complete_p);
|
||||
@@ -1235,9 +1164,6 @@ rrc_gNB_process_NGAP_UE_CONTEXT_RELEASE_COMMAND(
|
||||
void rrc_gNB_send_NGAP_UE_CONTEXT_RELEASE_COMPLETE(
|
||||
instance_t instance,
|
||||
uint32_t gNB_ue_ngap_id) {
|
||||
MSC_LOG_TX_MESSAGE(MSC_RRC_GNB, MSC_NGAP_GNB, NULL, 0,
|
||||
"0 NGAP_UE_CONTEXT_RELEASE_COMPLETE gNB_ue_ngap_id 0x%06"PRIX32" ",
|
||||
gNB_ue_ngap_id);
|
||||
MessageDef *msg = itti_alloc_new_message(TASK_RRC_GNB, 0, NGAP_UE_CONTEXT_RELEASE_COMPLETE);
|
||||
NGAP_UE_CONTEXT_RELEASE_COMPLETE(msg).gNB_ue_ngap_id = gNB_ue_ngap_id;
|
||||
itti_send_msg_to_task(TASK_NGAP, instance, msg);
|
||||
|
||||
@@ -35,7 +35,6 @@
|
||||
|
||||
#include "common/utils/LOG/log.h"
|
||||
#include "rrc_gNB_UE_context.h"
|
||||
#include "msc.h"
|
||||
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
@@ -208,10 +207,6 @@ void rrc_gNB_remove_ue_context(
|
||||
}
|
||||
|
||||
RB_REMOVE(rrc_nr_ue_tree_s, &rrc_instance_pP->rrc_ue_head, ue_context_pP);
|
||||
MSC_LOG_EVENT(
|
||||
MSC_RRC_ENB,
|
||||
"0 Removed UE %"PRIx16" ",
|
||||
ue_context_pP->ue_context.rnti);
|
||||
rrc_gNB_free_mem_UE_context(ctxt_pP, ue_context_pP);
|
||||
nr_uid_linear_allocator_free(rrc_instance_pP, ue_context_pP->local_uid);
|
||||
free(ue_context_pP);
|
||||
|
||||
@@ -2164,17 +2164,6 @@ nr_rrc_ue_establish_srb2(
|
||||
nr_derive_key_up_int(NR_UE_rrc_inst[ctxt_pP->module_id].integrityProtAlgorithm,
|
||||
NR_UE_rrc_inst[ctxt_pP->module_id].kgnb, &kUPint);
|
||||
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_RRC_UE,
|
||||
MSC_PDCP_UE,
|
||||
NULL,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" CONFIG_REQ UE %x DRB (security %X)",
|
||||
MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
ctxt_pP->rnti,
|
||||
NR_UE_rrc_inst[ctxt_pP->module_id].cipheringAlgorithm |
|
||||
(NR_UE_rrc_inst[ctxt_pP->module_id].integrityProtAlgorithm << 4));
|
||||
|
||||
// Refresh DRBs
|
||||
nr_rrc_pdcp_config_asn1_req(ctxt_pP,
|
||||
NULL,
|
||||
|
||||
@@ -36,8 +36,6 @@
|
||||
#undef MALLOC //there are two conflicting definitions, so we better make sure we don't use it at all
|
||||
#include <common/utils/assertions.h>
|
||||
|
||||
#include "msc.h"
|
||||
|
||||
#include "common/ran_context.h"
|
||||
|
||||
#include "common/config/config_userapi.h"
|
||||
@@ -572,9 +570,6 @@ int main( int argc, char **argv )
|
||||
|
||||
cpuf=get_cpu_freq_GHz();
|
||||
itti_init(TASK_MAX, tasks_info);
|
||||
// initialize mscgen log after ITTI
|
||||
MSC_INIT(MSC_E_UTRAN, ADDED_QUEUES_MAX+TASK_MAX);
|
||||
|
||||
|
||||
init_opt();
|
||||
|
||||
|
||||
@@ -40,7 +40,6 @@
|
||||
|
||||
#include "x2ap_eNB_itti_messaging.h"
|
||||
|
||||
#include "msc.h"
|
||||
#include "assertions.h"
|
||||
#include "conversions.h"
|
||||
|
||||
@@ -260,8 +259,6 @@ int x2ap_eNB_generate_x2_setup_request(
|
||||
return -1;
|
||||
}
|
||||
|
||||
MSC_LOG_TX_MESSAGE (MSC_X2AP_SRC_ENB, MSC_X2AP_TARGET_ENB, NULL, 0, "0 X2Setup/initiatingMessage assoc_id %u", x2ap_eNB_data_p->assoc_id);
|
||||
|
||||
x2ap_eNB_itti_send_sctp_data_req(instance_p->instance, x2ap_eNB_data_p->assoc_id, buffer, len, 0);
|
||||
|
||||
return ret;
|
||||
@@ -486,8 +483,6 @@ int x2ap_eNB_generate_x2_setup_response(x2ap_eNB_instance_t *instance_p, x2ap_eN
|
||||
|
||||
x2ap_eNB_data_p->state = X2AP_ENB_STATE_READY;
|
||||
|
||||
MSC_LOG_TX_MESSAGE (MSC_X2AP_SRC_ENB, MSC_X2AP_TARGET_ENB, NULL, 0, "0 X2Setup/successfulOutcome assoc_id %u", x2ap_eNB_data_p->assoc_id);
|
||||
|
||||
x2ap_eNB_itti_send_sctp_data_req(instance_p->instance, x2ap_eNB_data_p->assoc_id, buffer, len, 0);
|
||||
|
||||
return ret;
|
||||
@@ -542,11 +537,6 @@ int x2ap_eNB_generate_x2_setup_failure(instance_t instance,
|
||||
return -1;
|
||||
}
|
||||
|
||||
MSC_LOG_TX_MESSAGE (MSC_X2AP_SRC_ENB,
|
||||
MSC_X2AP_TARGET_ENB, NULL, 0,
|
||||
"0 X2Setup/unsuccessfulOutcome assoc_id %u cause %u value %u",
|
||||
assoc_id, cause_type, cause_value);
|
||||
|
||||
x2ap_eNB_itti_send_sctp_data_req(instance, assoc_id, buffer, len, 0);
|
||||
|
||||
return ret;
|
||||
@@ -732,8 +722,6 @@ int x2ap_eNB_generate_x2_handover_request (x2ap_eNB_instance_t *instance_p, x2ap
|
||||
return -1;
|
||||
}
|
||||
|
||||
MSC_LOG_TX_MESSAGE (MSC_X2AP_SRC_ENB, MSC_X2AP_TARGET_ENB, NULL, 0, "0 X2Handover/initiatingMessage assoc_id %u", x2ap_eNB_data_p->assoc_id);
|
||||
|
||||
x2ap_eNB_itti_send_sctp_data_req(instance_p->instance, x2ap_eNB_data_p->assoc_id, buffer, len, 1);
|
||||
|
||||
return ret;
|
||||
@@ -846,8 +834,6 @@ int x2ap_eNB_generate_x2_handover_request_ack (x2ap_eNB_instance_t *instance_p,
|
||||
return -1;
|
||||
}
|
||||
|
||||
MSC_LOG_TX_MESSAGE (MSC_X2AP_SRC_ENB, MSC_X2AP_TARGET_ENB, NULL, 0, "0 X2Handover/successfulOutcome assoc_id %u", x2ap_eNB_data_p->assoc_id);
|
||||
|
||||
x2ap_eNB_itti_send_sctp_data_req(instance_p->instance, x2ap_eNB_data_p->assoc_id, buffer, len, 1);
|
||||
|
||||
return ret;
|
||||
@@ -908,8 +894,6 @@ int x2ap_eNB_generate_x2_ue_context_release (x2ap_eNB_instance_t *instance_p, x2
|
||||
return -1;
|
||||
}
|
||||
|
||||
MSC_LOG_TX_MESSAGE (MSC_X2AP_SRC_ENB, MSC_X2AP_TARGET_ENB, NULL, 0, "0 X2UEContextRelease/initiatingMessage assoc_id %u", x2ap_eNB_data_p->assoc_id);
|
||||
|
||||
x2ap_eNB_itti_send_sctp_data_req(instance_p->instance, x2ap_eNB_data_p->assoc_id, buffer, len, 1);
|
||||
|
||||
return ret;
|
||||
@@ -992,8 +976,6 @@ int x2ap_eNB_generate_x2_handover_cancel (x2ap_eNB_instance_t *instance_p, x2ap_
|
||||
return -1;
|
||||
}
|
||||
|
||||
MSC_LOG_TX_MESSAGE (MSC_X2AP_SRC_ENB, MSC_X2AP_TARGET_ENB, NULL, 0, "0 X2HandoverCancel/initiatingMessage assoc_id %u", x2ap_eNB_data_p->assoc_id);
|
||||
|
||||
x2ap_eNB_itti_send_sctp_data_req(instance_p->instance, x2ap_eNB_data_p->assoc_id, buffer, len, 1);
|
||||
|
||||
return ret;
|
||||
@@ -1090,8 +1072,6 @@ int x2ap_eNB_generate_senb_addition_request (x2ap_eNB_instance_t *instance_p, x2
|
||||
return -1;
|
||||
}
|
||||
|
||||
MSC_LOG_TX_MESSAGE (MSC_X2AP_SRC_ENB, MSC_X2AP_TARGET_ENB, NULL, 0, "0 X2SeNBAdditionRequest/initiatingMessage assoc_id %u", x2ap_eNB_data_p->assoc_id);
|
||||
|
||||
x2ap_eNB_itti_send_sctp_data_req(instance_p->instance, x2ap_eNB_data_p->assoc_id, buffer, len, 1);
|
||||
|
||||
return ret;
|
||||
@@ -1367,8 +1347,6 @@ MCC_MNC_TO_PLMNID(instance_p->mcc, instance_p->mnc, instance_p->mnc_digit_length
|
||||
return -1;
|
||||
}
|
||||
|
||||
MSC_LOG_TX_MESSAGE (MSC_X2AP_SRC_ENB, MSC_X2AP_TARGET_ENB, NULL, 0, "0 X2Setup/initiatingMessage assoc_id %u", x2ap_eNB_data_p->assoc_id);
|
||||
|
||||
x2ap_eNB_itti_send_sctp_data_req(instance_p->instance, x2ap_eNB_data_p->assoc_id, buffer, len, 0);
|
||||
|
||||
return ret;
|
||||
@@ -1578,8 +1556,6 @@ int x2ap_eNB_generate_ENDC_x2_setup_response(
|
||||
return -1;
|
||||
}
|
||||
|
||||
MSC_LOG_TX_MESSAGE (MSC_X2AP_SRC_ENB, MSC_X2AP_TARGET_ENB, NULL, 0, "0 X2Setup/initiatingMessage assoc_id %u", x2ap_eNB_data_p->assoc_id);
|
||||
|
||||
x2ap_eNB_itti_send_sctp_data_req(instance_p->instance, x2ap_eNB_data_p->assoc_id, buffer, len, 0);
|
||||
|
||||
return ret;
|
||||
@@ -1737,8 +1713,6 @@ int x2ap_eNB_generate_ENDC_x2_SgNB_addition_request(
|
||||
# if 0 // TODO: Sanitizer complains we are trying to access this after free.
|
||||
free(ie->value.choice.MeNBtoSgNBContainer.buf);
|
||||
#endif
|
||||
MSC_LOG_TX_MESSAGE (MSC_X2AP_SRC_ENB, MSC_X2AP_TARGET_ENB, NULL, 0, "0 X2Setup/initiatingMessage assoc_id %u", x2ap_eNB_data_p->assoc_id);
|
||||
|
||||
x2ap_eNB_itti_send_sctp_data_req(instance_p->instance, x2ap_eNB_data_p->assoc_id, buffer, len, 0);
|
||||
|
||||
return ret;
|
||||
@@ -1844,8 +1818,6 @@ int x2ap_gNB_generate_ENDC_x2_SgNB_addition_request_ACK( x2ap_eNB_instance_t *in
|
||||
return -1;
|
||||
}
|
||||
|
||||
MSC_LOG_TX_MESSAGE (MSC_X2AP_SRC_ENB, MSC_X2AP_TARGET_ENB, NULL, 0, "0 X2Setup/initiatingMessage assoc_id %u", x2ap_eNB_data_p->assoc_id);
|
||||
|
||||
x2ap_eNB_itti_send_sctp_data_req(instance_p->instance, x2ap_eNB_data_p->assoc_id, buffer, len, 0);
|
||||
|
||||
return ret;
|
||||
|
||||
@@ -41,7 +41,6 @@
|
||||
#include "x2ap_eNB_management_procedures.h"
|
||||
#include "x2ap_eNB_generate_messages.h"
|
||||
|
||||
#include "msc.h"
|
||||
#include "assertions.h"
|
||||
#include "conversions.h"
|
||||
#include "X2AP_FreqBandNrItem.h"
|
||||
|
||||
@@ -33,7 +33,6 @@
|
||||
|
||||
#include "assertions.h"
|
||||
#include "intertask_interface.h"
|
||||
#include "msc.h"
|
||||
|
||||
#include "gtpv1u.h"
|
||||
#include "NwGtpv1u.h"
|
||||
@@ -51,7 +50,6 @@
|
||||
#include "gtpv1u_eNB_defs.h"
|
||||
#include "gtpv1u_eNB_task.h"
|
||||
#include "rrc_eNB_GTPV1U.h"
|
||||
#include <common/utils/msc/msc.h>
|
||||
|
||||
#undef GTP_DUMP_SOCKET
|
||||
|
||||
@@ -146,11 +144,6 @@ static int gtpv1u_eNB_send_init_udp(const Gtpv1uS1Req *req) {
|
||||
addr.s_addr = req->enb_ip_address_for_S1u_S12_S4_up;
|
||||
UDP_INIT(message_p).address = inet_ntoa(addr);
|
||||
LOG_I(GTPU, "Tx UDP_INIT IP addr %s (%x)\n", UDP_INIT(message_p).address,UDP_INIT(message_p).port);
|
||||
MSC_LOG_EVENT(
|
||||
MSC_GTPU_ENB,
|
||||
"0 UDP bind %s:%u",
|
||||
UDP_INIT(message_p).address,
|
||||
UDP_INIT(message_p).port);
|
||||
return itti_send_msg_to_task(TASK_UDP, INSTANCE_DEFAULT, message_p);
|
||||
}
|
||||
|
||||
@@ -266,14 +259,6 @@ NwGtpv1uRcT gtpv1u_eNB_process_stack_req(
|
||||
#endif
|
||||
//#warning "LG eps bearer mapping to DRB id to do (offset -4)"
|
||||
PROTOCOL_CTXT_SET_BY_MODULE_ID(&ctxt, gtpv1u_teid_data_p->enb_id, ENB_FLAG_YES, gtpv1u_teid_data_p->ue_id, 0, 0,gtpv1u_teid_data_p->enb_id);
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_GTPU_ENB,
|
||||
MSC_PDCP_ENB,
|
||||
NULL,0,
|
||||
MSC_AS_TIME_FMT" DATA-REQ rb %u size %u",
|
||||
0,0,
|
||||
(gtpv1u_teid_data_p->eps_bearer_id) ? gtpv1u_teid_data_p->eps_bearer_id - 4: 5-4,
|
||||
buffer_len);
|
||||
ue_context_p = rrc_eNB_get_ue_context(RC.rrc[ctxt.module_id], ctxt.rnti);
|
||||
|
||||
if((ue_context_p != NULL) &&
|
||||
@@ -736,14 +721,6 @@ gtpv1u_create_x2u_tunnel(
|
||||
hashtable_rc_t hash_rc = HASH_TABLE_KEY_NOT_EXISTS;
|
||||
int i;
|
||||
ebi_t eps_bearer_id = 0;
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
MSC_GTPU_ENB,
|
||||
MSC_RRC_ENB,
|
||||
NULL,0,
|
||||
MSC_AS_TIME_FMT" CREATE_X2U_TUNNEL_REQ RNTI %"PRIx16" inst %u ntuns %u ebid %u enb-x2u teid %u",
|
||||
0,0,create_tunnel_req_pP->rnti, instanceP,
|
||||
create_tunnel_req_pP->num_tunnels, create_tunnel_req_pP->eps_bearer_id[0],
|
||||
create_tunnel_req_pP->tenb_X2u_teid[0]);
|
||||
create_tunnel_resp_pP->rnti = create_tunnel_req_pP->rnti;
|
||||
create_tunnel_resp_pP->status = 0;
|
||||
create_tunnel_resp_pP->num_tunnels = 0;
|
||||
@@ -795,13 +772,6 @@ gtpv1u_create_x2u_tunnel(
|
||||
}
|
||||
}
|
||||
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_GTPU_ENB,
|
||||
MSC_RRC_ENB,
|
||||
NULL,0,
|
||||
"0 GTPV1U_ENB_CREATE_TUNNEL_RESP rnti %x teid %x",
|
||||
create_tunnel_resp_pP->rnti,
|
||||
x2u_teid);
|
||||
LOG_D(GTPU, "Tx GTPV1U_ENB_CREATE_TUNNEL_RESP ue rnti %x status %d\n",
|
||||
create_tunnel_req_pP->rnti,
|
||||
create_tunnel_resp_pP->status);
|
||||
@@ -885,14 +855,6 @@ gtpv1u_create_s1u_tunnel(
|
||||
int addrs_length_in_bytes= 0;
|
||||
int loop_counter = 0;
|
||||
int ret = 0;
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
MSC_GTPU_ENB,
|
||||
MSC_RRC_ENB,
|
||||
NULL,0,
|
||||
MSC_AS_TIME_FMT" CREATE_TUNNEL_REQ RNTI %"PRIx16" inst %u ntuns %u ebid %u sgw-s1u teid %u",
|
||||
0,0,create_tunnel_req_pP->rnti, instanceP,
|
||||
create_tunnel_req_pP->num_tunnels, create_tunnel_req_pP->eps_bearer_id[0],
|
||||
create_tunnel_req_pP->sgw_S1u_teid[0]);
|
||||
create_tunnel_resp_pP->rnti = create_tunnel_req_pP->rnti;
|
||||
create_tunnel_resp_pP->status = 0;
|
||||
create_tunnel_resp_pP->num_tunnels = 0;
|
||||
@@ -1005,13 +967,6 @@ gtpv1u_create_s1u_tunnel(
|
||||
}
|
||||
}
|
||||
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_GTPU_ENB,
|
||||
MSC_RRC_ENB,
|
||||
NULL,0,
|
||||
"0 GTPV1U_ENB_CREATE_TUNNEL_RESP rnti %x teid %x",
|
||||
create_tunnel_resp_pP->rnti,
|
||||
s1u_teid);
|
||||
LOG_D(GTPU, "Tx GTPV1U_ENB_CREATE_TUNNEL_RESP ue rnti %x status %d\n",
|
||||
create_tunnel_req_pP->rnti,
|
||||
create_tunnel_resp_pP->status);
|
||||
@@ -1175,13 +1130,6 @@ int gtpv1u_delete_s1u_tunnel(
|
||||
GTPV1U_ENB_DELETE_TUNNEL_RESP(message_p).rnti,
|
||||
GTPV1U_ENB_DELETE_TUNNEL_RESP(message_p).enb_S1u_teid,
|
||||
GTPV1U_ENB_DELETE_TUNNEL_RESP(message_p).status);
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_GTPU_ENB,
|
||||
MSC_RRC_ENB,
|
||||
NULL,0,
|
||||
"0 GTPV1U_ENB_DELETE_TUNNEL_RESP rnti %x teid %x",
|
||||
GTPV1U_ENB_DELETE_TUNNEL_RESP(message_p).rnti,
|
||||
teid_eNB);
|
||||
if (req_pP->from_gnb)
|
||||
return itti_send_msg_to_task(TASK_RRC_GNB, instanceP, message_p);
|
||||
else
|
||||
@@ -1351,27 +1299,12 @@ void *gtpv1u_eNB_process_itti_msg(void *notUsed) {
|
||||
|
||||
if (rc != NW_GTPV1U_OK) {
|
||||
LOG_E(GTPU, "nwGtpv1uGpduMsgNew failed: 0x%x\n", rc);
|
||||
MSC_LOG_EVENT(MSC_GTPU_ENB,"0 Failed send G-PDU ltid %u rtid %u size %u",
|
||||
enb_s1u_teid,sgw_s1u_teid,data_req_p->length);
|
||||
(void)enb_s1u_teid; /* avoid gcc warning "set but not used" */
|
||||
} else {
|
||||
rc = nwGtpv1uProcessUlpReq(RC.gtpv1u_data_g->gtpv1u_stack, &stack_req);
|
||||
|
||||
if (rc != NW_GTPV1U_OK) {
|
||||
LOG_E(GTPU, "nwGtpv1uProcessUlpReq failed: 0x%x\n", rc);
|
||||
MSC_LOG_EVENT(MSC_GTPU_ENB,"0 Failed send G-PDU ltid %u rtid %u size %u",
|
||||
enb_s1u_teid,sgw_s1u_teid,data_req_p->length);
|
||||
} else {
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_GTPU_ENB,
|
||||
MSC_GTPU_SGW,
|
||||
NULL,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" G-PDU ltid %u rtid %u size %u",
|
||||
0,0,
|
||||
enb_s1u_teid,
|
||||
sgw_s1u_teid,
|
||||
data_req_p->length);
|
||||
}
|
||||
|
||||
rc = nwGtpv1uMsgDelete(RC.gtpv1u_data_g->gtpv1u_stack,
|
||||
@@ -1428,27 +1361,12 @@ void *gtpv1u_eNB_process_itti_msg(void *notUsed) {
|
||||
|
||||
if (rc != NW_GTPV1U_OK) {
|
||||
LOG_E(GTPU, "nwGtpv1uGpduMsgNew failed: 0x%x\n", rc);
|
||||
MSC_LOG_EVENT(MSC_GTPU_ENB,"0 Failed send G-PDU ltid %u rtid %u size %u",
|
||||
enb_s1u_teid,tenb_x2u_teid,data_req_p->length);
|
||||
(void)enb_s1u_teid; /* avoid gcc warning "set but not used" */
|
||||
} else {
|
||||
rc = nwGtpv1uProcessUlpReq(RC.gtpv1u_data_g->gtpv1u_stack, &stack_req);
|
||||
|
||||
if (rc != NW_GTPV1U_OK) {
|
||||
LOG_E(GTPU, "nwGtpv1uProcessUlpReq failed: 0x%x\n", rc);
|
||||
MSC_LOG_EVENT(MSC_GTPU_ENB,"0 Failed send G-PDU ltid %u rtid %u size %u",
|
||||
enb_s1u_teid,tenb_x2u_teid,data_req_p->length);
|
||||
} else {
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_GTPU_ENB,
|
||||
MSC_GTPU_SGW,
|
||||
NULL,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" G-PDU ltid %u rtid %u size %u",
|
||||
0,0,
|
||||
enb_s1u_teid,
|
||||
tenb_x2u_teid,
|
||||
data_req_p->length);
|
||||
}
|
||||
|
||||
rc = nwGtpv1uMsgDelete(RC.gtpv1u_data_g->gtpv1u_stack,
|
||||
@@ -1506,8 +1424,6 @@ void *gtpv1u_eNB_process_itti_msg(void *notUsed) {
|
||||
|
||||
if (rc != NW_GTPV1U_OK) {
|
||||
LOG_E(GTPU, "nwGtpv1uGpduMsgNew failed: 0x%x\n", rc);
|
||||
MSC_LOG_EVENT(MSC_GTPU_ENB,"0 Failed send G-PDU ltid %u rtid %u size %u",
|
||||
enb_s1u_teid,tenb_x2u_teid,data_req_p->length);
|
||||
(void)enb_s1u_teid; /* avoid gcc warning "set but not used" */
|
||||
} else {
|
||||
pMsg = (NwGtpv1uMsgT *) stack_req.apiInfo.sendtoInfo.hMsg;
|
||||
@@ -1516,19 +1432,6 @@ void *gtpv1u_eNB_process_itti_msg(void *notUsed) {
|
||||
|
||||
if (rc != NW_GTPV1U_OK) {
|
||||
LOG_E(GTPU, "nwGtpv1uProcessUlpReq failed: 0x%x\n", rc);
|
||||
MSC_LOG_EVENT(MSC_GTPU_ENB,"0 Failed send G-PDU ltid %u rtid %u size %u",
|
||||
enb_s1u_teid,tenb_x2u_teid,data_req_p->length);
|
||||
} else {
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_GTPU_ENB,
|
||||
MSC_GTPU_SGW,
|
||||
NULL,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" G-PDU ltid %u rtid %u size %u",
|
||||
0,0,
|
||||
enb_s1u_teid,
|
||||
tenb_x2u_teid,
|
||||
data_req_p->length);
|
||||
}
|
||||
|
||||
rc = nwGtpv1uMsgDelete(RC.gtpv1u_data_g->gtpv1u_stack,
|
||||
@@ -1589,7 +1492,6 @@ void *gtpv1u_eNB_task(void *args) {
|
||||
rc = gtpv1u_eNB_init();
|
||||
AssertFatal(rc == 0, "gtpv1u_eNB_init Failed");
|
||||
itti_mark_task_ready(TASK_GTPV1_U);
|
||||
MSC_START_USE();
|
||||
|
||||
while(1) {
|
||||
(void) gtpv1u_eNB_process_itti_msg (NULL);
|
||||
|
||||
@@ -30,7 +30,6 @@
|
||||
|
||||
#include "mme_config.h"
|
||||
#include "intertask_interface.h"
|
||||
#include "msc.h"
|
||||
|
||||
#include "gtpv1u.h"
|
||||
#include "NwGtpv1u.h"
|
||||
@@ -170,14 +169,6 @@ NwGtpv1uRcT gtpv1u_gNB_process_stack_req(
|
||||
#endif
|
||||
//warning "LG eps bearer mapping to DRB id to do (offset -4)"
|
||||
PROTOCOL_CTXT_SET_BY_MODULE_ID(&ctxt, gtpv1u_teid_data_p->enb_id, ENB_FLAG_YES, gtpv1u_teid_data_p->ue_id, 0, 0,gtpv1u_teid_data_p->enb_id);
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_GTPU_ENB,
|
||||
MSC_PDCP_ENB,
|
||||
NULL,0,
|
||||
MSC_AS_TIME_FMT" DATA-REQ rb %u size %u",
|
||||
0,0,
|
||||
(gtpv1u_teid_data_p->eps_bearer_id) ? gtpv1u_teid_data_p->eps_bearer_id - 4: 5-4,
|
||||
buffer_len);
|
||||
|
||||
result = pdcp_data_req(
|
||||
&ctxt,
|
||||
@@ -300,7 +291,6 @@ void *gtpv1u_gNB_task(void *args) {
|
||||
rc = gtpv1u_gNB_init();
|
||||
AssertFatal(rc == 0, "gtpv1u_eNB_init Failed");
|
||||
itti_mark_task_ready(TASK_GTPV1_U);
|
||||
MSC_START_USE();
|
||||
|
||||
while(1) {
|
||||
(void) gtpv1u_eNB_process_itti_msg (NULL);
|
||||
@@ -366,14 +356,6 @@ NwGtpv1uRcT nr_gtpv1u_gNB_process_stack_req(
|
||||
// #endif
|
||||
//warning "LG eps bearer mapping to DRB id to do (offset -4)"
|
||||
PROTOCOL_CTXT_SET_BY_MODULE_ID(&ctxt, gtpv1u_teid_data_p->gnb_id, GNB_FLAG_YES, gtpv1u_teid_data_p->ue_id, 0, 0,gtpv1u_teid_data_p->gnb_id);
|
||||
// MSC_LOG_TX_MESSAGE(
|
||||
// MSC_GTPU_ENB,
|
||||
// MSC_PDCP_ENB,
|
||||
// NULL,0,
|
||||
// MSC_AS_TIME_FMT" DATA-REQ rb %u size %u",
|
||||
// 0,0,
|
||||
// (gtpv1u_teid_data_p->eps_bearer_id) ? gtpv1u_teid_data_p->eps_bearer_id - 4: 5-4,
|
||||
// buffer_len);
|
||||
|
||||
result = pdcp_data_req(
|
||||
&ctxt,
|
||||
@@ -515,14 +497,6 @@ gtpv1u_create_ngu_tunnel(
|
||||
int addrs_length_in_bytes= 0;
|
||||
int loop_counter = 0;
|
||||
int ret = 0;
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
MSC_GTPU_GNB,
|
||||
MSC_RRC_GNB,
|
||||
NULL,0,
|
||||
MSC_AS_TIME_FMT" CREATE_TUNNEL_REQ RNTI %"PRIx16" inst %u ntuns %u psid %u upf-ngu teid %u",
|
||||
0,0,create_tunnel_req_pP->rnti, instanceP,
|
||||
create_tunnel_req_pP->num_tunnels, create_tunnel_req_pP->pdusession_id[0],
|
||||
create_tunnel_req_pP->outgoing_teid[0]);
|
||||
create_tunnel_resp_pP->rnti = create_tunnel_req_pP->rnti;
|
||||
create_tunnel_resp_pP->status = 0;
|
||||
create_tunnel_resp_pP->num_tunnels = 0;
|
||||
@@ -634,13 +608,6 @@ gtpv1u_create_ngu_tunnel(
|
||||
}
|
||||
}
|
||||
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_GTPU_GNB,
|
||||
MSC_RRC_GNB,
|
||||
NULL,0,
|
||||
"0 GTPV1U_GNB_CREATE_TUNNEL_RESP rnti %x teid %x",
|
||||
create_tunnel_resp_pP->rnti,
|
||||
ngu_teid);
|
||||
LOG_D(GTPU, "Tx GTPV1U_GNB_CREATE_TUNNEL_RESP ue rnti %x status %d\n",
|
||||
create_tunnel_req_pP->rnti,
|
||||
create_tunnel_resp_pP->status);
|
||||
@@ -805,13 +772,6 @@ int gtpv1u_delete_ngu_tunnel(
|
||||
GTPV1U_GNB_DELETE_TUNNEL_RESP(message_p).rnti,
|
||||
GTPV1U_GNB_DELETE_TUNNEL_RESP(message_p).gnb_NGu_teid,
|
||||
GTPV1U_GNB_DELETE_TUNNEL_RESP(message_p).status);
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_GTPU_GNB,
|
||||
MSC_RRC_GNB,
|
||||
NULL,0,
|
||||
"0 GTPV1U_GNB_DELETE_TUNNEL_RESP rnti %x teid %x",
|
||||
GTPV1U_GNB_DELETE_TUNNEL_RESP(message_p).rnti,
|
||||
teid_gNB);
|
||||
return itti_send_msg_to_task(TASK_RRC_GNB, instanceP, message_p);
|
||||
}
|
||||
|
||||
@@ -830,11 +790,6 @@ static int gtpv1u_gNB_send_init_udp(const Gtpv1uNGReq *req) {
|
||||
addr.s_addr = req->gnb_ip_address_for_NGu_up;
|
||||
UDP_INIT(message_p).address = inet_ntoa(addr);
|
||||
LOG_I(GTPU, "Tx UDP_INIT IP addr %s (%x)\n", UDP_INIT(message_p).address,UDP_INIT(message_p).port);
|
||||
MSC_LOG_EVENT(
|
||||
MSC_GTPU_ENB,
|
||||
"0 UDP bind %s:%u",
|
||||
UDP_INIT(message_p).address,
|
||||
UDP_INIT(message_p).port);
|
||||
return itti_send_msg_to_task(TASK_UDP, INSTANCE_DEFAULT, message_p);
|
||||
}
|
||||
|
||||
@@ -883,27 +838,12 @@ static int gtpv1u_gnb_tunnel_data_req(gtpv1u_gnb_tunnel_data_req_t *gnb_tunnel_d
|
||||
|
||||
if (rc != NW_GTPV1U_OK) {
|
||||
LOG_E(GTPU, "nwGtpv1uGpduMsgNew failed: 0x%x\n", rc);
|
||||
MSC_LOG_EVENT(MSC_GTPU_GNB,"0 Failed send G-PDU ltid %u rtid %u size %u",
|
||||
gnb_ngu_teid,outgoing_teid,data_req_p->length);
|
||||
(void)gnb_ngu_teid; /* avoid gcc warning "set but not used" */
|
||||
} else {
|
||||
rc = nwGtpv1uProcessUlpReq(RC.nr_gtpv1u_data_g->gtpv1u_stack, &stack_req);
|
||||
|
||||
if (rc != NW_GTPV1U_OK) {
|
||||
LOG_E(GTPU, "nwGtpv1uProcessUlpReq failed: 0x%x\n", rc);
|
||||
MSC_LOG_EVENT(MSC_GTPU_GNB,"0 Failed send G-PDU ltid %u rtid %u size %u",
|
||||
gnb_ngu_teid,outgoing_teid,data_req_p->length);
|
||||
} else {
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
MSC_GTPU_GNB,
|
||||
MSC_GTPU_SGW,
|
||||
NULL,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" G-PDU ltid %u rtid %u size %u",
|
||||
0,0,
|
||||
gnb_ngu_teid,
|
||||
outgoing_teid,
|
||||
data_req_p->length);
|
||||
}
|
||||
|
||||
rc = nwGtpv1uMsgDelete(RC.nr_gtpv1u_data_g->gtpv1u_stack,
|
||||
@@ -1002,7 +942,6 @@ void *nr_gtpv1u_gNB_task(void *args) {
|
||||
rc = nr_gtpv1u_gNB_init();
|
||||
AssertFatal(rc == 0, "gtpv1u_gNB_init Failed");
|
||||
itti_mark_task_ready(TASK_GTPV1_U);
|
||||
MSC_START_USE();
|
||||
|
||||
while(1) {
|
||||
(void) gtpv1u_gNB_process_itti_msg (NULL);
|
||||
|
||||
@@ -47,7 +47,6 @@
|
||||
|
||||
#include "assertions.h"
|
||||
#include "intertask_interface.h"
|
||||
#include "msc.h"
|
||||
|
||||
#include "gtpv1u.h"
|
||||
#if defined(ENB_MODE)
|
||||
@@ -563,26 +562,10 @@ nwGtpv1uProcessGpdu( NwGtpv1uStackT *thiz,
|
||||
GTPU_DEBUG("Received T-PDU over tunnel end-point '%x' of size %u (%u) (decapsulated %u)from "NW_IPV4_ADDR"\n",
|
||||
ntohl(msgHdr->teid), gpduLen, pMsg->msgLen, pMsg->msgBufLen, NW_IPV4_ADDR_FORMAT((peerIp)));
|
||||
#endif
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
(thiz->stackType == GTPU_STACK_ENB) ? MSC_GTPU_ENB:MSC_GTPU_SGW,
|
||||
(thiz->stackType == GTPU_STACK_ENB) ? MSC_GTPU_SGW:MSC_GTPU_ENB,
|
||||
NULL,
|
||||
0,
|
||||
" G-PDU ltid %u size %u",
|
||||
tunnelEndPointKey.teid,
|
||||
gpduLen);
|
||||
|
||||
rc = nwGtpSessionSendMsgApiToUlpEntity(pTunnelEndPoint, pMsg);
|
||||
}
|
||||
} else {
|
||||
MSC_LOG_RX_DISCARDED_MESSAGE(
|
||||
(thiz->stackType == GTPU_STACK_ENB) ? MSC_GTPU_ENB:MSC_GTPU_SGW,
|
||||
(thiz->stackType == GTPU_STACK_ENB) ? MSC_GTPU_SGW:MSC_GTPU_ENB,
|
||||
NULL,
|
||||
0,
|
||||
" G-PDU ltid %u size %u",
|
||||
tunnelEndPointKey.teid,
|
||||
gpduLen);
|
||||
GTPU_DEBUG("Received T-PDU over non-existent tunnel end-point '%x' from "NW_IPV4_ADDR"\n",
|
||||
ntohl(msgHdr->teid), NW_IPV4_ADDR_FORMAT((peerIp)));
|
||||
}
|
||||
@@ -614,13 +597,6 @@ nwGtpv1uHandleEchoReq(NW_IN NwGtpv1uStackT *thiz,
|
||||
|
||||
seqNum = ntohs(*(uint16_t *) (msgBuf + (((*msgBuf) & 0x02) ? 8 : 4)));
|
||||
|
||||
MSC_LOG_RX_MESSAGE(
|
||||
(thiz->stackType == GTPU_STACK_ENB) ? MSC_GTPU_ENB:MSC_GTPU_SGW,
|
||||
(thiz->stackType == GTPU_STACK_ENB) ? MSC_GTPU_SGW:MSC_GTPU_ENB,
|
||||
NULL,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" ECHO-REQ seq %u size %u",
|
||||
0,0,seqNum, msgBufLen);
|
||||
/* Send Echo Response */
|
||||
|
||||
rc = nwGtpv1uMsgNew( (NwGtpv1uStackHandleT)thiz,
|
||||
@@ -661,13 +637,6 @@ nwGtpv1uHandleEchoReq(NW_IN NwGtpv1uStackT *thiz,
|
||||
peerPort,
|
||||
seqNum);
|
||||
#endif
|
||||
MSC_LOG_TX_MESSAGE(
|
||||
(thiz->stackType == GTPU_STACK_ENB) ? MSC_GTPU_ENB:MSC_GTPU_SGW,
|
||||
(thiz->stackType == GTPU_STACK_ENB) ? MSC_GTPU_SGW:MSC_GTPU_ENB,
|
||||
NULL,
|
||||
0,
|
||||
MSC_AS_TIME_FMT" ECHO-RSP seq %u",
|
||||
0,0,seqNum);
|
||||
rc = nwGtpv1uCreateAndSendMsg(
|
||||
thiz,
|
||||
peerIp,
|
||||
|
||||
@@ -39,7 +39,6 @@
|
||||
|
||||
#include "m2ap_itti_messaging.h"
|
||||
|
||||
#include "msc.h"
|
||||
#include "assertions.h"
|
||||
#include "conversions.h"
|
||||
|
||||
@@ -169,14 +168,6 @@ int m2ap_eNB_generate_m2_setup_request(
|
||||
|
||||
|
||||
LOG_W(M2AP,"pdu.present %d\n",pdu.present);
|
||||
// MSC_LOG_TX_MESSAGE(
|
||||
// MSC_M2AP_eNB,
|
||||
// MSC_M2AP_MCE,
|
||||
// (const char *)buffer,
|
||||
// len,
|
||||
// MSC_AS_TIME_FMT" M2_SETUP_REQUEST initiatingMessage MCEname %s",
|
||||
// 0,0,//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
// m2ap_eNB_data_p->ENBname);
|
||||
|
||||
m2ap_eNB_itti_send_sctp_data_req(instance_p, m2ap_eNB_data_p->assoc_id, buffer, len, 0);
|
||||
|
||||
@@ -315,8 +306,6 @@ int m2ap_eNB_generate_m2_setup_request(
|
||||
//
|
||||
// m2ap_eNB_data_p->state = M2AP_ENB_STATE_READY;
|
||||
//
|
||||
// //MSC_LOG_TX_MESSAGE (MSC_M2AP_SRC_ENB, MSC_M2AP_TARGET_ENB, NULL, 0, "0 M2Setup/successfulOutcome assoc_id %u", m2ap_eNB_data_p->assoc_id);
|
||||
//
|
||||
// m2ap_eNB_itti_send_sctp_data_req(instance_p->instance, m2ap_eNB_data_p->assoc_id, buffer, len, 0);
|
||||
//
|
||||
// return ret;
|
||||
@@ -371,11 +360,6 @@ int m2ap_eNB_generate_m2_setup_request(
|
||||
// return -1;
|
||||
// }
|
||||
//
|
||||
// //MSC_LOG_TX_MESSAGE (MSC_M2AP_SRC_ENB,
|
||||
// // MSC_M2AP_TARGET_ENB, NULL, 0,
|
||||
// // "0 M2Setup/unsuccessfulOutcome assoc_id %u cause %u value %u",
|
||||
// // assoc_id, cause_type, cause_value);
|
||||
//
|
||||
// m2ap_eNB_itti_send_sctp_data_req(instance, assoc_id, buffer, len, 0);
|
||||
//
|
||||
// return ret;
|
||||
@@ -561,8 +545,6 @@ int m2ap_eNB_set_cause (M2AP_Cause_t * cause_p,
|
||||
// return -1;
|
||||
// }
|
||||
//
|
||||
// MSC_LOG_TX_MESSAGE (MSC_M2AP_SRC_ENB, MSC_M2AP_TARGET_ENB, NULL, 0, "0 X2Handover/initiatingMessage assoc_id %u", m2ap_eNB_data_p->assoc_id);
|
||||
//
|
||||
// m2ap_eNB_itti_send_sctp_data_req(instance_p->instance, m2ap_eNB_data_p->assoc_id, buffer, len, 1);
|
||||
//
|
||||
// return ret;
|
||||
@@ -654,8 +636,6 @@ int m2ap_eNB_set_cause (M2AP_Cause_t * cause_p,
|
||||
// return -1;
|
||||
// }
|
||||
//
|
||||
// MSC_LOG_TX_MESSAGE (MSC_M2AP_SRC_ENB, MSC_M2AP_TARGET_ENB, NULL, 0, "0 X2Handover/successfulOutcome assoc_id %u", m2ap_eNB_data_p->assoc_id);
|
||||
//
|
||||
// m2ap_eNB_itti_send_sctp_data_req(instance_p->instance, m2ap_eNB_data_p->assoc_id, buffer, len, 1);
|
||||
//
|
||||
// return ret;
|
||||
@@ -716,8 +696,6 @@ int m2ap_eNB_set_cause (M2AP_Cause_t * cause_p,
|
||||
// return -1;
|
||||
// }
|
||||
//
|
||||
// MSC_LOG_TX_MESSAGE (MSC_M2AP_SRC_ENB, MSC_M2AP_TARGET_ENB, NULL, 0, "0 X2UEContextRelease/initiatingMessage assoc_id %u", m2ap_eNB_data_p->assoc_id);
|
||||
//
|
||||
// m2ap_eNB_itti_send_sctp_data_req(instance_p->instance, m2ap_eNB_data_p->assoc_id, buffer, len, 1);
|
||||
//
|
||||
// return ret;
|
||||
@@ -800,8 +778,6 @@ int m2ap_eNB_set_cause (M2AP_Cause_t * cause_p,
|
||||
// return -1;
|
||||
// }
|
||||
//
|
||||
// MSC_LOG_TX_MESSAGE (MSC_M2AP_SRC_ENB, MSC_M2AP_TARGET_ENB, NULL, 0, "0 X2HandoverCancel/initiatingMessage assoc_id %u", m2ap_eNB_data_p->assoc_id);
|
||||
//
|
||||
// m2ap_eNB_itti_send_sctp_data_req(instance_p->instance, m2ap_eNB_data_p->assoc_id, buffer, len, 1);
|
||||
//
|
||||
// return ret;
|
||||
|
||||
@@ -44,7 +44,6 @@
|
||||
//#include "m3ap_MME_interface_management.h"
|
||||
#include "m3ap_MCE_interface_management.h"
|
||||
|
||||
#include "msc.h"
|
||||
#include "assertions.h"
|
||||
#include "conversions.h"
|
||||
|
||||
|
||||
@@ -44,7 +44,6 @@
|
||||
|
||||
#include "m3ap_itti_messaging.h"
|
||||
|
||||
#include "msc.h"
|
||||
#include "assertions.h"
|
||||
#include "conversions.h"
|
||||
|
||||
@@ -149,15 +148,7 @@ int MCE_send_MBMS_SESSION_START_RESPONSE(instance_t instance, m3ap_session_start
|
||||
//
|
||||
//
|
||||
// LOG_W(M3AP,"pdu.present %d\n",pdu.present);
|
||||
// // MSC_LOG_TX_MESSAGE(
|
||||
// // MSC_M3AP_MCE,
|
||||
// // MSC_M3AP_MCE,
|
||||
// // (const char *)buffer,
|
||||
// // len,
|
||||
// // MSC_AS_TIME_FMT" M3_SETUP_REQUEST initiatingMessage MCEname %s",
|
||||
// // 0,0,//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
// // m3ap_MCE_data_p->MCEname);
|
||||
//
|
||||
|
||||
m3ap_MCE_itti_send_sctp_data_req(instance, m3ap_mce_data_g->assoc_id, buffer, len, 0);
|
||||
return 0;
|
||||
}
|
||||
@@ -318,14 +309,6 @@ int MCE_send_MBMS_SESSION_STOP_RESPONSE(instance_t instance, m3ap_session_start_
|
||||
|
||||
|
||||
LOG_D(M3AP,"pdu.present %d\n",pdu.present);
|
||||
// MSC_LOG_TX_MESSAGE(
|
||||
// MSC_M3AP_MCE,
|
||||
// MSC_M3AP_MCE,
|
||||
// (const char *)buffer,
|
||||
// len,
|
||||
// MSC_AS_TIME_FMT" M3_SETUP_REQUEST initiatingMessage MCEname %s",
|
||||
// 0,0,//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
// m3ap_MCE_data_p->MCEname);
|
||||
|
||||
m3ap_MCE_itti_send_sctp_data_req(instance, m3ap_mce_data_g->assoc_id, buffer, len, 0);
|
||||
return 0;
|
||||
@@ -425,14 +408,6 @@ int MCE_send_MBMS_SESSION_UPDATE_RESPONSE(instance_t instance, m3ap_mbms_session
|
||||
|
||||
|
||||
LOG_D(M3AP,"pdu.present %d\n",pdu.present);
|
||||
// MSC_LOG_TX_MESSAGE(
|
||||
// MSC_M3AP_MCE,
|
||||
// MSC_M3AP_MCE,
|
||||
// (const char *)buffer,
|
||||
// len,
|
||||
// MSC_AS_TIME_FMT" M3_SETUP_REQUEST initiatingMessage MCEname %s",
|
||||
// 0,0,//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
// m3ap_MCE_data_p->MCEname);
|
||||
|
||||
m3ap_MCE_itti_send_sctp_data_req(instance, m3ap_mce_data_g->assoc_id, buffer, len, 0);
|
||||
return 0;
|
||||
@@ -646,14 +621,6 @@ int MCE_send_M3_SETUP_REQUEST(m3ap_MCE_instance_t *instance_p, m3ap_MCE_data_t *
|
||||
//
|
||||
//
|
||||
// LOG_W(M3AP,"pdu.present %d\n",pdu.present);
|
||||
// // MSC_LOG_TX_MESSAGE(
|
||||
// // MSC_M3AP_MCE,
|
||||
// // MSC_M3AP_MCE,
|
||||
// // (const char *)buffer,
|
||||
// // len,
|
||||
// // MSC_AS_TIME_FMT" M3_SETUP_REQUEST initiatingMessage MCEname %s",
|
||||
// // 0,0,//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
// // m3ap_MCE_data_p->MCEname);
|
||||
//
|
||||
//
|
||||
//// buffer = &bytes[0];
|
||||
@@ -725,15 +692,6 @@ int MCE_handle_M3_SETUP_RESPONSE(instance_t instance,
|
||||
//for (int i=0;i<num_cells_to_activate;i++)
|
||||
// AssertFatal(M3AP_SETUP_RESP (msg_p).num_SI[i] > 0, "System Information %d is missing",i);
|
||||
|
||||
//MSC_LOG_RX_MESSAGE(
|
||||
// MSC_M3AP_MCE,
|
||||
// MSC_M3AP_CU,
|
||||
// 0,
|
||||
// 0,
|
||||
// MSC_AS_TIME_FMT" MCE_handle_M3_SETUP_RESPONSE successfulOutcome assoc_id %d",
|
||||
// 0,0,//MSC_AS_TIME_ARGS(ctxt_pP),
|
||||
// assoc_id);
|
||||
|
||||
//LOG_D(M3AP, "Sending M3AP_SETUP_RESP ITTI message to MCE_APP with assoc_id (%d->%d)\n",
|
||||
// assoc_id,MCE_MOMCELE_ID_TO_INSTANCE(assoc_id));
|
||||
itti_send_msg_to_task(TASK_MCE_APP, ENB_MODULE_ID_TO_INSTANCE(assoc_id), msg_p);
|
||||
|
||||
@@ -39,7 +39,6 @@
|
||||
|
||||
#include "m2ap_itti_messaging.h"
|
||||
|
||||
#include "msc.h"
|
||||
#include "assertions.h"
|
||||
#include "conversions.h"
|
||||
|
||||
@@ -174,8 +173,6 @@ int m2ap_MCE_generate_m2_setup_request(
|
||||
return -1;
|
||||
}
|
||||
|
||||
//MSC_LOG_TX_MESSAGE (MSC_M2AP_SRC_MCE, MSC_M2AP_TARGET_MCE, NULL, 0, "0 M2Setup/initiatingMessage assoc_id %u", m2ap_MCE_data_p->assoc_id);
|
||||
|
||||
m2ap_MCE_itti_send_sctp_data_req(instance_p->instance, m2ap_MCE_data_p->assoc_id, buffer, len, 0);
|
||||
|
||||
return ret;
|
||||
@@ -311,8 +308,6 @@ int m2ap_MCE_generate_m2_setup_response(m2ap_MCE_instance_t *instance_p, m2ap_MC
|
||||
|
||||
m2ap_MCE_data_p->state = M2AP_MCE_STATE_READY;
|
||||
|
||||
//MSC_LOG_TX_MESSAGE (MSC_M2AP_SRC_MCE, MSC_M2AP_TARGET_MCE, NULL, 0, "0 M2Setup/successfulOutcome assoc_id %u", m2ap_MCE_data_p->assoc_id);
|
||||
|
||||
m2ap_MCE_itti_send_sctp_data_req(instance_p->instance, m2ap_MCE_data_p->assoc_id, buffer, len, 0);
|
||||
|
||||
return ret;
|
||||
@@ -367,11 +362,6 @@ int m2ap_MCE_generate_m2_setup_failure(instance_t instance,
|
||||
return -1;
|
||||
}
|
||||
|
||||
//MSC_LOG_TX_MESSAGE (MSC_M2AP_SRC_MCE,
|
||||
// MSC_M2AP_TARGET_MCE, NULL, 0,
|
||||
// "0 M2Setup/unsuccessfulOutcome assoc_id %u cause %u value %u",
|
||||
// assoc_id, cause_type, cause_value);
|
||||
|
||||
m2ap_MCE_itti_send_sctp_data_req(instance, assoc_id, buffer, len, 0);
|
||||
|
||||
return ret;
|
||||
@@ -557,8 +547,6 @@ int m2ap_MCE_set_cause (M2AP_Cause_t * cause_p,
|
||||
// return -1;
|
||||
// }
|
||||
//
|
||||
// MSC_LOG_TX_MESSAGE (MSC_M2AP_SRC_MCE, MSC_M2AP_TARGET_MCE, NULL, 0, "0 X2Handover/initiatingMessage assoc_id %u", m2ap_MCE_data_p->assoc_id);
|
||||
//
|
||||
// m2ap_MCE_itti_send_sctp_data_req(instance_p->instance, m2ap_MCE_data_p->assoc_id, buffer, len, 1);
|
||||
//
|
||||
// return ret;
|
||||
@@ -650,8 +638,6 @@ int m2ap_MCE_set_cause (M2AP_Cause_t * cause_p,
|
||||
// return -1;
|
||||
// }
|
||||
//
|
||||
// MSC_LOG_TX_MESSAGE (MSC_M2AP_SRC_MCE, MSC_M2AP_TARGET_MCE, NULL, 0, "0 X2Handover/successfulOutcome assoc_id %u", m2ap_MCE_data_p->assoc_id);
|
||||
//
|
||||
// m2ap_MCE_itti_send_sctp_data_req(instance_p->instance, m2ap_MCE_data_p->assoc_id, buffer, len, 1);
|
||||
//
|
||||
// return ret;
|
||||
@@ -712,8 +698,6 @@ int m2ap_MCE_set_cause (M2AP_Cause_t * cause_p,
|
||||
// return -1;
|
||||
// }
|
||||
//
|
||||
// MSC_LOG_TX_MESSAGE (MSC_M2AP_SRC_MCE, MSC_M2AP_TARGET_MCE, NULL, 0, "0 X2UEContextRelease/initiatingMessage assoc_id %u", m2ap_MCE_data_p->assoc_id);
|
||||
//
|
||||
// m2ap_MCE_itti_send_sctp_data_req(instance_p->instance, m2ap_MCE_data_p->assoc_id, buffer, len, 1);
|
||||
//
|
||||
// return ret;
|
||||
@@ -796,8 +780,6 @@ int m2ap_MCE_set_cause (M2AP_Cause_t * cause_p,
|
||||
// return -1;
|
||||
// }
|
||||
//
|
||||
// MSC_LOG_TX_MESSAGE (MSC_M2AP_SRC_MCE, MSC_M2AP_TARGET_MCE, NULL, 0, "0 X2HandoverCancel/initiatingMessage assoc_id %u", m2ap_MCE_data_p->assoc_id);
|
||||
//
|
||||
// m2ap_MCE_itti_send_sctp_data_req(instance_p->instance, m2ap_MCE_data_p->assoc_id, buffer, len, 1);
|
||||
//
|
||||
// return ret;
|
||||
|
||||
@@ -43,7 +43,6 @@
|
||||
|
||||
#include "m3ap_MME_interface_management.h"
|
||||
|
||||
#include "msc.h"
|
||||
#include "assertions.h"
|
||||
#include "conversions.h"
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user