TLLI problems and proposed solution

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/OpenBSC@lists.osmocom.org/.

Holger Hans Peter Freyther holger at freyther.de
Mon Jul 29 20:53:18 UTC 2013


On Mon, Jul 29, 2013 at 10:12:12AM +0200, Holger Hans Peter Freyther wrote:

> If somebody at OHM or somewhere else could/want to apply this to their
> SGSN installation it would be greatly appreciated.

Hi,

I was doing a GPRS Attach and PDP Context Activation with one of the
sysmocom GSM modules and my E71. Without the patches applied the E71
fails to re-attach after a SGSN/PCU re-start with the same symptom
(all our identity requests are sent with N(U) = 0). If you don't mind
I will push these two changes to master.

I did this without a GGSN running and ran into the PDP Activcation
Timeout... and a warning/backtrace. The below should fix it but I don't
have time to verify that tonight.

<000f> sgsn_libgtp.c:265 Received CREATE PDP CTX CONF, cause=-1(unknown 0xffffffff)
<000f> sgsn_libgtp.c:269 Create PDP ctx req timed out
<000f> gprs_sgsn.c:259 freeing PDP context that still has a libgtp handle attached to it, this shouldn't happen!
backtrace() returned 11 addresses
/home/ich/install/openbsc/lib/libosmocore.so.4(osmo_generate_backtrace+0x16) [0xb72fba36]
./src/gprs/osmo-sgsn() [0x804d364]
./src/gprs/osmo-sgsn() [0x804f859]
/home/ich/install/openbsc/lib/libgtp.so.0(gtp_retrans+0x87) [0xb730de97]
./src/gprs/osmo-sgsn() [0x804f446]
/home/ich/install/openbsc/lib/libosmocore.so.4(osmo_timers_update+0xb1) [0xb72f7b91]
/home/ich/install/openbsc/lib/libosmocore.so.4(osmo_select_main+0x14b) [0xb72f7e8b]
./src/gprs/osmo-sgsn() [0x804a0d1]
/lib/i386-linux-gnu/i686/cmov/libc.so.6(__libc_start_main+0xf5) [0xb70af8f5]
./src/gprs/osmo-sgsn() [0x804a17d]



diff --git a/openbsc/src/gprs/sgsn_libgtp.c b/openbsc/src/gprs/sgsn_libgtp.c
index f2eb35d..bdab082 100644
--- a/openbsc/src/gprs/sgsn_libgtp.c
+++ b/openbsc/src/gprs/sgsn_libgtp.c
@@ -294,6 +294,9 @@ reject:
        pctx->state = PDP_STATE_NONE;
        if (pdp)
                pdp_freepdp(pdp);
+       OSMO_ASSERT(pdp == pctx->lib);
+       pctx->lib = NULL;
+
        /* Send PDP CTX ACT REJ to MS */
        rc = gsm48_tx_gsm_act_pdp_rej(pctx->mm, pctx->ti, reject_cause,
                                        0, NULL);






More information about the OpenBSC mailing list