diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index ae57a56e36..2f2d95d4b7 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -34,6 +34,4 @@ job1:
- cat $OPENAIR_DIR/cmake_targets/autotests/log/results_autotests.xml
- exce_log=`egrep -i 'warning|error|critical|exception' $OPENAIR_DIR/cmake_targets/autotests/log/python_autotest.log |cat `
- if [ -n "$exce_log" ]; then echo -e "\e[31mThere are errors in $NFS_TEST_RESULTS_DIR/log/python_autotest.log. Please check the logs\e[0m" ; fi
- - exce_log=`egrep -i 'warning|error|critical|exception' $OPENAIR_DIR/cmake_targets/autotests/log/python_autotest_cleanup.log |cat `
- - if [ -n "$exce_log" ]; then echo -e "\e[31mThere are errors in $NFS_TEST_RESULTS_DIR/log/python_autotest_cleanup.log. Please check the logs\e[0m" ; fi
diff --git a/cmake_targets/CMakeLists.txt b/cmake_targets/CMakeLists.txt
index 3557ba597e..cecabf3802 100644
--- a/cmake_targets/CMakeLists.txt
+++ b/cmake_targets/CMakeLists.txt
@@ -1672,7 +1672,7 @@ target_link_libraries (lte-softmodem-nos1 ${LIBXML2_LIBRARIES})
target_link_libraries (lte-softmodem-nos1 pthread m ${CONFIG_LIBRARIES} rt crypt ${CRYPTO_LIBRARIES} ${OPENSSL_LIBRARIES} ${NETTLE_LIBRARIES} ${option_HW_lib} ${option_TP_lib} ${XFORMS_LIBRARIES} )
target_link_libraries (lte-softmodem-nos1 ${LIBBOOST_LIBRARIES})
target_link_libraries (lte-softmodem-nos1 ${LIB_LMS_LIBRARIES})
-target_link_libraries (lte-softmodem ${T_LIB})
+target_link_libraries (lte-softmodem-nos1 ${T_LIB})
# rrh
################################
diff --git a/cmake_targets/autotests/README.txt b/cmake_targets/autotests/README.txt
index 31bf293a7b..cf1e28dd05 100644
--- a/cmake_targets/autotests/README.txt
+++ b/cmake_targets/autotests/README.txt
@@ -239,7 +239,7 @@ Obj.# Case# Test# Description
02 Functional test case
-03 Non-Functional test case
+03 Autotests specific to OAI UE
04 Failure test case
@@ -249,6 +249,4 @@ Obj.# Case# Test# Description
#TODO: Add test cases for 10,20 MHz
#TODO: Add test cases for TDD/FDD
#TODO: Test and compile seperately for Rel8/Rel10
-#TODO: Case03.py eMBMS test case
-
-
+#TODO: Case03.py eMBMS test case
\ No newline at end of file
diff --git a/cmake_targets/autotests/test_case_list.xml b/cmake_targets/autotests/test_case_list.xml
index 2fecd2b292..e2f34c7c90 100644
--- a/cmake_targets/autotests/test_case_list.xml
+++ b/cmake_targets/autotests/test_case_list.xml
@@ -1194,7 +1194,7 @@
$OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --reset-ue; $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --stop-ue ; sleep 10; $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --start-ue
- $OPENAIR_DIR/cmake_targets/autotests/tools/iperf3_script 1 ppp0 -c 192.172.0.1 -i 1 -u -f m -B 192.172.0.2 -b 16M -R
+ $OPENAIR_DIR/cmake_targets/autotests/tools/iperf_script 1 ppp0 -s -i 1 -f m -u
False
sudo -S -E $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --reset-ue
@@ -1214,7 +1214,7 @@
/opt/hss_sim0609/starthss >> /dev/null ; sleep 3000
- $OPENAIRCN_DIR/TEST/autotests/tools/iperf3_script 5 lo -s -i 1 -f m
+ $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 10 192.172.0.2 -c 192.172.0.2 -b 16M -i 1 -f m -u
False
@@ -1266,7 +1266,7 @@
$OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --reset-ue; $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --stop-ue ; sleep 10; $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --start-ue
- $OPENAIR_DIR/cmake_targets/autotests/tools/iperf_script 5 lo -s -i 1 -f m -u
+ $OPENAIR_DIR/cmake_targets/autotests/tools/iperf_script 1 ppp0 -s -i 1 -f m -u
throughput_test min=0.0Mbits/sec max=9.0Mbits/sec average=8.5Mbits/sec
@@ -1287,7 +1287,7 @@
/opt/hss_sim0609/starthss >> /dev/null ; sleep 3000
- $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 75 lo -c 192.172.0.2 -b 33Mbits/s -i 1 -f m -u
+ $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 10 192.172.0.2 -c 192.172.0.2 -b 33M -i 1 -f m -u
False
@@ -1361,7 +1361,7 @@
/opt/hss_sim0609/starthss >> /dev/null ; sleep 3000
- $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 60 lo -u -c 192.172.0.2 -b 10Mbits/s
+ $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 10 192.172.0.2 -u -c 192.172.0.2 -b 10Mbits/s
False
@@ -1859,7 +1859,7 @@
$OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --reset-ue; $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --stop-ue ; sleep 10; $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --start-ue
- $OPENAIR_DIR/cmake_targets/autotests/tools/iperf_script 1 ppp0 -c 192.172.0.1 -B 192.172.0.2
+ $OPENAIR_DIR/cmake_targets/autotests/tools/iperf_script 1 ppp0 -c 192.172.0.1
@@ -1934,7 +1934,7 @@
$OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --reset-ue; $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --stop-ue ; sleep 10; $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --start-ue
- $OPENAIR_DIR/cmake_targets/autotests/tools/iperf_script 1 ppp0 -c 192.172.0.1 -B 192.172.0.2
+ $OPENAIR_DIR/cmake_targets/autotests/tools/iperf_script 1 ppp0 -c 192.172.0.1
@@ -2008,7 +2008,7 @@
$OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --reset-ue; $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --stop-ue ; sleep 10; $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --start-ue
- $OPENAIR_DIR/cmake_targets/autotests/tools/iperf_script 1 ppp0 -c 192.172.0.1 -B 192.172.0.2
+ $OPENAIR_DIR/cmake_targets/autotests/tools/iperf_script 1 ppp0 -c 192.172.0.1
@@ -2082,7 +2082,7 @@
$OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --reset-ue; $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --stop-ue ; sleep 10; $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --start-ue
- $OPENAIR_DIR/cmake_targets/autotests/tools/iperf3_script 1 ppp0 -c 192.172.0.1 -i 1 -f m -B 192.172.0.2 -R
+ $OPENAIR_DIR/cmake_targets/autotests/tools/iperf_script 1 ppp0 -s -i 1 -f m
False
sudo -S -E $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --reset-ue
@@ -2102,7 +2102,7 @@
/opt/hss_sim0609/starthss >> /dev/null ; sleep 3000
- $OPENAIRCN_DIR/TEST/autotests/tools/iperf3_script 5 lo -s -i 1 -f m
+ $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 10 192.172.0.2 -c 192.172.0.2 -i 1 -f m
False
@@ -2154,7 +2154,7 @@
$OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --reset-ue; $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --stop-ue ; sleep 10; $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --start-ue
- $OPENAIR_DIR/cmake_targets/autotests/tools/iperf_script 5 lo -s -i 1 -f m
+ $OPENAIR_DIR/cmake_targets/autotests/tools/iperf_script 1 ppp0 -s -i 1 -f m
throughput_test min=0.0Mbits/sec max=9.0Mbits/sec average=8.5Mbits/sec
@@ -2175,7 +2175,7 @@
/opt/hss_sim0609/starthss >> /dev/null ; sleep 3000
- $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 75 lo -c 192.172.0.2 -i 1 -f m
+ $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 10 192.172.0.2 -c 192.172.0.2 -i 1 -f m
False
@@ -2249,7 +2249,7 @@
/opt/hss_sim0609/starthss >> /dev/null ; sleep 3000
- $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 60 lo -c 192.172.0.2
+ $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 10 192.172.0.2 -c 192.172.0.2
False
@@ -3585,7 +3585,7 @@ c
$OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --reset-ue; $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --stop-ue ; sleep 10; $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --start-ue
- $OPENAIR_DIR/cmake_targets/autotests/tools/iperf3_script 1 ppp0 -c 192.172.0.1 -i 1 -u -f m -B 192.172.0.2 -b 16M -R
+ $OPENAIR_DIR/cmake_targets/autotests/tools/iperf_script 1 ppp0 -s -i 1 -u -f m
False
sudo -S -E $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --reset-ue
@@ -3605,7 +3605,7 @@ c
/opt/hss_sim0609/starthss >> /dev/null ; sleep 3000
- $OPENAIRCN_DIR/TEST/autotests/tools/iperf3_script 5 lo -s -i 1 -f m
+ $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 10 192.172.0.2 -c 192.172.0.2 -i 1 -u -f m -b 16M
False
@@ -3656,7 +3656,7 @@ c
$OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --reset-ue; $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --stop-ue ; sleep 10; $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --start-ue
- $OPENAIR_DIR/cmake_targets/autotests/tools/iperf_script 5 lo -s -i 1 -u -f m
+ $OPENAIR_DIR/cmake_targets/autotests/tools/iperf_script 1 ppp0 -s -i 1 -u -f m
False
sudo -S -E $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --reset-ue
@@ -3676,7 +3676,7 @@ c
/opt/hss_sim0609/starthss >> /dev/null ; sleep 3000
- $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 75 lo -c 192.172.0.2 -b 33Mbits/s -i 1 -f m -u
+ $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 10 192.172.0.2 -c 192.172.0.2 -b 33Mbits/s -i 1 -f m -u
False
@@ -3727,7 +3727,7 @@ c
$OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --reset-ue; $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --stop-ue ; sleep 10; $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --start-ue
- $OPENAIR_DIR/cmake_targets/autotests/tools/iperf_script 1 ppp0 -s -i 1 -u -f m -B 192.172.0.2
+ $OPENAIR_DIR/cmake_targets/autotests/tools/iperf_script 1 ppp0 -s -i 1 -u -f m
False
sudo -S -E $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --reset-ue
@@ -3747,7 +3747,7 @@ c
/opt/hss_sim0609/starthss >> /dev/null ; sleep 3000
- $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 60 lo -u -c 192.172.0.2 -b 10Mbits/s
+ $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 10 192.172.0.2 -u -c 192.172.0.2 -b 10Mbits/s
False
@@ -3797,7 +3797,7 @@ c
$OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --reset-ue; $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --stop-ue ; sleep 10; $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --start-ue
- $OPENAIR_DIR/cmake_targets/autotests/tools/iperf_script 1 ppp0 -c 192.172.0.1 -B 192.172.0.2
+ $OPENAIR_DIR/cmake_targets/autotests/tools/iperf_script 1 ppp0 -c 192.172.0.1 -B 192.172.0.2
@@ -4013,7 +4013,7 @@ c
$OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --reset-ue; $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --stop-ue ; sleep 10; $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --start-ue
- $OPENAIR_DIR/cmake_targets/autotests/tools/iperf3_script 1 ppp0 -c 192.172.0.1 -i 1 -f m -B 192.172.0.2 -R
+ $OPENAIR_DIR/cmake_targets/autotests/tools/iperf_script 1 ppp0 -s -i 1 -f m
False
sudo -S -E $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --reset-ue
@@ -4033,7 +4033,7 @@ c
/opt/hss_sim0609/starthss >> /dev/null ; sleep 3000
- $OPENAIRCN_DIR/TEST/autotests/tools/iperf3_script 5 lo -s -i 1 -f m
+ $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 10 192.172.0.2 -c 192.172.0.2 -i 1 -f m
False
@@ -4084,7 +4084,7 @@ c
$OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --reset-ue; $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --stop-ue ; sleep 10; $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --start-ue
- $OPENAIR_DIR/cmake_targets/autotests/tools/iperf_script 5 lo -s -i 1 -f m
+ $OPENAIR_DIR/cmake_targets/autotests/tools/iperf_script 1 ppp0 -s -i 1 -f m
False
sudo -S -E $OPENAIR_DIR/cmake_targets/autotests/tools/configure_cots_bandrich_ue.py --reset-ue
@@ -4104,7 +4104,7 @@ c
/opt/hss_sim0609/starthss >> /dev/null ; sleep 3000
- $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 75 lo -c 192.172.0.2 -i 1 -f m
+ $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 10 192.172.0.2 -c 192.172.0.2 -i 1 -f m
False
@@ -7293,7 +7293,7 @@ c
/opt/hss_sim0609/starthss >> /dev/null ; sleep 3000
- $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 65 lo -c 192.172.0.2 -b 16Mbits/s -i 1 -f m -u
+ $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 10 192.172.0.2 -c 192.172.0.2 -b 16Mbits/s -i 1 -f m -u
False
@@ -7367,7 +7367,7 @@ c
/opt/hss_sim0609/starthss >> /dev/null ; sleep 3000
- $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 65 lo -c 192.172.0.2 -b 33Mbits/s -i 1 -f m -u
+ $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 10 192.172.0.2 -c 192.172.0.2 -b 33Mbits/s -i 1 -f m -u
False
@@ -7441,7 +7441,7 @@ c
/opt/hss_sim0609/starthss >> /dev/null ; sleep 3000
- $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 65 lo -c 192.172.0.2 -b 40Mbits/s -i 1 -f m -u
+ $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 10 192.172.0.2 -c 192.172.0.2 -b 40Mbits/s -i 1 -f m -u
False
@@ -7738,7 +7738,7 @@ c
/opt/hss_sim0609/starthss >> /dev/null ; sleep 3000
- $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 65 lo -c 192.172.0.2 -i 1 -f m
+ $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 10 192.172.0.2 -c 192.172.0.2 -i 1 -f m
False
@@ -7812,7 +7812,7 @@ c
/opt/hss_sim0609/starthss >> /dev/null ; sleep 3000
- $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 65 lo -c 192.172.0.2 -i 1 -f m
+ $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 10 192.172.0.2 -c 192.172.0.2 -i 1 -f m
False
@@ -7886,7 +7886,7 @@ c
/opt/hss_sim0609/starthss >> /dev/null ; sleep 3000
- $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 65 lo -c 192.172.0.2 -i 1 -f m
+ $OPENAIRCN_DIR/TEST/autotests/tools/iperf_script 10 192.172.0.2 -c 192.172.0.2 -i 1 -f m
False
diff --git a/cmake_targets/autotests/tools/iperf_script b/cmake_targets/autotests/tools/iperf_script
index 9f5990655e..731438d65d 100755
--- a/cmake_targets/autotests/tools/iperf_script
+++ b/cmake_targets/autotests/tools/iperf_script
@@ -34,6 +34,8 @@
#arg2 interface
#arg3 iperf arguments
+echo "Start time of script: `date`"
+
args=($*)
timeout=${args[0]}
iface=${args[1]}
@@ -48,17 +50,57 @@ echo "iface = $iface"
echo "iperf_args = ${iperf_args[@]}"
echo "ip_client = $ip_client"
+
+
+# Test an IP address for validity:
+# Usage:
+# valid_ip IP_ADDRESS
+# if [[ $? -eq 0 ]]; then echo good; else echo bad; fi
+# OR
+# if valid_ip IP_ADDRESS; then echo good; else echo bad; fi
+#
+function valid_ip()
+{
+ local ip=$1
+ local stat=1
+
+ if [[ $ip =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]]; then
+ OIFS=$IFS
+ IFS='.'
+ ip=($ip)
+ IFS=$OIFS
+ [[ ${ip[0]} -le 255 && ${ip[1]} -le 255 \
+ && ${ip[2]} -le 255 && ${ip[3]} -le 255 ]]
+ stat=$?
+ fi
+ return $stat
+}
+
+if valid_ip $iface; then
+ echo "$iface is Valid IP Address. Checking for connectivity..."
+ ping -c 1 $iface >& /dev/null
+ while [ "$?" != "0" ]; do
+ ping -c 1 $iface >& /dev/null
+ done
+ echo "$iface connectivity achieved at `date`, Seconds = $SECONDS"
+
+else
+
+ echo "Waiting for Interface $iface to come up..."
+ while true; do var=`ifconfig $iface` ;sleep 1; if [ "$var" != "" ]; then break; fi ; done
+ echo "$iface is now available at `date` , Seconds = $SECONDS"
+fi
+
+
+#if [ -n "$ip_client" ]; then
+#echo "Waiting for route to be setup before iperf makes connection..."
+# var=`route -n | grep $ip_client`
+# if ["$var" != "" ] ; then break; fi
+#
+#fi
+
+echo "Sleeping for additional $timeout seconds"
sleep $timeout
-echo " Waiting for IP Address..."
-while true; do var=`ifconfig $iface` ;sleep 1; if [ "$var" != "" ]; then break; fi ; done ; sleep 5
-
-if [ -n "$ip_client" ]; then
-echo "Waiting for route to be setup before iperf makes connection..."
- var=`route -n | grep $ip_client`
- if ["$var" != "" ] ; then break; fi
-
-fi
-sleep 5
-
+echo "Starting iperf at `date` , Seconds = $SECONDS ...."
iperf ${iperf_args[@]}
diff --git a/common/utils/T/T_messages.txt b/common/utils/T/T_messages.txt
index 05c08085c6..050c48d0a9 100644
--- a/common/utils/T/T_messages.txt
+++ b/common/utils/T/T_messages.txt
@@ -95,6 +95,10 @@ ID = ENB_MAC_UE_UL_CE
DESC = MAC uplink UE received control element
GROUP = ALL:MAC:ENB
FORMAT = int,eNB_ID : int,CC_id : int,rnti : int,frame : int,subframe : int,ce
+ID = ENB_MAC_UE_DL_PDU_WITH_DATA
+ DESC = MAC downlink PDU for an UE
+ GROUP = ALL:MAC:ENB
+ FORMAT = int,eNB_ID : int,CC_id : int,rnti : int,frame : int,subframe : int,harq_pid : buffer,data
#RLC logs
ID = ENB_RLC_DL
diff --git a/common/utils/T/tracer/event_selector.c b/common/utils/T/tracer/event_selector.c
index a03846c056..2b6cfd878d 100644
--- a/common/utils/T/tracer/event_selector.c
+++ b/common/utils/T/tracer/event_selector.c
@@ -34,11 +34,14 @@ static void scroll(void *private, gui *g,
int number_of_lines;
int new_line;
int inc;
+ int *d = notification_data;
+ int key_modifiers = *d;
textlist_state(g, w, &visible_lines, &start_line, &number_of_lines);
inc = 10;
if (inc > visible_lines - 2) inc = visible_lines - 2;
if (inc < 1) inc = 1;
+ if (key_modifiers & KEY_CONTROL) inc = 1;
if (!strcmp(notification, "scrollup")) inc = -inc;
new_line = start_line + inc;
diff --git a/common/utils/T/tracer/gui/gui.h b/common/utils/T/tracer/gui/gui.h
index 673514f138..27e6603042 100644
--- a/common/utils/T/tracer/gui/gui.h
+++ b/common/utils/T/tracer/gui/gui.h
@@ -83,8 +83,8 @@ int new_color(gui *gui, char *color);
/* notifications */
/* known notifications:
* - textlist:
- * - scrollup { void *: NULL }
- * - scrolldown { void *: NULL }
+ * - scrollup { int: key_modifiers }
+ * - scrolldown { int: key_modifiers }
* - click { int [2]: line, button }
* - label:
* - click { int: button } (if enabled)
diff --git a/common/utils/T/tracer/gui/textlist.c b/common/utils/T/tracer/gui/textlist.c
index 896cba5b9e..e919b7c0a5 100644
--- a/common/utils/T/tracer/gui/textlist.c
+++ b/common/utils/T/tracer/gui/textlist.c
@@ -54,11 +54,11 @@ static void button(gui *_g, widget *_this, int x, int y,
x -= this->common.x;
/* scroll up */
if (button == 4 && up == 0) {
- gui_notify(g, "scrollup", _this, NULL);
+ gui_notify(g, "scrollup", _this, &key_modifiers);
}
/* scroll down */
if (button == 5 && up == 0) {
- gui_notify(g, "scrolldown", _this, NULL);
+ gui_notify(g, "scrolldown", _this, &key_modifiers);
}
/* button 1/2/3 click */
if (button >= 1 && button <= 3 && up == 0) {
diff --git a/common/utils/T/tracer/view/textlist.c b/common/utils/T/tracer/view/textlist.c
index 5227900e4e..b89314191c 100644
--- a/common/utils/T/tracer/view/textlist.c
+++ b/common/utils/T/tracer/view/textlist.c
@@ -89,6 +89,8 @@ static void scroll(void *private, gui *g,
int number_of_lines;
int new_line;
int inc;
+ int *d = notification_data;
+ int key_modifiers = *d;
if (pthread_mutex_lock(&this->lock)) abort();
@@ -96,6 +98,7 @@ static void scroll(void *private, gui *g,
inc = 10;
if (inc > visible_lines - 2) inc = visible_lines - 2;
if (inc < 1) inc = 1;
+ if (key_modifiers & KEY_CONTROL) inc = 1;
if (!strcmp(notification, "scrollup")) inc = -inc;
new_line = start_line + inc;
@@ -122,7 +125,19 @@ static void click(void *private, gui *g,
if (pthread_mutex_lock(&this->lock)) abort();
- if (button == 1) this->autoscroll = 1 - this->autoscroll;
+ if (button == 1) this->autoscroll = 1;
+ if (button == 3) this->autoscroll = 0;
+
+ if (this->autoscroll) {
+ int visible_lines, start_line, number_of_lines;
+ textlist_state(this->g, this->w, &visible_lines, &start_line,
+ &number_of_lines);
+ start_line = number_of_lines - visible_lines;
+ if (start_line < 0) start_line = 0;
+ textlist_set_start_line(this->g, this->w, start_line);
+ /* this call is not necessary, but if things change in textlist... */
+ widget_dirty(this->g, this->w);
+ }
if (pthread_mutex_unlock(&this->lock)) abort();
}
diff --git a/openair1/PHY/LTE_TRANSPORT/dci_tools.c b/openair1/PHY/LTE_TRANSPORT/dci_tools.c
index c849adf2f6..1bd7db46a0 100644
--- a/openair1/PHY/LTE_TRANSPORT/dci_tools.c
+++ b/openair1/PHY/LTE_TRANSPORT/dci_tools.c
@@ -6389,6 +6389,7 @@ int generate_ue_ulsch_params_from_dci(void *dci_pdu,
if (ulsch->harq_processes[harq_pid]->first_tx==1) {
// ulsch->harq_processes[harq_pid]->Ndi = 1;
ulsch->harq_processes[harq_pid]->first_tx=0;
+ ulsch->harq_processes[harq_pid]->DCINdi= ndi;
ulsch->harq_processes[harq_pid]->round = 0;
} else {
if (ulsch->harq_processes[harq_pid]->DCINdi!=ndi) { // new SDU opportunity
diff --git a/openair2/LAYER2/MAC/eNB_scheduler_dlsch.c b/openair2/LAYER2/MAC/eNB_scheduler_dlsch.c
index 8be6e6b918..61a0357691 100644
--- a/openair2/LAYER2/MAC/eNB_scheduler_dlsch.c
+++ b/openair2/LAYER2/MAC/eNB_scheduler_dlsch.c
@@ -1127,6 +1127,9 @@ schedule_ue_spec(
module_idP, CC_id, frameP, UE_RNTI(module_idP,UE_id), TBS);
}
+ T(T_ENB_MAC_UE_DL_PDU_WITH_DATA, T_INT(module_idP), T_INT(CC_id), T_INT(rnti), T_INT(frameP), T_INT(subframeP),
+ T_INT(harq_pid), T_BUFFER(UE_list->DLSCH_pdu[CC_id][0][UE_id].payload[0], TBS));
+
aggregation = process_ue_cqi(module_idP,UE_id);
UE_list->UE_template[CC_id][UE_id].nb_rb[harq_pid] = nb_rb;
diff --git a/openair2/LAYER2/RLC/AM_v9.3.0/rlc_am.c b/openair2/LAYER2/RLC/AM_v9.3.0/rlc_am.c
index 0b8abf3838..fd8279579d 100755
--- a/openair2/LAYER2/RLC/AM_v9.3.0/rlc_am.c
+++ b/openair2/LAYER2/RLC/AM_v9.3.0/rlc_am.c
@@ -103,7 +103,7 @@ rlc_am_get_buffer_occupancy_in_bytes (
}
#endif
- return rlc_pP->status_buffer_occupancy + rlc_pP->retransmission_buffer_occupancy + rlc_pP->sdu_buffer_occupancy + max_li_overhead + header_overhead;
+ return rlc_pP->status_buffer_occupancy + rlc_pP->retrans_num_bytes_to_retransmit + rlc_pP->sdu_buffer_occupancy + max_li_overhead + header_overhead;
}
//-----------------------------------------------------------------------------
void