From ca529f96fc2fa5c16342b222a1584772a94cfe13 Mon Sep 17 00:00:00 2001 From: Ismael Gomez Date: Wed, 6 Jun 2018 20:22:17 -0700 Subject: [PATCH] Consider UL activity only when RLC PDU is present --- srsenb/src/mac/mac.cc | 6 +----- srsenb/src/mac/ue.cc | 6 ++++++ 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/srsenb/src/mac/mac.cc b/srsenb/src/mac/mac.cc index 38c6ac43a..98139f735 100644 --- a/srsenb/src/mac/mac.cc +++ b/srsenb/src/mac/mac.cc @@ -294,7 +294,7 @@ int mac::ack_info(uint32_t tti, uint16_t rnti, uint32_t tb_idx, bool ack) if (ack) { if (nof_bytes > 64) { // do not count RLC status messages only rrc_h->set_activity_user(rnti); - log_h->debug("DL activity rnti=0x%x, n_bytes=%d\n", rnti, nof_bytes); + log_h->info("DL activity rnti=0x%x, n_bytes=%d\n", rnti, nof_bytes); } } return 0; @@ -313,10 +313,6 @@ int mac::crc_info(uint32_t tti, uint16_t rnti, uint32_t nof_bytes, bool crc) if (crc) { ue_db[rnti]->push_pdu(tti, nof_bytes); pdu_process_thread.notify(); - if (nof_bytes > 64) { // do not count RLC status messages only - rrc_h->set_activity_user(rnti); - log_h->debug("UL activity rnti=0x%x, n_bytes=%d\n", rnti, nof_bytes); - } } else { ue_db[rnti]->deallocate_pdu(tti); } diff --git a/srsenb/src/mac/ue.cc b/srsenb/src/mac/ue.cc index 697bc8b8d..f81331479 100644 --- a/srsenb/src/mac/ue.cc +++ b/srsenb/src/mac/ue.cc @@ -192,6 +192,12 @@ void ue::process_pdu(uint8_t* pdu, uint32_t nof_bytes, srslte::pdu_queue::channe // Indicate scheduler to update BSR counters sched->ul_recv_len(rnti, mac_msg_ul.get()->get_sdu_lcid(), mac_msg_ul.get()->get_payload_size()); + // Indicate RRC about successful activity if valid RLC message is received + if (mac_msg_ul.get()->get_payload_size() > 64) { // do not count RLC status messages only + rrc->set_activity_user(rnti); + log_h->info("UL activity rnti=0x%x, n_bytes=%d\n", rnti, nof_bytes); + } + if ((int) mac_msg_ul.get()->get_payload_size() > most_data) { most_data = (int) mac_msg_ul.get()->get_payload_size(); lcid_most_data = mac_msg_ul.get()->get_sdu_lcid();