From 188befaa56cae16f47ef4d9d44b932c2abcba8c5 Mon Sep 17 00:00:00 2001 From: mmiozzo Date: Wed, 12 Dec 2012 14:00:23 +0100 Subject: [PATCH] Bug-fix in UpdateDlRlcBufferInfo of RR and PF schedulers: the 2 bytes of RLC overhead affects only new tx queue and not status and retx ones --- src/lte/model/pf-ff-mac-scheduler.cc | 2 +- src/lte/model/rr-ff-mac-scheduler.cc | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/lte/model/pf-ff-mac-scheduler.cc b/src/lte/model/pf-ff-mac-scheduler.cc index d3092098a..ca5f631ea 100644 --- a/src/lte/model/pf-ff-mac-scheduler.cc +++ b/src/lte/model/pf-ff-mac-scheduler.cc @@ -1961,7 +1961,6 @@ PfFfMacScheduler::RefreshUlCqiMaps (void) void PfFfMacScheduler::UpdateDlRlcBufferInfo (uint16_t rnti, uint8_t lcid, uint16_t size) { - size = size - 2; // remove the minimum RLC overhead std::map::iterator it; LteFlowId_t flow (rnti, lcid); it = m_rlcBufferReq.find (flow); @@ -1987,6 +1986,7 @@ PfFfMacScheduler::UpdateDlRlcBufferInfo (uint16_t rnti, uint8_t lcid, uint16_t s } else { + size -= 2; // remove minimun RLC overhead due to header (*it).second.m_rlcTransmissionQueueSize -= size; } } diff --git a/src/lte/model/rr-ff-mac-scheduler.cc b/src/lte/model/rr-ff-mac-scheduler.cc index abbba5883..879c9d58f 100644 --- a/src/lte/model/rr-ff-mac-scheduler.cc +++ b/src/lte/model/rr-ff-mac-scheduler.cc @@ -1752,7 +1752,6 @@ void RrFfMacScheduler::UpdateDlRlcBufferInfo (uint16_t rnti, uint8_t lcid, uint16_t size) { NS_LOG_FUNCTION (this); - size = size - 2; // remove the minimum RLC overhead std::list::iterator it; for (it = m_rlcBufferReq.begin (); it != m_rlcBufferReq.end (); it++) { @@ -1778,6 +1777,7 @@ RrFfMacScheduler::UpdateDlRlcBufferInfo (uint16_t rnti, uint8_t lcid, uint16_t s } else { + size -= 2; // remove minimun RLC overhead due to header (*it).m_rlcTransmissionQueueSize -= size; } }