Pau Espin Pedrol has uploaded this change for review. ( 
https://gerrit.osmocom.org/10003


Change subject: sgsn: Fix T3395 firing forever
......................................................................

sgsn: Fix T3395 firing forever

Change-Id: Iacce3c66f61578ebee37abaa287f7e183f985c1c
---
M src/gprs/gprs_gmm.c
1 file changed, 4 insertions(+), 2 deletions(-)



  git pull ssh://gerrit.osmocom.org:29418/osmo-sgsn refs/changes/03/10003/1

diff --git a/src/gprs/gprs_gmm.c b/src/gprs/gprs_gmm.c
index ad56c60..59fcbad 100644
--- a/src/gprs/gprs_gmm.c
+++ b/src/gprs/gprs_gmm.c
@@ -2720,11 +2720,11 @@
 {
        struct sgsn_pdp_ctx *pdp = _pdp;

-       pdp->num_T_exp++;
+       unsigned int num_expired = pdp->num_T_exp + 1;

        switch (pdp->T) {
        case 3395:      /* waiting for PDP CTX DEACT ACK */
-               if (pdp->num_T_exp >= 4) {
+               if (num_expired >= 5) {
                        LOGPDPCTXP(LOGL_NOTICE, pdp, "T3395 expired >= 5 
times\n");
                        pdp->state = PDP_STATE_INACTIVE;
                        if (pdp->ggsn)
@@ -2734,6 +2734,8 @@
                        break;
                }
                gsm48_tx_gsm_deact_pdp_req(pdp, GSM_CAUSE_NET_FAIL, true);
+               /* num_T_exp is reset by above function */
+               pdp->num_T_exp = num_expired;
                break;
        default:
                LOGPDPCTXP(LOGL_ERROR, pdp, "timer expired in unknown mode 
%u\n",

--
To view, visit https://gerrit.osmocom.org/10003
To unsubscribe, or for help writing mail filters, visit 
https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-sgsn
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: Iacce3c66f61578ebee37abaa287f7e183f985c1c
Gerrit-Change-Number: 10003
Gerrit-PatchSet: 1
Gerrit-Owner: Pau Espin Pedrol <[email protected]>

Reply via email to