Finished to add boiler plate code to support PDCP discard notifications to RLC.

master
Pedro Alvarez 5 years ago committed by Andre Puschmann
parent 2e7ddef038
commit a049ec6b82

@ -172,7 +172,7 @@ void pdcp::user_interface_rlc::write_sdu(uint32_t lcid, srslte::unique_byte_buff
void pdcp::user_interface_rlc::discard_sdu(uint32_t lcid, uint32_t discard_sn) void pdcp::user_interface_rlc::discard_sdu(uint32_t lcid, uint32_t discard_sn)
{ {
rlc->discard_sdu(lcid, discard_sn); rlc->discard_sdu(rnti, lcid, discard_sn);
} }
bool pdcp::user_interface_rlc::rb_is_um(uint32_t lcid) bool pdcp::user_interface_rlc::rb_is_um(uint32_t lcid)

@ -205,12 +205,11 @@ void rlc::discard_sdu(uint16_t rnti, uint32_t lcid, uint32_t discard_sn)
pthread_rwlock_rdlock(&rwlock); pthread_rwlock_rdlock(&rwlock);
if (users.count(rnti)) { if (users.count(rnti)) {
users[rnti].rlc->discard_sdu(lcid, discard_sn); users[rnti].rlc->discard_sdu(lcid, discard_sn);
tx_queue = users[rnti].rlc->get_buffer_state(lcid); tx_queue = users[rnti].rlc->get_buffer_state(lcid);
}
// In the eNodeB, there is no polling for buffer state from the scheduler, thus // In the eNodeB, there is no polling for buffer state from the scheduler, thus
// communicate buffer state every time a new SDU is discarded // communicate buffer state every time a new SDU is discarded
uint32_t retx_queue = 0; uint32_t retx_queue = 0;
mac->rlc_buffer_state(rnti, lcid, tx_queue, retx_queue); mac->rlc_buffer_state(rnti, lcid, tx_queue, retx_queue);
log_h->info("Buffer state: rnti=0x%x, lcid=%d, tx_queue=%d\n", rnti, lcid, tx_queue); log_h->info("Buffer state: rnti=0x%x, lcid=%d, tx_queue=%d\n", rnti, lcid, tx_queue);

Loading…
Cancel
Save