diff --git a/openair1/SCHED/phy_procedures_lte_eNb.c b/openair1/SCHED/phy_procedures_lte_eNb.c
index 1251463ef4b0f7a84be8e5a2932f044e8b451467..45ebc0b0787d5fea7ced6ee62fa365fd1a14dc6c 100644
--- a/openair1/SCHED/phy_procedures_lte_eNb.c
+++ b/openair1/SCHED/phy_procedures_lte_eNb.c
@@ -1447,9 +1447,10 @@ void pusch_procedures(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc)
 	fill_ulsch_cqi_indication(eNB,frame,subframe,
 				  ulsch_harq,
 				  ulsch->rnti);
-	        RC.mac[eNB->Mod_id]->UE_list.UE_sched_ctrl[i].cqi_req_flag = 0;
+	        RC.mac[eNB->Mod_id]->UE_list.UE_sched_ctrl[i].cqi_req_flag &= (~(1 << subframe));
       }else{
-          if(RC.mac[eNB->Mod_id]->UE_list.UE_sched_ctrl[i].cqi_req_flag==1){
+          if(RC.mac[eNB->Mod_id]->UE_list.UE_sched_ctrl[i].cqi_req_flag & (1 << subframe) ){
+              RC.mac[eNB->Mod_id]->UE_list.UE_sched_ctrl[i].cqi_req_flag &= (~(1 << subframe));
               RC.mac[eNB->Mod_id]->UE_list.UE_sched_ctrl[i].cqi_req_timer=30;
               LOG_D(PHY,"RM804 Frame %d,Subframe %d, We're supposed to get a cqi here. Set cqi_req_timer to 30.\n",frame,subframe);
           }
diff --git a/openair2/LAYER2/MAC/eNB_scheduler_ulsch.c b/openair2/LAYER2/MAC/eNB_scheduler_ulsch.c
index 0f7572a8633c448f313540f830bce74eb4890df5..1eb3070c0f039fe962206610d22e02aeb2589891 100644
--- a/openair2/LAYER2/MAC/eNB_scheduler_ulsch.c
+++ b/openair2/LAYER2/MAC/eNB_scheduler_ulsch.c
@@ -1324,6 +1324,7 @@ schedule_ulsch_rnti(module_id_t module_idP,
                       cqi_req = 0;
                     } else {
                       cqi_req = 1;
+                      UE_sched_ctrl->cqi_req_flag |= 1 << sched_subframeP;
                     }
 		    UE_sched_ctrl->cqi_req_timer = 0;
 		} else
@@ -1857,7 +1858,7 @@ void schedule_ulsch_rnti(module_id_t   module_idP,
       else if (UE_sched_ctrl->cqi_req_timer>30) {
         cqi_req = 1;
         UE_sched_ctrl->cqi_req_timer=0;
-        UE_sched_ctrl->cqi_req_flag=1;
+        UE_sched_ctrl->cqi_req_flag |= 1 << sched_subframeP;
       }
       else
         cqi_req = 0;