Find a file
Sukchan Lee ae7a88a957 smf: skip non-operational EPC sessions on UPF failure
PR #4863 adds Delete Bearer Request handling to release EPC sessions
when their UPF becomes unavailable, addressing the stale-session
problem reported in issue #4860.

However, reselect_upf() iterates over all sessions associated with the
failed UPF, including sessions that have not completed establishment.

For example, a Create Session Request rejected because UE IP allocation
fails can leave a session in the initial state with pfcp_node set but
an empty bearer list. A subsequent heartbeat timeout then reaches the
new ogs_assert(linked_bearer), causing the SMF to abort.

Restrict the EPC release handling to smf_gsm_state_operational before
looking up the default bearer. This excludes failed initial sessions
and avoids sending Delete Bearer Request for sessions still being
established or already being released.

The operational state is also the state that handles Delete Bearer
Response and continues the session release procedure.

Related PR: https://github.com/open5gs/open5gs/pull/4863
Related issue: https://github.com/open5gs/open5gs/issues/4860
2026-10-15 08:59:46 +09:00
.github [CI] Re-enable macOS job and fix usrsctp PPID 2026-09-29 21:53:35 +09:00
configs eir: support EIR roaming with shared equipment fixtures 2026-10-09 14:35:46 +09:00
debian [MME/EIR] Address S13 review comments 2026-09-23 11:55:14 +02:00
docker [mme] Follow-up #4693: harden DNS-based gateway selection 2026-07-21 16:44:07 +09:00
docs eir: support EIR roaming with shared equipment fixtures 2026-10-09 14:35:46 +09:00
lib gtp: check the extension header length octet before reading it 2026-10-15 07:39:00 +09:00
misc [EIR] Serve S13 alongside N5g-eir 2026-09-21 14:09:21 +02:00
src smf: skip non-operational EPC sessions on UPF failure 2026-10-15 08:59:46 +09:00
subprojects Tested on FreeBSD-14.1-STABLE (#3350) 2024-08-03 21:45:52 +09:00
tests tests: scope expected error log suppression to individual checks 2026-10-14 13:39:06 +09:00
vagrant Tested on FreeBSD-14.1-STABLE (#3350) 2024-08-03 21:45:52 +09:00
webui [WebUI] Restrict .env permissions for generated secrets 2026-10-13 16:11:55 +09:00
.clang-tidy [MISC] Add support for static code analysis 2022-07-01 21:38:47 +09:00
.dockerignore [build] Use local sources to build applications (#1583) 2022-06-19 18:18:09 +09:00
.editorconfig editorconfig: new file (#2746) 2023-11-27 22:21:35 +09:00
.gitignore .gitignore: Add subprojects/.wraplock 2026-09-10 15:38:12 +09:00
LICENSE Change LICENSE to GNU AGPL v3.0 2017-12-18 10:35:54 +09:00
meson.build Release v2.8.0 2026-06-20 12:38:31 +09:00
meson_options.txt [Fuzzing] oss-fuzz support for fuzzing (#2283) 2023-05-05 17:20:11 +09:00
README.md nrf: Fix serving PLMN counter reset on NF register 2026-02-04 20:51:29 +09:00

Open5GS logo

Getting Started

Please follow the documentation at open5gs.org!

Sponsors

If you find Open5GS useful for work, please consider supporting this Open Source project by Becoming a sponsor. To manage the funding transactions transparently, you can donate through OpenCollective.

sponsors

Community

  • Problem with Open5GS can be filed as issues in this repository.
  • Other topics related to this project are happening on the discussions.
  • Voice and text chat are available in Open5GS's Discord workspace. Use this link to get started.

Contributing

If you're contributing through a pull request to Open5GS project on GitHub, please read the Contributor License Agreement in advance.

License

Support

Technical support and customized services for Open5GS are provided by NewPlane at support@newplane.io.