From c62be7a101ce487b329e889e2746c8c94afd880b Mon Sep 17 00:00:00 2001
From: Robert Schmidt <robert.schmidt@eurecom.fr>
Date: Fri, 8 Dec 2017 15:28:28 +0100
Subject: [PATCH] Uniform messages of exiting threads

---
 common/utils/msc/msc.c                      |  1 +
 openair2/ENB_APP/enb_app.c                  |  1 +
 openair2/ENB_APP/flexran_agent.c            |  1 +
 openair2/RRC/LITE/rrc_UE.c                  |  1 +
 openair2/RRC/LITE/rrc_eNB.c                 |  1 +
 openair2/X2AP/x2ap.c                        |  1 +
 openair3/GTPV1-U/gtpv1u_eNB.c               |  1 +
 openair3/GTPV1-U/gtpv1u_task.c              |  1 +
 openair3/S1AP/s1ap_eNB.c                    |  1 +
 openair3/SCTP/sctp_eNB_task.c               |  1 +
 openair3/TEST/EPC_TEST/play_scenario_s1ap.c |  1 +
 openair3/UDP/udp_eNB_task.c                 |  2 +-
 targets/RT/USER/lte-enb.c                   | 24 +++++++++++++++++----
 targets/RT/USER/lte-softmodem.c             |  3 ++-
 14 files changed, 34 insertions(+), 6 deletions(-)

