aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src/gprs
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2010-07-02 10:15:49 +0200
committerHarald Welte <laforge@gnumonks.org>2010-07-02 10:15:49 +0200
commit19f9e30eb9715a2b1289f7388e94712f62eb41d9 (patch)
tree3faf9acea005139e949d0362e65e86002f4bc6bf /openbsc/src/gprs
parentb37515e86b21ca4656447a9cc1874ef6748587bd (diff)
[SGSN] Only increment PDP CTX ACT count after check for retransmission
Diffstat (limited to 'openbsc/src/gprs')
-rw-r--r--openbsc/src/gprs/gprs_gmm.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/openbsc/src/gprs/gprs_gmm.c b/openbsc/src/gprs/gprs_gmm.c
index e6eb55826..ed84c1569 100644
--- a/openbsc/src/gprs/gprs_gmm.c
+++ b/openbsc/src/gprs/gprs_gmm.c
@@ -1107,8 +1107,6 @@ static int gsm48_rx_gsm_act_pdp_req(struct sgsn_mm_ctx *mmctx,
DEBUGP(DMM, "-> ACTIVATE PDP CONTEXT REQ: SAPI=%u NSAPI=%u ",
act_req->req_llc_sapi, act_req->req_nsapi);
- rate_ctr_inc(&mmctx->ctrg->ctr[GMM_CTR_PDP_CTX_ACT]);
-
req_qos_len = act_req->data[0];
req_qos = act_req->data + 1; /* 10.5.6.5 */
req_pdpa_len = act_req->data[1 + req_qos_len];
@@ -1183,6 +1181,10 @@ static int gsm48_rx_gsm_act_pdp_req(struct sgsn_mm_ctx *mmctx,
0, NULL);
}
+ /* Only increment counter for a real activation, after we checked
+ * for re-transmissions */
+ rate_ctr_inc(&mmctx->ctrg->ctr[GMM_CTR_PDP_CTX_ACT]);
+
#if 1
{
struct sgsn_ggsn_ctx *ggsn = sgsn_ggsn_ctx_by_id(0);