mirror of https://github.com/PentHertz/srsLTE.git
gtpu bugfix - call gtpu rem bearer when erab is removed
This commit is contained in:
parent
c5396155ad
commit
7c2e841eb4
|
@ -304,6 +304,8 @@ int bearer_cfg_handler::release_erab(uint8_t erab_id)
|
||||||
|
|
||||||
srsran::rem_rrc_obj_id(current_drbs, drb_id);
|
srsran::rem_rrc_obj_id(current_drbs, drb_id);
|
||||||
|
|
||||||
|
rem_gtpu_bearer(erab_id);
|
||||||
|
|
||||||
erabs.erase(it);
|
erabs.erase(it);
|
||||||
erab_info_list.erase(erab_id);
|
erab_info_list.erase(erab_id);
|
||||||
|
|
||||||
|
@ -312,8 +314,6 @@ int bearer_cfg_handler::release_erab(uint8_t erab_id)
|
||||||
|
|
||||||
void bearer_cfg_handler::release_erabs()
|
void bearer_cfg_handler::release_erabs()
|
||||||
{
|
{
|
||||||
// TODO: notify GTPU layer for each ERAB
|
|
||||||
erabs.clear();
|
|
||||||
while (not erabs.empty()) {
|
while (not erabs.empty()) {
|
||||||
release_erab(erabs.begin()->first);
|
release_erab(erabs.begin()->first);
|
||||||
}
|
}
|
||||||
|
@ -380,13 +380,7 @@ srsran::expected<uint32_t> bearer_cfg_handler::add_gtpu_bearer(uint32_t
|
||||||
|
|
||||||
void bearer_cfg_handler::rem_gtpu_bearer(uint32_t erab_id)
|
void bearer_cfg_handler::rem_gtpu_bearer(uint32_t erab_id)
|
||||||
{
|
{
|
||||||
auto it = erabs.find(erab_id);
|
|
||||||
if (it != erabs.end()) {
|
|
||||||
// Map e.g. E-RAB 5 to LCID 3 (==DRB1)
|
|
||||||
gtpu->rem_bearer(rnti, erab_id - 2);
|
gtpu->rem_bearer(rnti, erab_id - 2);
|
||||||
} else {
|
|
||||||
logger->error("Removing erab_id=%d to GTPU\n", erab_id);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void bearer_cfg_handler::fill_pending_nas_info(asn1::rrc::rrc_conn_recfg_r8_ies_s* msg)
|
void bearer_cfg_handler::fill_pending_nas_info(asn1::rrc::rrc_conn_recfg_r8_ies_s* msg)
|
||||||
|
|
Loading…
Reference in New Issue