diff --git a/lib/include/srslte/interfaces/ue_interfaces.h b/lib/include/srslte/interfaces/ue_interfaces.h index e8678e7f1..860bccb61 100644 --- a/lib/include/srslte/interfaces/ue_interfaces.h +++ b/lib/include/srslte/interfaces/ue_interfaces.h @@ -221,7 +221,7 @@ public: virtual void reestablish() = 0; virtual void reestablish(uint32_t lcid) = 0; virtual void reset() = 0; - virtual void write_sdu(uint32_t lcid, srslte::unique_byte_buffer_t sdu, bool blocking = false) = 0; + virtual void write_sdu(uint32_t lcid, srslte::unique_byte_buffer_t sdu, bool blocking) = 0; virtual void add_bearer(uint32_t lcid, srslte::pdcp_config_t cnfg) = 0; virtual void change_lcid(uint32_t old_lcid, uint32_t new_lcid) = 0; virtual void config_security(uint32_t lcid, diff --git a/lib/include/srslte/upper/pdcp.h b/lib/include/srslte/upper/pdcp.h index 13cedc0b3..3aa39e68b 100644 --- a/lib/include/srslte/upper/pdcp.h +++ b/lib/include/srslte/upper/pdcp.h @@ -44,7 +44,7 @@ public: void reestablish(); void reestablish(uint32_t lcid); void reset(); - void write_sdu(uint32_t lcid, unique_byte_buffer_t sdu, bool blocking = true); + void write_sdu(uint32_t lcid, unique_byte_buffer_t sdu, bool blocking); void write_sdu_mch(uint32_t lcid, unique_byte_buffer_t sdu); void add_bearer(uint32_t lcid, pdcp_config_t cnfg); void add_bearer_mrb(uint32_t lcid, pdcp_config_t cnfg); diff --git a/srsenb/src/stack/upper/pdcp.cc b/srsenb/src/stack/upper/pdcp.cc index 0361522aa..468168058 100644 --- a/srsenb/src/stack/upper/pdcp.cc +++ b/srsenb/src/stack/upper/pdcp.cc @@ -165,7 +165,8 @@ void pdcp::write_sdu(uint16_t rnti, uint32_t lcid, srslte::unique_byte_buffer_t pthread_rwlock_rdlock(&rwlock); if (users.count(rnti)) { if (rnti != SRSLTE_MRNTI) { - users[rnti].pdcp->write_sdu(lcid, std::move(sdu)); + // TODO: expose blocking mode as function param + users[rnti].pdcp->write_sdu(lcid, std::move(sdu), false); } else { users[rnti].pdcp->write_sdu_mch(lcid, std::move(sdu)); } diff --git a/srsue/src/stack/rrc/rrc.cc b/srsue/src/stack/rrc/rrc.cc index d178f40f5..d03806d0b 100644 --- a/srsue/src/stack/rrc/rrc.cc +++ b/srsue/src/stack/rrc/rrc.cc @@ -1716,7 +1716,7 @@ void rrc::send_ul_dcch_msg(uint32_t lcid, const asn1::rrc::ul_dcch_msg_s& msg) log_rrc_message(get_rb_name(lcid).c_str(), Tx, pdcp_buf.get(), msg, msg.msg.c1().type().to_string()); - pdcp->write_sdu(lcid, std::move(pdcp_buf)); + pdcp->write_sdu(lcid, std::move(pdcp_buf), true); } void rrc::write_sdu(srslte::unique_byte_buffer_t sdu)