merge develop, make DNN, NSSAI configurable, fix infinite loop
This commit is contained in:
@@ -2004,7 +2004,7 @@ nr_ue_get_sdu(module_id_t module_idP, int CC_id, frame_t frameP,
|
||||
buflen, sdu_length_total,
|
||||
total_rlc_pdu_header_len, buflen_remain); // ,nr_ue_mac_inst->scheduling_info.BSR_bytes[nr_ue_mac_inst->scheduling_info.LCGID[lcid]]
|
||||
|
||||
while(buflen_remain > 0 && lcid_buffer_occupancy_new){
|
||||
while(buflen_remain > MAX_RLC_SDU_SUBHEADER_SIZE && lcid_buffer_occupancy_new){
|
||||
|
||||
sdu_lengths[num_sdus] = mac_rlc_data_req(module_idP,
|
||||
mac->crnti,
|
||||
@@ -2034,7 +2034,10 @@ nr_ue_get_sdu(module_id_t module_idP, int CC_id, frame_t frameP,
|
||||
}
|
||||
|
||||
/* Get updated BO after multiplexing this PDU */
|
||||
lcid_buffer_occupancy_new = mac_rlc_get_buffer_occupancy_ind(module_idP,mac->crnti,eNB_index,frameP, subframe, ENB_FLAG_NO, lcid);
|
||||
// we don't recompute it if the waiting queue is much larger than our buffer
|
||||
// because mac_rlc_get_buffer_occupancy_ind() cpu cost is high when waiting queu is large
|
||||
if ( lcid_buffer_occupancy_new < buflen_remain+1000)
|
||||
lcid_buffer_occupancy_new = mac_rlc_get_buffer_occupancy_ind(module_idP,mac->crnti,eNB_index,frameP, subframe, ENB_FLAG_NO, lcid);
|
||||
buflen_remain = buflen - (total_rlc_pdu_header_len + sdu_length_total + MAX_RLC_SDU_SUBHEADER_SIZE);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -263,7 +263,8 @@ mac_rlc_status_resp_t mac_rlc_status_ind(
|
||||
* reports '> 81338368' (table 6.1.3.1-2). Passing 100000000 is thus
|
||||
* more than enough.
|
||||
*/
|
||||
buf_stat = rb->buffer_status(rb, 100000000);
|
||||
// Fix me: temproary reduction meanwhile cpu cost of this computation is optimized
|
||||
buf_stat = rb->buffer_status(rb, 1000*1000);
|
||||
ret.bytes_in_buffer = buf_stat.status_size
|
||||
+ buf_stat.retx_size
|
||||
+ buf_stat.tx_size;
|
||||
@@ -326,7 +327,8 @@ rlc_buffer_occupancy_t mac_rlc_get_buffer_occupancy_ind(
|
||||
* more than enough.
|
||||
*/
|
||||
// Fixme : Laurent reduced size for CPU saving
|
||||
buf_stat = rb->buffer_status(rb, 10000000);
|
||||
// Fix me: temproary reduction meanwhile cpu cost of this computation is optimized
|
||||
buf_stat = rb->buffer_status(rb, 1000*1000);
|
||||
ret = buf_stat.status_size
|
||||
+ buf_stat.retx_size
|
||||
+ buf_stat.tx_size;
|
||||
|
||||
Reference in New Issue
Block a user