X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2F5gnrmac%2Fmac_ue_mgr.c;h=c6634bf7de14badd49c7e4b06d43b966a1efbfb7;hb=bdbb71a3b306ff795230159be2bb466016d8b843;hp=06953b45d0100913dcc87c5dd9aa960c3f851f0b;hpb=cb811f8127971006aa5c345c71cb737e8be8dc10;p=o-du%2Fl2.git diff --git a/src/5gnrmac/mac_ue_mgr.c b/src/5gnrmac/mac_ue_mgr.c index 06953b45d..c6634bf7d 100644 --- a/src/5gnrmac/mac_ue_mgr.c +++ b/src/5gnrmac/mac_ue_mgr.c @@ -2071,7 +2071,7 @@ void deleteMacRaCb(uint16_t cellIdx, MacUeCb *ueCb) for(tbIdx = 0; tbIdx < raCb->msg4HqInfo.numTb; tbIdx++) { MAC_FREE(raCb->msg4HqInfo.tbInfo[tbIdx].tb, \ - raCb->msg4HqInfo.tbInfo[tbIdx].tbSize); + raCb->msg4HqInfo.tbInfo[tbIdx].tbSize - TX_PAYLOAD_HDR_LEN); } memset(raCb, 0, sizeof(MacRaCbInfo)); } @@ -2708,10 +2708,10 @@ void deletePucchResourcesCfg(PucchResrcCfg *resrcCfg) * * @details * -* Function : MacProcSchUeCfgRsp +* Function : MacProcSchUeDeleteRsp * * Functionality: -* Processes UE create delete from scheduler +* Processes UE delete from scheduler * * @params[in] Pst : Post structure * schUeDelRsp : Scheduler UE delete respons @@ -2722,10 +2722,11 @@ void deletePucchResourcesCfg(PucchResrcCfg *resrcCfg) uint8_t MacProcSchUeDeleteRsp(Pst *pst, SchUeDeleteRsp *schUeDelRsp) { - uint8_t ueId =0, isCrntiValid = 0; + uint8_t ueId =0, isCrntiValid = 0, tbIdx =0, idx=0; uint16_t cellIdx=0; uint8_t ret = RFAILED; UeDeleteStatus result; + DlHarqEnt *dlHarqEnt; #ifdef CALL_FLOW_DEBUG_LOG DU_LOG("\nCall Flow: ENTSCH -> ENTMAC : EVENT_UE_DELETE_RSP_TO_MAC\n"); @@ -2764,6 +2765,18 @@ uint8_t MacProcSchUeDeleteRsp(Pst *pst, SchUeDeleteRsp *schUeDelRsp) MAC_FREE(macCb.macCell[cellIdx]->ueCb[ueId -1].dlInfo.lcCb[lcIdx].snssai, sizeof(Snssai)); } #endif + dlHarqEnt = &macCb.macCell[cellIdx]->ueCb[ueId -1].dlInfo.dlHarqEnt; + for(idx =0 ; idxharqProcCb[idx].numTb) + { + + MAC_FREE(dlHarqEnt->harqProcCb[idx].tbInfo[tbIdx].tb, dlHarqEnt->harqProcCb[idx].tbInfo[tbIdx].tbSize); + dlHarqEnt->harqProcCb[idx].numTb--; + tbIdx++; + } + } memset(&macCb.macCell[cellIdx]->ueCb[ueId -1], 0, sizeof(MacUeCb)); macCb.macCell[cellIdx]->numActvUe--; result = SUCCESS;