diff --git a/common/utils/msc/msc.c b/common/utils/msc/msc.c
index 7de2a47f98..83f3beb512 100644
--- a/common/utils/msc/msc.c
+++ b/common/utils/msc/msc.c
@@ -99,6 +99,7 @@ void *msc_task(void *args_p)
         break;
 
         case TERMINATE_MESSAGE: {
+          fprintf(stderr, " *** Exiting MSC thread\n");
           timer_remove(timer_id);
     	  msc_end();
           itti_exit_task();
diff --git a/openair2/ENB_APP/enb_app.c b/openair2/ENB_APP/enb_app.c
index 4a5981f509..bada59ffec 100644
--- a/openair2/ENB_APP/enb_app.c
+++ b/openair2/ENB_APP/enb_app.c
@@ -361,6 +361,7 @@ void *eNB_app_task(void *args_p)
 
     switch (ITTI_MSG_ID(msg_p)) {
     case TERMINATE_MESSAGE:
+      LOG_W(TASK_ENB_APP, " *** Exiting ENB_APP thread\n");
       itti_exit_task ();
       break;
 
diff --git a/openair2/ENB_APP/flexran_agent.c b/openair2/ENB_APP/flexran_agent.c
index 23ac8f02ac..8af071527f 100644
--- a/openair2/ENB_APP/flexran_agent.c
+++ b/openair2/ENB_APP/flexran_agent.c
@@ -74,6 +74,7 @@ void *flexran_agent_task(void *args){
 
     switch (ITTI_MSG_ID(msg_p)) {
     case TERMINATE_MESSAGE:
+      LOG_W(FLEXRAN_AGENT, " *** Exiting FLEXRAN thread\n");
       itti_exit_task ();
       break;
 
diff --git a/openair2/RRC/LITE/rrc_UE.c b/openair2/RRC/LITE/rrc_UE.c
index 6798212fb2..7f0c3a8800 100644
--- a/openair2/RRC/LITE/rrc_UE.c
+++ b/openair2/RRC/LITE/rrc_UE.c
@@ -4286,6 +4286,7 @@ void *rrc_ue_task( void *args_p )
 
     switch (ITTI_MSG_ID(msg_p)) {
     case TERMINATE_MESSAGE:
+      LOG_W(RRC, " *** Exiting RRC thread\n");
       itti_exit_task ();
       break;
 
diff --git a/openair2/RRC/LITE/rrc_eNB.c b/openair2/RRC/LITE/rrc_eNB.c
index aaf12da175..c441c102e3 100644
--- a/openair2/RRC/LITE/rrc_eNB.c
+++ b/openair2/RRC/LITE/rrc_eNB.c
@@ -5621,6 +5621,7 @@ rrc_enb_task(
 
     switch (ITTI_MSG_ID(msg_p)) {
     case TERMINATE_MESSAGE:
+      LOG_W(RRC, " *** Exiting RRC thread\n");
       itti_exit_task();
       break;
 
diff --git a/openair2/X2AP/x2ap.c b/openair2/X2AP/x2ap.c
index 699ad5ddbf..6af71e5ca5 100644
--- a/openair2/X2AP/x2ap.c
+++ b/openair2/X2AP/x2ap.c
@@ -49,6 +49,7 @@ void *x2ap_task(void *arg)
 
     switch (ITTI_MSG_ID(received_msg)) {
     case TERMINATE_MESSAGE:
+      X2AP_WARN(" *** Exiting X2AP thread\n");
       itti_exit_task();
       break;
 
diff --git a/openair3/GTPV1-U/gtpv1u_eNB.c b/openair3/GTPV1-U/gtpv1u_eNB.c
index e273ac0712..d0a3bbd342 100644
--- a/openair3/GTPV1-U/gtpv1u_eNB.c
+++ b/openair3/GTPV1-U/gtpv1u_eNB.c
@@ -1132,6 +1132,7 @@ void *gtpv1u_eNB_task(void *args)
         hashtable_destroy (gtpv1u_data_g.teid_mapping);
       }
 
+      LOG_W(GTPU, " *** Exiting GTPU thread\n");
       itti_exit_task();
     }
     break;
diff --git a/openair3/GTPV1-U/gtpv1u_task.c b/openair3/GTPV1-U/gtpv1u_task.c
index f9397f21ca..bea003a655 100644
--- a/openair3/GTPV1-U/gtpv1u_task.c
+++ b/openair3/GTPV1-U/gtpv1u_task.c
@@ -423,6 +423,7 @@ static void *gtpv1u_thread(void *args)
     switch (ITTI_MSG_ID(received_message_p)) {
 
     case TERMINATE_MESSAGE: {
+      GTPU_WARN(" *** Exiting GTPU thread\n");
       itti_exit_task();
     }
     break;
diff --git a/openair3/S1AP/s1ap_eNB.c b/openair3/S1AP/s1ap_eNB.c
index 65b82055a3..b96d9103f4 100644
--- a/openair3/S1AP/s1ap_eNB.c
+++ b/openair3/S1AP/s1ap_eNB.c
@@ -310,6 +310,7 @@ void *s1ap_eNB_task(void *arg)
 
     switch (ITTI_MSG_ID(received_msg)) {
     case TERMINATE_MESSAGE:
+      S1AP_WARN(" *** Exiting S1AP thread\n");
       itti_exit_task();
       break;
 
diff --git a/openair3/SCTP/sctp_eNB_task.c b/openair3/SCTP/sctp_eNB_task.c
index 1f166af74c..758cbd5aa5 100644
--- a/openair3/SCTP/sctp_eNB_task.c
+++ b/openair3/SCTP/sctp_eNB_task.c
@@ -841,6 +841,7 @@ void *sctp_eNB_task(void *arg)
         break;
 
       case TERMINATE_MESSAGE:
+        SCTP_WARN("*** Exiting SCTP thread\n");
         itti_exit_task();
         break;
 
diff --git a/openair3/TEST/EPC_TEST/play_scenario_s1ap.c b/openair3/TEST/EPC_TEST/play_scenario_s1ap.c
index f1bbe393be..d2247f70a8 100644
--- a/openair3/TEST/EPC_TEST/play_scenario_s1ap.c
+++ b/openair3/TEST/EPC_TEST/play_scenario_s1ap.c
@@ -1089,6 +1089,7 @@ void *et_s1ap_eNB_task(void *arg)
 
     switch (ITTI_MSG_ID(received_msg)) {
     case TERMINATE_MESSAGE:
+      S1AP_WARN("*** Exiting S1AP thread\n");
       itti_exit_task();
       break;
 
diff --git a/openair3/UDP/udp_eNB_task.c b/openair3/UDP/udp_eNB_task.c
index b8b6b897a7..94c5612ec6 100644
--- a/openair3/UDP/udp_eNB_task.c
+++ b/openair3/UDP/udp_eNB_task.c
@@ -389,7 +389,7 @@ void *udp_eNB_task(void *args_p)
       break;
 
       case TERMINATE_MESSAGE: {
-        LOG_W(UDP_, "Received TERMINATE_MESSAGE\n");
+        LOG_W(UDP_, " *** Exiting UDP thread\n");
         itti_exit_task();
       }
       break;
diff --git a/targets/RT/USER/lte-enb.c b/targets/RT/USER/lte-enb.c
index 5cbe0fe1d4..2223855419 100644
--- a/targets/RT/USER/lte-enb.c
+++ b/targets/RT/USER/lte-enb.c
@@ -643,7 +643,9 @@ static void* eNB_thread_rxtx( void* param ) {
 
   VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME( VCD_SIGNAL_DUMPER_FUNCTIONS_eNB_PROC_RXTX0+(proc->subframe_rx&1), 0 );
 
-  printf( "Exiting eNB thread RXn_TXnp4\n");
+#ifdef DEBUG_THREADS
+  printf(" *** Exiting eNB thread RXn_TXnp4\n");
+#endif
 
   eNB_thread_rxtx_status = 0;
   return &eNB_thread_rxtx_status;
@@ -907,6 +909,10 @@ static void* eNB_thread_asynch_rxtx( void* param ) {
     
   }
 
+#ifdef DEBUG_THREADS
+  printf(" *** Exiting eNB asynch rxtx thread\n");
+#endif
+
   eNB_thread_asynch_rxtx_status=0;
   return(&eNB_thread_asynch_rxtx_status);
 }
@@ -1372,6 +1378,10 @@ void *eNB_thread_synch(void *arg) {
 
   lte_sync_time_free();
 
+#ifdef DEBUG_THREADS
+  printf(" *** Exiting eNB synch thread\n");
+#endif
+
   return NULL;
 }
 
@@ -1484,7 +1494,9 @@ static void* eNB_thread_FH( void* param ) {
       rt_sleep_ns(800000LL);
   }
     
-  printf( "Exiting FH thread \n");
+#ifdef DEBUG_THREADS
+  printf(" *** Exiting FH thread \n");
+#endif
  
   eNB_thread_FH_status = 0;
   return &eNB_thread_FH_status;
@@ -1518,7 +1530,9 @@ static void* eNB_thread_prach( void* param ) {
     if (release_thread(&proc->mutex_prach,&proc->instance_cnt_prach,"eNB_prach_thread") < 0) break;
   }
 
-  printf( "Exiting eNB thread PRACH\n");
+#ifdef DEBUG_THREADS
+  printf(" *** Exiting eNB thread PRACH\n");
+#endif
 
   eNB_thread_prach_status = 0;
   return &eNB_thread_prach_status;
@@ -1688,7 +1702,9 @@ static void* eNB_thread_single( void* param ) {
   }
   
 
-  printf( "Exiting eNB_single thread \n");
+#ifdef DEBUG_THREADS
+  printf(" *** Exiting eNB_single thread\n");
+#endif
  
   eNB_thread_single_status = 0;
   return &eNB_thread_single_status;
diff --git a/targets/RT/USER/lte-softmodem.c b/targets/RT/USER/lte-softmodem.c
index 042f77eea7..ed0dd20360 100644
--- a/targets/RT/USER/lte-softmodem.c
+++ b/targets/RT/USER/lte-softmodem.c
@@ -558,7 +558,7 @@ void *l2l1_task(void *arg) {
                 break;
 
             case TERMINATE_MESSAGE:
-                printf("received terminate message\n");
+                LOG_W(TASK_L2L1, " *** Exiting L2L1 thread\n");
                 oai_exit=1;
                 itti_exit_task ();
                 break;
@@ -579,6 +579,7 @@ void *l2l1_task(void *arg) {
 
         switch (ITTI_MSG_ID(message_p)) {
         case TERMINATE_MESSAGE:
+            LOG_W(TASK_L2L1, " *** Exiting L2L1 thread\n");
             oai_exit=1;
             itti_exit_task ();
             break;
-- 
GitLab