Commit c6d30be9 authored by Vaibhav Shrivastava's avatar Vaibhav Shrivastava Committed by jperaldi

Changes for physicialConfigdedicated crash for 6.1.2.3 in VTP disable mode

parent 84b9097e
......@@ -116,7 +116,7 @@ void schedule_SRS(module_id_t module_idP,
if ((1 << tmp) & deltaTSFC) {
/* This is an SRS subframe, loop over UEs */
for (UE_id = 0; UE_id < MAX_MOBILES_PER_ENB; UE_id++) {
if (!UE_info->active[UE_id]) {
if (!UE_info->active[CC_id][UE_id]) {
continue;
}
......@@ -126,8 +126,8 @@ void schedule_SRS(module_id_t module_idP,
}
if(UE_info->UE_template[CC_id][UE_id].physicalConfigDedicated == NULL) {
LOG_E(MAC,"physicalConfigDedicated is null for UE %d\n",UE_id);
printf("physicalConfigDedicated is null for UE %d\n",UE_id);
LOG_E(MAC,"physicalConfigDedicated is null for UE %d, CC_id: %d\n",UE_id,CC_id);
printf("physicalConfigDedicated is null for UE %d, CC_id: %d \n",UE_id,CC_id);
return;
}
......@@ -204,7 +204,7 @@ void schedule_CSI(module_id_t module_idP,
cc = &eNB->common_channels[CC_id];
for (UE_id = 0; UE_id < MAX_MOBILES_PER_ENB; UE_id++) {
if (UE_info->active[UE_id] == FALSE) {
if (UE_info->active[CC_id][UE_id] == FALSE) {
continue;
}
......@@ -214,8 +214,8 @@ void schedule_CSI(module_id_t module_idP,
}
AssertFatal(UE_info->UE_template[CC_id][UE_id].physicalConfigDedicated != NULL,
"physicalConfigDedicated is null for UE %d\n",
UE_id);
"physicalConfigDedicated is null for UE %d, CC_id: %d\n",
UE_id,CC_id);
/*
* CDRX condition on Active Time and CSI report on PUCCH (36.321 5.7).
* Here we consider classic periodic reports on PUCCH without PUSCH simultaneous transmission condition.
......@@ -319,7 +319,7 @@ schedule_SR (module_id_t module_idP,
eNB->UL_req[CC_id].sfn_sf = (frameP << 4) + subframeP;
for (int UE_id = 0; UE_id < MAX_MOBILES_PER_ENB; UE_id++) {
if (!UE_info->active[UE_id]) {
if (!UE_info->active[CC_id][UE_id]) {
continue;
}
......@@ -626,7 +626,7 @@ eNB_dlsch_ulsch_scheduler(module_id_t module_idP,
/* Refresh UE list based on UEs dropped by PHY in previous subframe */
for (UE_id = 0; UE_id < MAX_MOBILES_PER_ENB; UE_id++) {
if (UE_info->active[UE_id]) {
if (UE_info->active[CC_id][UE_id]) {
rnti = UE_RNTI(module_idP, UE_id);
CC_id = UE_PCCID(module_idP, UE_id);
UE_scheduling_control = &(UE_info->UE_sched_ctrl[UE_id]);
......
......@@ -210,7 +210,7 @@ void dlsch_scheduler_pre_ue_select_fairRR(
DL_req = &eNB->DL_req[CC_id].dl_config_request_body;
for (UE_id = 0; UE_id < NUMBER_OF_UE_MAX; UE_id++) {
if (UE_info->active[UE_id] == FALSE) {
if (UE_info->active[CC_id][UE_id] == FALSE) {
continue;
}
......@@ -331,7 +331,7 @@ void dlsch_scheduler_pre_ue_select_fairRR(
break;
}
if (UE_info->active[UE_id] == FALSE) {
if (UE_info->active[CC_id][UE_id] == FALSE) {
continue;
}
......@@ -459,7 +459,7 @@ void dlsch_scheduler_pre_ue_select_fairRR(
break;
}
if (UE_info->active[UE_id] == FALSE) {
if (UE_info->active[CC_id][UE_id] == FALSE) {
continue;
}
......@@ -607,7 +607,7 @@ static void dlsch_scheduler_pre_processor_reset_fairRR(
if (rnti == NOT_A_RNTI)
continue;
if (UE_info->active[UE_id] != TRUE)
if (UE_info->active[CC_id][UE_id] != TRUE)
continue;
LOG_D(MAC, "Running preprocessor for UE %d (%x)\n", UE_id, rnti);
......@@ -755,7 +755,7 @@ static void assign_rbs_required_fairRR(
// clear rb allocations across all CC_id
for (UE_id = 0; UE_id < MAX_MOBILES_PER_ENB; UE_id++) {
if (UE_info->active[UE_id] != TRUE)
if (UE_info->active[CC_id][UE_id] != TRUE)
continue;
pCCid = UE_PCCID(Mod_id, UE_id);
......@@ -945,7 +945,7 @@ void dlsch_scheduler_pre_processor_fairRR (module_id_t Mod_id,
min_rb_unit[CC_id] = get_min_rb_unit(Mod_id, CC_id);
for (i = 0; i < NUMBER_OF_UE_MAX; i++) {
if (UE_info->active[i] != TRUE)
if (UE_info->active[CC_id][i] != TRUE)
continue;
UE_id = i;
......@@ -2241,7 +2241,7 @@ void ulsch_scheduler_pre_ue_select_fairRR(
// UE round >0
for ( UE_id = 0; UE_id < NUMBER_OF_UE_MAX; UE_id++ ) {
if (UE_info->active[UE_id] == FALSE)
if (UE_info->active[CC_id][UE_id] == FALSE)
continue;
rnti = UE_RNTI(module_idP,UE_id);
......@@ -2401,7 +2401,7 @@ void ulsch_scheduler_pre_ue_select_fairRR(
}
for ( UE_id = 0; UE_id < NUMBER_OF_UE_MAX; UE_id++ ) {
if (UE_info->active[UE_id] == FALSE)
if (UE_info->active[CC_id][UE_id] == FALSE)
continue;
rnti = UE_RNTI(module_idP,UE_id);
......
......@@ -1989,8 +1989,8 @@ find_UE_id(module_id_t mod_idP,
return -1;
for (UE_id = 0; UE_id < MAX_MOBILES_PER_ENB; UE_id++) {
if (UE_info->active[UE_id] == TRUE) {
int CC_id = UE_PCCID(mod_idP, UE_id);
int CC_id = UE_PCCID(mod_idP, UE_id);
if (UE_info->active[CC_id][UE_id] == TRUE) {
if (CC_id>=0 && CC_id<NFAPI_CC_MAX && UE_info->UE_template[CC_id][UE_id].rnti == rntiP) {
return UE_id;
}
......@@ -2187,7 +2187,7 @@ add_new_ue(module_id_t mod_idP,
UE_info->num_UEs);
for (i = 0; i < MAX_MOBILES_PER_ENB; i++) {
if (UE_info->active[i] == TRUE)
if (UE_info->active[cc_idP][i] == TRUE)
continue;
UE_id = i;
......@@ -2200,7 +2200,7 @@ add_new_ue(module_id_t mod_idP,
UE_info->ordered_CCids[0][UE_id] = cc_idP;
UE_info->ordered_ULCCids[0][UE_id] = cc_idP;
UE_info->num_UEs++;
UE_info->active[UE_id] = TRUE;
UE_info->active[cc_idP][UE_id] = TRUE;
add_ue_list(&UE_info->list, UE_id);
dump_ue_list(&UE_info->list);
pp_impl_param_t* dl = &RC.mac[mod_idP]->pre_processor_dl;
......@@ -2280,7 +2280,7 @@ rrc_mac_remove_ue(module_id_t mod_idP,
UE_id,
pCC_id,
rntiP);
UE_info->active[UE_id] = FALSE;
UE_info->active[pCC_id][UE_id] = FALSE;
UE_info->num_UEs--;
remove_ue_list(&UE_info->list, UE_id);
......
......@@ -1185,7 +1185,7 @@ typedef struct {
UE_sched_ctrl_t UE_sched_ctrl[MAX_MOBILES_PER_ENB];
UE_list_t list;
int num_UEs;
boolean_t active[MAX_MOBILES_PER_ENB];
boolean_t active[MAX_NUM_CCs][MAX_MOBILES_PER_ENB];
} UE_info_t;
/*! \brief deleting control information*/
......
......@@ -56,9 +56,9 @@ void *mac_stats_thread(void *param) {
AssertFatal(fd!=NULL,"Cannot open MAC_stats.log\n");
for (int UE_id = 0; UE_id < MAX_MOBILES_PER_ENB; UE_id++) {
if (UE_info->active[UE_id]) {
int CC_id = UE_PCCID(mac->Mod_id, UE_id);
if (UE_info->active[CC_id][UE_id]) {
int rnti = UE_RNTI(mac->Mod_id, UE_id);
int CC_id = UE_PCCID(mac->Mod_id, UE_id);
UE_sched_ctrl_t *UE_scheduling_control = &(UE_info->UE_sched_ctrl[UE_id]);
double total_bler;
......
......@@ -638,7 +638,7 @@ dlsch_scheduler_pre_processor(module_id_t Mod_id,
LOG_E(MAC, "UE %d has RNTI NOT_A_RNTI!\n", UE_id);
continue;
}
if (UE_info->active[UE_id] != TRUE) {
if (UE_info->active[CC_id][UE_id] != TRUE) {
LOG_E(MAC, "UE %d RNTI %x is NOT active!\n", UE_id, rnti);
continue;
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment