From 424c1b502a9d03de443cbb016dbd6a0e862eab3c Mon Sep 17 00:00:00 2001
From: Raymond Knopp <raymond.knopp@eurecom.fr>
Date: Sat, 14 Oct 2017 21:14:05 +0200
Subject: [PATCH] added deactivation of ULSCH harq process after 3rd
 retransmission. Avoids problem of accumulating failed RA processes.

---
 openair1/SCHED/phy_procedures_lte_eNb.c   | 10 ++++++----
 openair2/LAYER2/MAC/eNB_scheduler_ulsch.c |  2 +-
 2 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/openair1/SCHED/phy_procedures_lte_eNb.c b/openair1/SCHED/phy_procedures_lte_eNb.c
index a701ca8590c..d92b2dd8b78 100644
--- a/openair1/SCHED/phy_procedures_lte_eNb.c
+++ b/openair1/SCHED/phy_procedures_lte_eNb.c
@@ -1389,10 +1389,12 @@ void pusch_procedures(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc)
               ulsch->Mlimit,
               ulsch_harq->o_ACK[0],
               ulsch_harq->o_ACK[1]);
-
-        /*if (dB_fixed_times10(eNB->pusch_vars[i]->ulsch_power[0]) > 300) {
-          dump_ulsch(eNB,frame,subframe,i); exit(-1);
-          } */
+        if (ulsch_harq->round >= 3)  {
+           ulsch_harq->status  = SCH_IDLE;
+           ulsch_harq->handled = 0;
+           ulsch->harq_mask   &= ~(1 << harq_pid);
+           ulsch_harq->round   = 0;
+        } 
 #if defined(MESSAGE_CHART_GENERATOR_PHY)
         MSC_LOG_RX_DISCARDED_MESSAGE(
                                      MSC_PHY_ENB,MSC_PHY_UE,
diff --git a/openair2/LAYER2/MAC/eNB_scheduler_ulsch.c b/openair2/LAYER2/MAC/eNB_scheduler_ulsch.c
index 132e6d5f43b..1a54b74bb88 100644
--- a/openair2/LAYER2/MAC/eNB_scheduler_ulsch.c
+++ b/openair2/LAYER2/MAC/eNB_scheduler_ulsch.c
@@ -1032,7 +1032,7 @@ abort();
           }
 	  //tpc = 1;
 	  if (tpc!=1) {
-	    LOG_I(MAC,"[eNB %d] ULSCH scheduler: frame %d, subframe %d, harq_pid %d, tpc %d, accumulated %d, normalized/target rx power %d/%d\n",
+	    LOG_D(MAC,"[eNB %d] ULSCH scheduler: frame %d, subframe %d, harq_pid %d, tpc %d, accumulated %d, normalized/target rx power %d/%d\n",
 		  module_idP,frameP,subframeP,harq_pid,tpc,
 		  tpc_accumulated,normalized_rx_power,target_rx_power);
 	  }
-- 
GitLab