aboutsummaryrefslogtreecommitdiffstats
path: root/src/tbf.cpp
diff options
context:
space:
mode:
authorJacob Erlbeck <jerlbeck@sysmocom.de>2016-01-22 17:25:38 +0100
committerJacob Erlbeck <jerlbeck@sysmocom.de>2016-02-08 00:45:37 +0100
commit5a3c84d0fd41a2477463e6f1df108b5b4369a434 (patch)
treecb7c8ed26e38a2b2a204876533309c61ea5c734e /src/tbf.cpp
parent5f93f855a77928bb77f47f104e6e3ff0bfac74d1 (diff)
sched: Pass the current TS to the control create functions
Currently the checks in that function are based on the different internal TS values of a TBF. It is assumed that they match the TS that the current RTS refers to. This commit adds a TS parameter to create_ul_ass, create_dl_ass, and create_ul_ack to make this more explicit. Sponsored-by: On-Waves ehf
Diffstat (limited to 'src/tbf.cpp')
-rw-r--r--src/tbf.cpp14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/tbf.cpp b/src/tbf.cpp
index 80183474..f73f1e07 100644
--- a/src/tbf.cpp
+++ b/src/tbf.cpp
@@ -855,16 +855,16 @@ int gprs_rlcmac_tbf::rlcmac_diag()
return 0;
}
-struct msgb *gprs_rlcmac_tbf::create_dl_ass(uint32_t fn)
+struct msgb *gprs_rlcmac_tbf::create_dl_ass(uint32_t fn, uint8_t ts)
{
struct msgb *msg;
struct gprs_rlcmac_dl_tbf *new_dl_tbf = NULL;
int poll_ass_dl = 1;
- if (direction == GPRS_RLCMAC_DL_TBF && control_ts != first_common_ts) {
+ if (direction == GPRS_RLCMAC_DL_TBF && ts != first_common_ts) {
LOGP(DRLCMAC, LOGL_NOTICE, "Cannot poll for downlink "
- "assigment, because MS cannot reply. (control TS=%d, "
- "first common TS=%d)\n", control_ts,
+ "assigment, because MS cannot reply. (TS=%d, "
+ "first common TS=%d)\n", ts,
first_common_ts);
poll_ass_dl = 0;
}
@@ -875,7 +875,7 @@ struct msgb *gprs_rlcmac_tbf::create_dl_ass(uint32_t fn)
"assignment...\n", tbf_name(this));
return NULL;
}
- if (bts->sba()->find(trx->trx_no, control_ts, (fn + 13) % 2715648)) {
+ if (bts->sba()->find(trx->trx_no, ts, (fn + 13) % 2715648)) {
LOGP(DRLCMACUL, LOGL_DEBUG, "Polling is already "
"scheduled for single block allocation...\n");
return NULL;
@@ -951,7 +951,7 @@ struct msgb *gprs_rlcmac_tbf::create_dl_ass(uint32_t fn)
return msg;
}
-struct msgb *gprs_rlcmac_tbf::create_ul_ass(uint32_t fn)
+struct msgb *gprs_rlcmac_tbf::create_ul_ass(uint32_t fn, uint8_t ts)
{
struct msgb *msg;
struct gprs_rlcmac_ul_tbf *new_tbf = NULL;
@@ -962,7 +962,7 @@ struct msgb *gprs_rlcmac_tbf::create_ul_ass(uint32_t fn)
"assignment...\n", tbf_name(this));
return NULL;
}
- if (bts->sba()->find(trx->trx_no, control_ts, (fn + 13) % 2715648)) {
+ if (bts->sba()->find(trx->trx_no, ts, (fn + 13) % 2715648)) {
LOGP(DRLCMACUL, LOGL_DEBUG, "Polling is already scheduled for "
"single block allocation...\n");
return NULL;