diff --git a/nfapi/open-nFAPI/vnf/src/vnf_p7.c b/nfapi/open-nFAPI/vnf/src/vnf_p7.c index cc887ad9ed853c1b56f20b508aa7c8a74464dfc6..b323fd89362ce7042e0ae80e56a3453b2cc2bf7a 100644 --- a/nfapi/open-nFAPI/vnf/src/vnf_p7.c +++ b/nfapi/open-nFAPI/vnf/src/vnf_p7.c @@ -2528,6 +2528,7 @@ int vnf_nr_p7_read_dispatch_message(vnf_p7_t* vnf_p7) if(recvfrom_result > 0) { vnf_nr_handle_p7_message(vnf_p7->rx_message_buffer, recvfrom_result, vnf_p7); + recvfrom_result = -1; } else { diff --git a/openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_uci.c b/openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_uci.c index 9cb06bdd2189c6ed22155030252a0613b7e65ff2..7a329000819aaf4d854ee1e3d2dee5fef649f359 100644 --- a/openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_uci.c +++ b/openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_uci.c @@ -1285,6 +1285,10 @@ int nr_acknack_scheduling(int mod_id, // advance ul_slot if it is not reachable by UE pucch->ul_slot = max(pucch->ul_slot, slot + pdsch_to_harq_feedback[0]); + if (pucch->ul_slot > 19) { + pucch->ul_slot = pucch->ul_slot % 20; + pucch->frame = (pucch->frame + 1) % 1024; + } // Find the right timing_indicator value. int i = 0;