diff options
author | Jacob Erlbeck <jerlbeck@sysmocom.de> | 2015-05-06 15:26:08 +0200 |
---|---|---|
committer | Jacob Erlbeck <jerlbeck@sysmocom.de> | 2015-05-06 15:26:08 +0200 |
commit | 6eeb7c7e74ed8cc1e23b19453012f43563055e12 (patch) | |
tree | 057c41684bdf6324bef672a883ec0401c73ad0a9 | |
parent | 6e4ccec6c4b69681e94e4d3b27ef022e4aab81a9 (diff) |
bssgp: Increment BSSGP flow control tag value
Currently the tag value in FLOW CONTROL BVC messages is always 1.
This commit changes the implementation to increment that value with
each of the FLOW CONTROL BVC messages that is sent to the SGSN.
Sponsored-by: On-Waves ehf
-rw-r--r-- | src/gprs_bssgp_pcu.cpp | 5 | ||||
-rw-r--r-- | src/gprs_bssgp_pcu.h | 1 |
2 files changed, 5 insertions, 1 deletions
diff --git a/src/gprs_bssgp_pcu.cpp b/src/gprs_bssgp_pcu.cpp index b0e17f0d..db271a5b 100644 --- a/src/gprs_bssgp_pcu.cpp +++ b/src/gprs_bssgp_pcu.cpp @@ -642,13 +642,16 @@ int gprs_bssgp_tx_fc_bvc(void) /* Avg queue delay monitoring */ avg_delay_ms = get_and_reset_avg_queue_delay(); + /* Update tag */ + the_pcu.fc_tag += 1; + LOGP(DBSSGP, LOGL_DEBUG, "Sending FLOW CONTROL BVC, Bmax = %d, R = %d, Bmax_MS = %d, " "R_MS = %d, avg_dly = %d\n", bucket_size, leak_rate, ms_bucket_size, ms_leak_rate, avg_delay_ms); - return bssgp_tx_fc_bvc(the_pcu.bctx, 1, + return bssgp_tx_fc_bvc(the_pcu.bctx, the_pcu.fc_tag, bucket_size, leak_rate, ms_bucket_size, ms_leak_rate, NULL, &avg_delay_ms); diff --git a/src/gprs_bssgp_pcu.h b/src/gprs_bssgp_pcu.h index aaaff7f9..32be7650 100644 --- a/src/gprs_bssgp_pcu.h +++ b/src/gprs_bssgp_pcu.h @@ -61,6 +61,7 @@ struct gprs_bssgp_pcu { /* Flow control */ struct timeval queue_delay_sum; unsigned queue_delay_count; + uint8_t fc_tag; /** callbacks below */ |