Commit ef22a539 authored by Xenofon Foukas's avatar Xenofon Foukas

Added more checks when applying dci decisions in the dataplane, to reduce RLC request misses

parent c2971d51
......@@ -181,6 +181,17 @@ void apply_ue_spec_scheduling_decisions(mid_t mod_id,
mod_id, frame, lcid, CC_id, rlc_size);
if (rlc_size > 0) {
rlc_status = mac_rlc_status_ind(mod_id,
rnti,
mod_id,
frame,
ENB_FLAG_YES,
MBMS_FLAG_NO,
lcid,
0);
if (rlc_status.bytes_in_buffer > 0) {
rlc_status = mac_rlc_status_ind(mod_id,
rnti,
mod_id,
......@@ -194,6 +205,8 @@ void apply_ue_spec_scheduling_decisions(mid_t mod_id,
LOG_D(MAC, "[TEST] RLC can give %d bytes for LCID %d during second call\n", rlc_status.bytes_in_buffer, lcid);
if (rlc_status.bytes_in_buffer > 0) {
sdu_lengths[i] += mac_rlc_data_req(mod_id,
rnti,
mod_id,
......@@ -218,6 +231,8 @@ void apply_ue_spec_scheduling_decisions(mid_t mod_id,
num_sdus++;
}
}
}
} // SDU creation end
......@@ -249,7 +264,7 @@ void apply_ue_spec_scheduling_decisions(mid_t mod_id,
ta_update = (ta_len > 0) ? ue_sched_ctl->ta_update : 0;
// If there is nothing to schedule, just leave
if ((sdu_length_total + ta_len) < 0) {
if ((sdu_length_total + ta_len) <= 0) {
return;
}
......
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