LOG_D(MAC,"[%d][computing flags] common searching space: %d, num subframe: %d\n",mac_inst->current_subframe,i,extend_space[i]);
}
}
//USS trigger flag
for(i=0;i<mac_inst->num_uss_list;++i)
{
//printf("[eNB Computing falg] USS trigger time %d ss start time %d\n", ((abs_subframe+1)%mac_inst->UE_list_spec[i].NPDCCH_config_dedicated.T), mac_inst->UE_list_spec[i].NPDCCH_config_dedicated.ss_start_uss);
LOG_D(MAC,"--------------[%04d][SchedulerUSS] Schedule USS list %d------------\n",mac_inst->current_subframe,(scheduler_flags&(flag_uss_v<<i))>>3);
schedule_uss_NB_IoT(0,mac_inst,sf,f,h,i);
LOG_D(MAC,"--------------[%04d][SchedulerUSS] Schedule USS list %d end------------\n",mac_inst->current_subframe,(scheduler_flags&(flag_uss_v<<i))>>3);
if(0==Check_UL_resource(msg3_subframe+msg3_scheduling_delay_table[msg3_scheduling_delay]+1,Nru*rep,&npusch_info,1,0)){//1: multi-tones 0: single-tone. 1: format 2(ack/nack) 0: format 1
//msg3_subframe += (msg3_scheduling_delay<<2);
//printf("[MSG3][%x][HARQ]\t\tstart %3d, num %3d, end %3d\n", msg3_nodes->ue_rnti, msg3_subframe, npusch_info.sf_end-msg3_subframe, npusch_info.sf_end);
if(0==Check_UL_resource(msg3_subframe+msg3_scheduling_delay_table[msg3_scheduling_delay]+1,Nru*rep,&npusch_info,1,0)){//1: multi-tones 0: single-tone. 1: format 2(ack/nack) 0: format 1
LOG_D(MAC,"[%04d][ULSchedulerUSS][%d][Success] complete scheduling with data size %d\n",mac_inst->current_subframe,UE_info->rnti,UE_info->ul_total_buffer);
LOG_D(MAC,"[maintain_available_resource]=====t:%d=====dl resource list next is NULL %d\n",mac_inst->current_subframe,available_resource_DL->end_subframe);
LOG_D(MAC,"[maintain_available_resource]=====t:%d=====dl resource list remove next:%d-%d\n",mac_inst->current_subframe,available_resource_DL->next->start_subframe,available_resource_DL->next->end_subframe);