From 088b1d5a8d78f573e5584338924adb4b8efec772 Mon Sep 17 00:00:00 2001
From: Robert Schmidt <robert.schmidt@eurecom.fr>
Date: Thu, 17 May 2018 10:47:10 +0200
Subject: [PATCH] refine MAC Debug output

- uncomment "Couldn't find RNTI for UE X" in UE_RNTI() and rb_alloc in
  pre_processor_reset() as they only inflate the debug output with little
  benefited
- "doing ue_schedule_spec" is now displayed for individual UEs (and individual
  CCs)
- show messages when not scheduling UE in ue_schedule_spec() due to invalid
  slice or if not in RRC_CONNECTED
---
 openair2/LAYER2/MAC/eNB_scheduler_dlsch.c      | 12 ++++++++++--
 openair2/LAYER2/MAC/eNB_scheduler_primitives.c |  2 +-
 openair2/LAYER2/MAC/pre_processor.c            |  4 ++--
 3 files changed, 13 insertions(+), 5 deletions(-)

diff --git a/openair2/LAYER2/MAC/eNB_scheduler_dlsch.c b/openair2/LAYER2/MAC/eNB_scheduler_dlsch.c
index 350a7ea9f7..bc929b7534 100644
--- a/openair2/LAYER2/MAC/eNB_scheduler_dlsch.c
+++ b/openair2/LAYER2/MAC/eNB_scheduler_dlsch.c
@@ -758,6 +758,7 @@ schedule_ue_spec(module_id_t module_idP, int slice_idxP,
       continue;
 
     for (UE_id = UE_list->head; UE_id >= 0; UE_id = UE_list->next[UE_id]) {
+      LOG_D(MAC, "doing schedule_ue_spec for CC_id %d UE %d\n", CC_id, UE_id);
       continue_flag = 0; // reset the flag to allow allocation for the remaining UEs
       rnti = UE_RNTI(module_idP, UE_id);
       eNB_UE_stats = &UE_list->eNB_UE_stats[CC_id][UE_id];
@@ -773,8 +774,13 @@ schedule_ue_spec(module_id_t module_idP, int slice_idxP,
         continue_flag = 1;
       }
 
-      if (!ue_dl_slice_membership(module_idP, UE_id, slice_idxP))
+      if (!ue_dl_slice_membership(module_idP, UE_id, slice_idxP)) {
+        LOG_D(MAC, "UE%d is not part of slice %d ID %d\n",
+              UE_id, slice_idxP, RC.mac[module_idP]->slice_info.dl[slice_idxP].id);
+        /* prevent execution of add_ue_dlsch_info(), it is done by the other
+         * slice */
         continue;
+      }
 
       if (continue_flag != 1) {
         switch (get_tmode(module_idP, CC_id, UE_id)) {
@@ -832,8 +838,10 @@ schedule_ue_spec(module_id_t module_idP, int slice_idxP,
       UE_list->eNB_UE_stats[CC_id][UE_id].harq_pid = harq_pid;
       UE_list->eNB_UE_stats[CC_id][UE_id].harq_round = round;
 
-      if (UE_list->eNB_UE_stats[CC_id][UE_id].rrc_status < RRC_CONNECTED)
+      if (UE_list->eNB_UE_stats[CC_id][UE_id].rrc_status < RRC_CONNECTED) {
+        LOG_D(MAC, "UE %d is not in RRC_CONNECTED\n", UE_id);
         continue;
+      }
 
       header_length_total = 0;
       sdu_length_total = 0;
diff --git a/openair2/LAYER2/MAC/eNB_scheduler_primitives.c b/openair2/LAYER2/MAC/eNB_scheduler_primitives.c
index 6bdb63a721..57cc7f5370 100644
--- a/openair2/LAYER2/MAC/eNB_scheduler_primitives.c
+++ b/openair2/LAYER2/MAC/eNB_scheduler_primitives.c
@@ -1851,7 +1851,7 @@ rnti_t UE_RNTI(module_id_t mod_idP, int ue_idP)
     return (rnti);
   }
 
-  LOG_D(MAC, "[eNB %d] Couldn't find RNTI for UE %d\n", mod_idP, ue_idP);
+  //LOG_D(MAC, "[eNB %d] Couldn't find RNTI for UE %d\n", mod_idP, ue_idP);
   //display_backtrace();
   return (NOT_A_RNTI);
 }
diff --git a/openair2/LAYER2/MAC/pre_processor.c b/openair2/LAYER2/MAC/pre_processor.c
index 05d5845058..a2c88674c8 100644
--- a/openair2/LAYER2/MAC/pre_processor.c
+++ b/openair2/LAYER2/MAC/pre_processor.c
@@ -1601,8 +1601,8 @@ dlsch_scheduler_pre_processor_reset(module_id_t module_idP,
           break;
         }
       }
-      LOG_D(MAC, "Frame %d Subframe %d CC_id %d RBG %i : rb_alloc %d\n",
-            frameP, subframeP, CC_id, i, rballoc_sub[CC_id][i]);
+      //LOG_D(MAC, "Frame %d Subframe %d CC_id %d RBG %i : rb_alloc %d\n",
+            //frameP, subframeP, CC_id, i, rballoc_sub[CC_id][i]);
       MIMO_mode_indicator[CC_id][i] = 2;
     }
   }
-- 
GitLab