aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/bts.cpp9
-rw-r--r--src/bts.h3
-rw-r--r--src/gprs_rlcmac.h6
-rw-r--r--src/gprs_rlcmac_ts_alloc.cpp43
-rw-r--r--src/tbf.cpp48
-rw-r--r--src/tbf.h5
-rw-r--r--src/tbf_dl.cpp17
-rw-r--r--tests/alloc/AllocTest.cpp92
-rw-r--r--tests/alloc/AllocTest.err19
-rw-r--r--tests/tbf/TbfTest.cpp6
-rw-r--r--tests/tbf/TbfTest.err308
11 files changed, 319 insertions, 237 deletions
diff --git a/src/bts.cpp b/src/bts.cpp
index bd1e025e..712954ea 100644
--- a/src/bts.cpp
+++ b/src/bts.cpp
@@ -392,7 +392,6 @@ int BTS::rcv_rach(uint8_t ra, uint32_t Fn, int16_t qta)
{
struct gprs_rlcmac_ul_tbf *tbf = NULL;
uint8_t trx_no, ts_no = 0;
- int8_t tfi; /* must be signed */
uint8_t sb = 0;
uint32_t sb_fn = 0;
int rc;
@@ -429,14 +428,8 @@ int BTS::rcv_rach(uint8_t ra, uint32_t Fn, int16_t qta)
} else {
// Create new TBF
#warning "Copy and pate with other routines.."
- tfi = tfi_find_free(GPRS_RLCMAC_UL_TBF, &trx_no, -1);
- if (tfi < 0) {
- LOGP(DRLCMAC, LOGL_NOTICE, "No PDCH resource\n");
- /* FIXME: send reject */
- return -EBUSY;
- }
/* set class to 0, since we don't know the multislot class yet */
- tbf = tbf_alloc_ul_tbf(&m_bts, NULL, tfi, trx_no, 0, 1);
+ tbf = tbf_alloc_ul_tbf(&m_bts, NULL, -1, 0, 1);
if (!tbf) {
LOGP(DRLCMAC, LOGL_NOTICE, "No PDCH resource\n");
/* FIXME: send reject */
diff --git a/src/bts.h b/src/bts.h
index b0e88f59..8784f4d5 100644
--- a/src/bts.h
+++ b/src/bts.h
@@ -162,7 +162,8 @@ struct gprs_rlcmac_bts {
struct gprs_rlcmac_trx trx[8];
int (*alloc_algorithm)(struct gprs_rlcmac_bts *bts,
struct GprsMs *ms,
- struct gprs_rlcmac_tbf *tbf, uint32_t cust, uint8_t single);
+ struct gprs_rlcmac_tbf *tbf, uint32_t cust, uint8_t single,
+ int use_tbf);
uint32_t alloc_algorithm_curst; /* options to customize algorithm */
uint8_t force_two_phase;
uint8_t alpha, gamma;
diff --git a/src/gprs_rlcmac.h b/src/gprs_rlcmac.h
index dab3338f..3fc95e69 100644
--- a/src/gprs_rlcmac.h
+++ b/src/gprs_rlcmac.h
@@ -97,11 +97,13 @@ extern "C" {
#endif
int alloc_algorithm_a(struct gprs_rlcmac_bts *bts,
struct GprsMs *ms,
- struct gprs_rlcmac_tbf *tbf, uint32_t cust, uint8_t single);
+ struct gprs_rlcmac_tbf *tbf, uint32_t cust, uint8_t single,
+ int use_trx);
int alloc_algorithm_b(struct gprs_rlcmac_bts *bts,
struct GprsMs *ms,
- struct gprs_rlcmac_tbf *tbf, uint32_t cust, uint8_t single);
+ struct gprs_rlcmac_tbf *tbf, uint32_t cust, uint8_t single,
+ int use_trx);
#ifdef __cplusplus
}
#endif
diff --git a/src/gprs_rlcmac_ts_alloc.cpp b/src/gprs_rlcmac_ts_alloc.cpp
index ec228d1a..33814365 100644
--- a/src/gprs_rlcmac_ts_alloc.cpp
+++ b/src/gprs_rlcmac_ts_alloc.cpp
@@ -277,6 +277,24 @@ static void assign_dlink_tbf(
attach_tbf_to_pdch(pdch, tbf);
}
+static int tfi_find_free(BTS *bts, GprsMs *ms, enum gprs_rlcmac_tbf_direction dir,
+ int use_trx, int *trx_no_)
+{
+ int tfi;
+ uint8_t trx_no;
+
+ if (use_trx == -1 && ms->current_trx())
+ use_trx = ms->current_trx()->trx_no;
+
+ tfi = bts->tfi_find_free(dir, &trx_no, use_trx);
+ if (tfi < 0)
+ return -EBUSY;
+
+ if (trx_no_)
+ *trx_no_ = trx_no;
+
+ return tfi;
+}
/* Slot Allocation: Algorithm A
*
@@ -284,11 +302,14 @@ static void assign_dlink_tbf(
*/
int alloc_algorithm_a(struct gprs_rlcmac_bts *bts,
GprsMs *ms,
- struct gprs_rlcmac_tbf *tbf, uint32_t cust, uint8_t single)
+ struct gprs_rlcmac_tbf *tbf, uint32_t cust, uint8_t single,
+ int use_trx)
{
struct gprs_rlcmac_pdch *pdch;
int ts = -1;
uint8_t ul_slots, dl_slots;
+ int trx_no;
+ int rc;
int usf = -1;
int mask = 0xff;
const char *mask_reason = NULL;
@@ -296,6 +317,14 @@ int alloc_algorithm_a(struct gprs_rlcmac_bts *bts,
LOGP(DRLCMAC, LOGL_DEBUG, "Slot Allocation (Algorithm A) for class "
"%d\n", tbf->ms_class());
+ rc = tfi_find_free(bts->bts, ms, tbf->direction, use_trx, &trx_no);
+ if (rc < 0) {
+ LOGP(DRLCMAC, LOGL_NOTICE, "- Failed to allocate a TFI\n");
+ return rc;
+ }
+ tbf->m_tfi = rc;
+ tbf->trx = &bts->trx[trx_no];
+
dl_slots = ms->reserved_dl_slots();
ul_slots = ms->reserved_ul_slots();
@@ -348,7 +377,6 @@ int alloc_algorithm_a(struct gprs_rlcmac_bts *bts,
ms->set_reserved_slots(tbf->trx, 1 << ts, 1 << ts);
tbf->upgrade_to_multislot = 0;
-
return 0;
}
@@ -669,7 +697,7 @@ static int find_multi_slots(struct gprs_rlcmac_bts *bts,
*/
int alloc_algorithm_b(struct gprs_rlcmac_bts *bts,
GprsMs *ms,
- struct gprs_rlcmac_tbf *tbf, uint32_t cust, uint8_t single)
+ struct gprs_rlcmac_tbf *tbf, uint32_t cust, uint8_t single, int use_trx)
{
uint8_t dl_slots = 0;
uint8_t ul_slots = 0;
@@ -679,6 +707,15 @@ int alloc_algorithm_b(struct gprs_rlcmac_bts *bts,
char slot_info[9] = {0};
int ts;
int rc;
+ int trx_no;
+
+ rc = tfi_find_free(bts->bts, ms, tbf->direction, use_trx, &trx_no);
+ if (rc < 0) {
+ LOGP(DRLCMAC, LOGL_NOTICE, "- Failed to allocate a TFI\n");
+ return rc;
+ }
+ tbf->m_tfi = rc;
+ tbf->trx = &bts->trx[trx_no];
if (!ms) {
LOGP(DRLCMAC, LOGL_ERROR, "MS not set\n");
diff --git a/src/tbf.cpp b/src/tbf.cpp
index 4a8fd337..70483e35 100644
--- a/src/tbf.cpp
+++ b/src/tbf.cpp
@@ -174,20 +174,12 @@ gprs_rlcmac_ul_tbf *tbf_alloc_ul(struct gprs_rlcmac_bts *bts,
int8_t use_trx, uint8_t ms_class,
uint32_t tlli, uint8_t ta, GprsMs *ms)
{
- uint8_t trx;
struct gprs_rlcmac_ul_tbf *tbf;
- int8_t tfi; /* must be signed */
#warning "Copy and paste with tbf_new_dl_assignment"
/* create new TBF, use same TRX as DL TBF */
- tfi = bts->bts->tfi_find_free(GPRS_RLCMAC_UL_TBF, &trx, use_trx);
- if (tfi < 0) {
- LOGP(DRLCMAC, LOGL_NOTICE, "No PDCH resource\n");
- /* FIXME: send reject */
- return NULL;
- }
/* use multislot class of downlink TBF */
- tbf = tbf_alloc_ul_tbf(bts, ms, tfi, trx, ms_class, 0);
+ tbf = tbf_alloc_ul_tbf(bts, ms, use_trx, ms_class, 0);
if (!tbf) {
LOGP(DRLCMAC, LOGL_NOTICE, "No PDCH resource\n");
/* FIXME: send reject */
@@ -274,7 +266,8 @@ int gprs_rlcmac_tbf::update()
return -EINVAL;
tbf_unlink_pdch(this);
- rc = bts_data->alloc_algorithm(bts_data, ms(), this, bts_data->alloc_algorithm_curst, 0);
+ rc = bts_data->alloc_algorithm(bts_data, ms(), this,
+ bts_data->alloc_algorithm_curst, 0, -1);
/* if no resource */
if (rc < 0) {
LOGP(DRLCMAC, LOGL_ERROR, "No resource after update???\n");
@@ -445,14 +438,11 @@ void gprs_rlcmac_tbf::poll_timeout()
}
static int setup_tbf(struct gprs_rlcmac_tbf *tbf, struct gprs_rlcmac_bts *bts,
- GprsMs *ms, uint8_t tfi, uint8_t trx,
+ GprsMs *ms, int8_t use_trx,
uint8_t ms_class, uint8_t single_slot)
{
int rc;
- if (trx >= 8 || tfi >= 32)
- return -1;
-
if (!tbf)
return -1;
@@ -461,12 +451,10 @@ static int setup_tbf(struct gprs_rlcmac_tbf *tbf, struct gprs_rlcmac_bts *bts,
tbf->m_created_ts = time(NULL);
tbf->bts = bts->bts;
- tbf->m_tfi = tfi;
- tbf->trx = &bts->trx[trx];
tbf->set_ms_class(ms_class);
/* select algorithm */
rc = bts->alloc_algorithm(bts, ms, tbf, bts->alloc_algorithm_curst,
- single_slot);
+ single_slot, use_trx);
/* if no resource */
if (rc < 0) {
return -1;
@@ -485,23 +473,24 @@ static int setup_tbf(struct gprs_rlcmac_tbf *tbf, struct gprs_rlcmac_bts *bts,
tbf->m_llc.init();
tbf->set_ms(ms);
+ LOGP(DRLCMAC, LOGL_INFO,
+ "Allocated %s: trx = %d, ul_slots = %02x, dl_slots = %02x\n",
+ tbf->name(), tbf->trx->trx_no, tbf->ul_slots(), tbf->dl_slots());
+
return 0;
}
struct gprs_rlcmac_ul_tbf *tbf_alloc_ul_tbf(struct gprs_rlcmac_bts *bts,
- GprsMs *ms, uint8_t tfi, uint8_t trx,
+ GprsMs *ms, int8_t use_trx,
uint8_t ms_class, uint8_t single_slot)
{
struct gprs_rlcmac_ul_tbf *tbf;
int rc;
LOGP(DRLCMAC, LOGL_DEBUG, "********** TBF starts here **********\n");
- LOGP(DRLCMAC, LOGL_INFO, "Allocating %s TBF: TFI=%d TRX=%d "
- "MS_CLASS=%d\n", "UL", tfi, trx, ms_class);
-
- if (trx >= 8 || tfi >= 32)
- return NULL;
+ LOGP(DRLCMAC, LOGL_INFO, "Allocating %s TBF: MS_CLASS=%d\n",
+ "UL", ms_class);
tbf = talloc_zero(tall_pcu_ctx, struct gprs_rlcmac_ul_tbf);
@@ -513,7 +502,7 @@ struct gprs_rlcmac_ul_tbf *tbf_alloc_ul_tbf(struct gprs_rlcmac_bts *bts,
if (!ms)
ms = bts->bts->ms_alloc(ms_class);
- rc = setup_tbf(tbf, bts, ms, tfi, trx, ms_class, single_slot);
+ rc = setup_tbf(tbf, bts, ms, use_trx, ms_class, single_slot);
/* if no resource */
if (rc < 0) {
talloc_free(tbf);
@@ -527,18 +516,15 @@ struct gprs_rlcmac_ul_tbf *tbf_alloc_ul_tbf(struct gprs_rlcmac_bts *bts,
}
struct gprs_rlcmac_dl_tbf *tbf_alloc_dl_tbf(struct gprs_rlcmac_bts *bts,
- GprsMs *ms, uint8_t tfi, uint8_t trx,
+ GprsMs *ms, int8_t use_trx,
uint8_t ms_class, uint8_t single_slot)
{
struct gprs_rlcmac_dl_tbf *tbf;
int rc;
LOGP(DRLCMAC, LOGL_DEBUG, "********** TBF starts here **********\n");
- LOGP(DRLCMAC, LOGL_INFO, "Allocating %s TBF: TFI=%d TRX=%d "
- "MS_CLASS=%d\n", "DL", tfi, trx, ms_class);
-
- if (trx >= 8 || tfi >= 32)
- return NULL;
+ LOGP(DRLCMAC, LOGL_INFO, "Allocating %s TBF: MS_CLASS=%d\n",
+ "DL", ms_class);
tbf = talloc_zero(tall_pcu_ctx, struct gprs_rlcmac_dl_tbf);
@@ -550,7 +536,7 @@ struct gprs_rlcmac_dl_tbf *tbf_alloc_dl_tbf(struct gprs_rlcmac_bts *bts,
if (!ms)
ms = bts->bts->ms_alloc(ms_class);
- rc = setup_tbf(tbf, bts, ms, tfi, trx, ms_class, single_slot);
+ rc = setup_tbf(tbf, bts, ms, use_trx, ms_class, single_slot);
/* if no resource */
if (rc < 0) {
talloc_free(tbf);
diff --git a/src/tbf.h b/src/tbf.h
index 7f1dd765..5c198d3e 100644
--- a/src/tbf.h
+++ b/src/tbf.h
@@ -245,12 +245,11 @@ struct gprs_rlcmac_ul_tbf *tbf_alloc_ul(struct gprs_rlcmac_bts *bts,
uint32_t tlli, uint8_t ta, GprsMs *ms);
struct gprs_rlcmac_ul_tbf *tbf_alloc_ul_tbf(struct gprs_rlcmac_bts *bts,
- GprsMs *ms,
- uint8_t tfi, uint8_t trx,
+ GprsMs *ms, int8_t use_trx,
uint8_t ms_class, uint8_t single_slot);
struct gprs_rlcmac_dl_tbf *tbf_alloc_dl_tbf(struct gprs_rlcmac_bts *bts,
- GprsMs *ms, uint8_t tfi, uint8_t trx,
+ GprsMs *ms, int8_t use_trx,
uint8_t ms_class, uint8_t single_slot);
void tbf_free(struct gprs_rlcmac_tbf *tbf);
diff --git a/src/tbf_dl.cpp b/src/tbf_dl.cpp
index cf03d331..cdd02bae 100644
--- a/src/tbf_dl.cpp
+++ b/src/tbf_dl.cpp
@@ -139,12 +139,11 @@ static int tbf_new_dl_assignment(struct gprs_rlcmac_bts *bts,
const uint8_t ms_class,
struct gprs_rlcmac_dl_tbf **tbf)
{
- uint8_t trx, ss;
+ uint8_t ss;
int8_t use_trx;
uint16_t ta = 0;
struct gprs_rlcmac_ul_tbf *ul_tbf = NULL, *old_ul_tbf;
struct gprs_rlcmac_dl_tbf *dl_tbf = NULL;
- int8_t tfi; /* must be signed */
GprsMs *ms;
/* check for uplink data, so we copy our informations */
@@ -170,10 +169,8 @@ static int tbf_new_dl_assignment(struct gprs_rlcmac_bts *bts,
// Create new TBF (any TRX)
#warning "Copy and paste with alloc_ul_tbf"
- tfi = bts->bts->tfi_find_free(GPRS_RLCMAC_DL_TBF, &trx, use_trx);
- if (tfi >= 0)
- /* set number of downlink slots according to multislot class */
- dl_tbf = tbf_alloc_dl_tbf(bts, ms, tfi, trx, ms_class, ss);
+ /* set number of downlink slots according to multislot class */
+ dl_tbf = tbf_alloc_dl_tbf(bts, ms, use_trx, ms_class, ss);
if (!dl_tbf) {
LOGP(DRLCMAC, LOGL_NOTICE, "No PDCH resource\n");
@@ -842,16 +839,12 @@ int gprs_rlcmac_dl_tbf::rcvd_dl_ack(uint8_t final_ack, uint8_t ssn, uint8_t *rbb
void gprs_rlcmac_dl_tbf::reuse_tbf()
{
- uint8_t trx;
struct gprs_rlcmac_dl_tbf *new_tbf = NULL;
- int8_t tfi; /* must be signed */
bts->tbf_reused();
- tfi = bts->tfi_find_free(GPRS_RLCMAC_DL_TBF, &trx, this->trx->trx_no);
- if (tfi >= 0)
- new_tbf = tbf_alloc_dl_tbf(bts->bts_data(), ms(), tfi, trx,
- ms_class(), 0);
+ new_tbf = tbf_alloc_dl_tbf(bts->bts_data(), ms(),
+ this->trx->trx_no, ms_class(), 0);
if (!new_tbf) {
LOGP(DRLCMAC, LOGL_NOTICE, "No PDCH resource\n");
diff --git a/tests/alloc/AllocTest.cpp b/tests/alloc/AllocTest.cpp
index 66bc84f3..b6f263f4 100644
--- a/tests/alloc/AllocTest.cpp
+++ b/tests/alloc/AllocTest.cpp
@@ -38,13 +38,13 @@ int16_t spoof_mnc = 0, spoof_mcc = 0;
static gprs_rlcmac_tbf *tbf_alloc(struct gprs_rlcmac_bts *bts,
GprsMs *ms, gprs_rlcmac_tbf_direction dir,
- uint8_t tfi, uint8_t trx,
+ uint8_t use_trx,
uint8_t ms_class, uint8_t single_slot)
{
if (dir == GPRS_RLCMAC_UL_TBF)
- return tbf_alloc_ul_tbf(bts, ms, tfi, trx, ms_class, single_slot);
+ return tbf_alloc_ul_tbf(bts, ms, use_trx, ms_class, single_slot);
else
- return tbf_alloc_dl_tbf(bts, ms, tfi, trx, ms_class, single_slot);
+ return tbf_alloc_dl_tbf(bts, ms, use_trx, ms_class, single_slot);
}
static void check_tfi_usage(BTS *the_bts)
@@ -133,9 +133,7 @@ static void test_alloc_a(gprs_rlcmac_tbf_direction dir,
* least this part is working okay.
*/
for (int i = 0; i < count; ++i) {
- tfi = the_bts.tfi_find_free(dir, &used_trx, 0);
- OSMO_ASSERT(tfi >= 0);
- tbfs[i] = tbf_alloc(bts, NULL, dir, tfi, used_trx, 0, 0);
+ tbfs[i] = tbf_alloc(bts, NULL, dir, -1, 0, 0);
OSMO_ASSERT(tbfs[i] != NULL);
tfi = the_bts.tfi_find_free(dir, &tmp_trx, used_trx);
OSMO_ASSERT(tbfs[i]->tfi() != tfi);
@@ -151,16 +149,13 @@ static void test_alloc_a(gprs_rlcmac_tbf_direction dir,
OSMO_ASSERT(tfi < 0);
break;
}
- OSMO_ASSERT(!tbf_alloc(bts, NULL, dir, tfi, used_trx, 0, 0));
+ OSMO_ASSERT(!tbf_alloc(bts, NULL, dir, -1, 0, 0));
for (size_t i = 0; i < ARRAY_SIZE(tbfs); ++i)
if (tbfs[i])
tbf_free(tbfs[i]);
- tfi = the_bts.tfi_find_free(dir, &used_trx, 0);
- OSMO_ASSERT(tfi >= 0);
-
- tbfs[tfi] = tbf_alloc(bts, NULL, dir, tfi, used_trx, 0, 0);
+ tbfs[tfi] = tbf_alloc(bts, NULL, dir, -1, 0, 0);
OSMO_ASSERT(tbfs[tfi]);
tbf_free(tbfs[tfi]);
}
@@ -198,7 +193,6 @@ static void test_alloc_b(int ms_class)
BTS the_bts;
struct gprs_rlcmac_bts *bts;
struct gprs_rlcmac_trx *trx;
- int tfi;
uint8_t trx_no;
gprs_rlcmac_tbf *ul_tbf, *dl_tbf;
@@ -213,16 +207,15 @@ static void test_alloc_b(int ms_class)
trx->pdch[6].enable();
trx->pdch[7].enable();
- tfi = the_bts.tfi_find_free(GPRS_RLCMAC_UL_TBF, &trx_no, -1);
- OSMO_ASSERT(tfi >= 0);
- ul_tbf = tbf_alloc_ul_tbf(bts, NULL, tfi, trx_no, ms_class, 1);
+ ul_tbf = tbf_alloc_ul_tbf(bts, NULL, -1, ms_class, 1);
OSMO_ASSERT(ul_tbf);
+ OSMO_ASSERT(ul_tbf->ms());
+ OSMO_ASSERT(ul_tbf->ms()->current_trx());
+ trx_no = ul_tbf->ms()->current_trx()->trx_no;
dump_assignment(ul_tbf, "UL");
/* assume final ack has not been sent */
- tfi = the_bts.tfi_find_free(GPRS_RLCMAC_UL_TBF, &trx_no, -1);
- OSMO_ASSERT(tfi >= 0);
- dl_tbf = tbf_alloc_dl_tbf(bts, ul_tbf->ms(), tfi, trx_no, ms_class, 0);
+ dl_tbf = tbf_alloc_dl_tbf(bts, ul_tbf->ms(), trx_no, ms_class, 0);
OSMO_ASSERT(dl_tbf);
dump_assignment(dl_tbf, "DL");
@@ -241,7 +234,6 @@ static void test_alloc_b(int ms_class)
BTS the_bts;
struct gprs_rlcmac_bts *bts;
struct gprs_rlcmac_trx *trx;
- int tfi;
uint8_t trx_no;
gprs_rlcmac_ul_tbf *ul_tbf;
@@ -257,16 +249,15 @@ static void test_alloc_b(int ms_class)
trx->pdch[6].enable();
trx->pdch[7].enable();
- tfi = the_bts.tfi_find_free(GPRS_RLCMAC_UL_TBF, &trx_no, -1);
- OSMO_ASSERT(tfi >= 0);
- dl_tbf = tbf_alloc_dl_tbf(bts, NULL, tfi, trx_no, ms_class, 1);
+ dl_tbf = tbf_alloc_dl_tbf(bts, NULL, -1, ms_class, 1);
dl_tbf->update_ms(0x23, GPRS_RLCMAC_DL_TBF);
OSMO_ASSERT(dl_tbf);
+ OSMO_ASSERT(dl_tbf->ms());
+ OSMO_ASSERT(dl_tbf->ms()->current_trx());
+ trx_no = dl_tbf->ms()->current_trx()->trx_no;
dump_assignment(dl_tbf, "DL");
- tfi = the_bts.tfi_find_free(GPRS_RLCMAC_UL_TBF, &trx_no, -1);
- OSMO_ASSERT(tfi >= 0);
- ul_tbf = tbf_alloc_ul_tbf(bts, dl_tbf->ms(), tfi, trx_no, ms_class, 0);
+ ul_tbf = tbf_alloc_ul_tbf(bts, dl_tbf->ms(), trx_no, ms_class, 0);
ul_tbf->update_ms(0x23, GPRS_RLCMAC_UL_TBF);
ul_tbf->m_contention_resolution_done = 1;
OSMO_ASSERT(ul_tbf);
@@ -308,14 +299,15 @@ static void test_alloc_b(int ms_class)
tfi = the_bts.tfi_find_free(GPRS_RLCMAC_UL_TBF, &trx_no, -1);
OSMO_ASSERT(tfi >= 0);
- ul_tbf = tbf_alloc_ul_tbf(bts, NULL, tfi, trx_no, ms_class, 0);
+ ul_tbf = tbf_alloc_ul_tbf(bts, NULL, .1, ms_class, 0);
OSMO_ASSERT(ul_tbf);
+ OSMO_ASSERT(ul_tbf->ms());
+ OSMO_ASSERT(ul_tbf->ms()->current_trx());
+ trx_no = ul_tbf->ms()->current_trx()->trx_no;
dump_assignment(ul_tbf, "UL");
/* assume final ack has not been sent */
- tfi = the_bts.tfi_find_free(GPRS_RLCMAC_UL_TBF, &trx_no, -1);
- OSMO_ASSERT(tfi >= 0);
- dl_tbf = tbf_alloc_dl_tbf(bts, ul_tbf->ms(), tfi, trx_no, ms_class, 0);
+ dl_tbf = tbf_alloc_dl_tbf(bts, ul_tbf->ms(), trx_no, ms_class, 0);
OSMO_ASSERT(dl_tbf);
dump_assignment(dl_tbf, "DL");
@@ -353,7 +345,6 @@ static void test_alloc_b(bool ts0, bool ts1, bool ts2, bool ts3, bool ts4, bool
BTS the_bts;
struct gprs_rlcmac_bts *bts;
struct gprs_rlcmac_trx *trx;
- int tfi;
uint8_t trx_no;
gprs_rlcmac_tbf *ul_tbf, *dl_tbf;
@@ -371,16 +362,14 @@ static void test_alloc_b(bool ts0, bool ts1, bool ts2, bool ts3, bool ts4, bool
ENABLE_PDCH(6, ts6, trx);
ENABLE_PDCH(7, ts7, trx);
- tfi = the_bts.tfi_find_free(GPRS_RLCMAC_UL_TBF, &trx_no, -1);
-
- OSMO_ASSERT(tfi >= 0);
- ul_tbf = tbf_alloc_ul_tbf(bts, NULL, tfi, trx_no, ms_class, 1);
+ ul_tbf = tbf_alloc_ul_tbf(bts, NULL, -1, ms_class, 1);
+ OSMO_ASSERT(ul_tbf->ms());
+ OSMO_ASSERT(ul_tbf->ms()->current_trx());
+ trx_no = ul_tbf->ms()->current_trx()->trx_no;
OSMO_ASSERT(ul_tbf);
/* assume final ack has not been sent */
- tfi = the_bts.tfi_find_free(GPRS_RLCMAC_UL_TBF, &trx_no, -1);
- OSMO_ASSERT(tfi >= 0);
- dl_tbf = tbf_alloc_dl_tbf(bts, ul_tbf->ms(), tfi, trx_no, ms_class, 0);
+ dl_tbf = tbf_alloc_dl_tbf(bts, ul_tbf->ms(), trx_no, ms_class, 0);
OSMO_ASSERT(dl_tbf);
/* verify that both are on the same ts */
@@ -399,7 +388,6 @@ static void test_alloc_b(bool ts0, bool ts1, bool ts2, bool ts3, bool ts4, bool
BTS the_bts;
struct gprs_rlcmac_bts *bts;
struct gprs_rlcmac_trx *trx;
- int tfi;
uint8_t trx_no;
gprs_rlcmac_ul_tbf *ul_tbf;
@@ -418,15 +406,14 @@ static void test_alloc_b(bool ts0, bool ts1, bool ts2, bool ts3, bool ts4, bool
ENABLE_PDCH(6, ts6, trx);
ENABLE_PDCH(7, ts7, trx);
- tfi = the_bts.tfi_find_free(GPRS_RLCMAC_UL_TBF, &trx_no, -1);
- OSMO_ASSERT(tfi >= 0);
- dl_tbf = tbf_alloc_dl_tbf(bts, NULL, tfi, trx_no, ms_class, 1);
+ dl_tbf = tbf_alloc_dl_tbf(bts, NULL, -1, ms_class, 1);
OSMO_ASSERT(dl_tbf);
+ OSMO_ASSERT(dl_tbf->ms());
+ OSMO_ASSERT(dl_tbf->ms()->current_trx());
+ trx_no = dl_tbf->ms()->current_trx()->trx_no;
dl_tbf->update_ms(0x23, GPRS_RLCMAC_DL_TBF);
- tfi = the_bts.tfi_find_free(GPRS_RLCMAC_UL_TBF, &trx_no, -1);
- OSMO_ASSERT(tfi >= 0);
- ul_tbf = tbf_alloc_ul_tbf(bts, dl_tbf->ms(), tfi, trx_no, ms_class, 0);
+ ul_tbf = tbf_alloc_ul_tbf(bts, dl_tbf->ms(), trx_no, ms_class, 0);
OSMO_ASSERT(ul_tbf);
ul_tbf->update_ms(0x23, GPRS_RLCMAC_UL_TBF);
ul_tbf->m_contention_resolution_done = 1;
@@ -472,7 +459,8 @@ static void test_alloc_b()
typedef int (*algo_t)(struct gprs_rlcmac_bts *bts,
struct GprsMs *ms,
- struct gprs_rlcmac_tbf *tbf, uint32_t cust, uint8_t single);
+ struct gprs_rlcmac_tbf *tbf, uint32_t cust, uint8_t single,
+ int use_trx);
static char get_dir_char(uint8_t mask, uint8_t tx, uint8_t rx)
{
@@ -495,30 +483,28 @@ static GprsMs *alloc_tbfs(BTS *the_bts, GprsMs *ms, unsigned ms_class,
enum test_mode mode)
{
struct gprs_rlcmac_bts *bts;
- int tfi;
- uint8_t trx_no;
+ uint8_t trx_no = -1;
bts = the_bts->bts_data();
gprs_rlcmac_tbf *tbf = NULL;
+ if (ms && ms->current_trx())
+ trx_no = ms->current_trx()->trx_no;
+
/* Allocate what is needed first */
switch (mode) {
case TEST_MODE_UL_ONLY:
case TEST_MODE_DL_AFTER_UL:
case TEST_MODE_UL_AND_DL:
- tfi = the_bts->tfi_find_free(GPRS_RLCMAC_UL_TBF, &trx_no, -1);
- if (tfi < 0)
- return NULL;
- tbf = tbf_alloc_ul_tbf(bts, ms, tfi, trx_no, ms_class, 0);
+ tbf = tbf_alloc_ul_tbf(bts, ms, trx_no, ms_class, 0);
if (tbf == NULL)
return NULL;
break;
case TEST_MODE_DL_ONLY:
case TEST_MODE_UL_AFTER_DL:
case TEST_MODE_DL_AND_UL:
- tfi = the_bts->tfi_find_free(GPRS_RLCMAC_DL_TBF, &trx_no, -1);
- tbf = tbf_alloc_dl_tbf(bts, ms, tfi, trx_no, ms_class, 0);
+ tbf = tbf_alloc_dl_tbf(bts, ms, trx_no, ms_class, 0);
if (tbf == NULL)
return NULL;
}
diff --git a/tests/alloc/AllocTest.err b/tests/alloc/AllocTest.err
index 2dc99fe1..d848aff9 100644
--- a/tests/alloc/AllocTest.err
+++ b/tests/alloc/AllocTest.err
@@ -1,36 +1,55 @@
No TFI available.
No TFI available.
+No TFI available.
+- Failed to allocate a TFI
- Failed to allocate a TS, no USF available
No TFI available.
No TFI available.
+No TFI available.
+- Failed to allocate a TFI
- Failed to allocate a TS, no USF available
No TFI available.
No TFI available.
+- Failed to allocate a TFI
No TFI available.
No TFI available.
+- Failed to allocate a TFI
No TFI available.
No TFI available.
+- Failed to allocate a TFI
No TFI available.
No TFI available.
+- Failed to allocate a TFI
No TFI available.
No TFI available.
+- Failed to allocate a TFI
No TFI available.
No TFI available.
+- Failed to allocate a TFI
No TFI available.
No TFI available.
+- Failed to allocate a TFI
No TFI available.
No TFI available.
+- Failed to allocate a TFI
No TFI available.
No TFI available.
+- Failed to allocate a TFI
No TFI available.
No TFI available.
+- Failed to allocate a TFI
No TFI available.
No TFI available.
+- Failed to allocate a TFI
No TFI available.
No TFI available.
+- Failed to allocate a TFI
No TFI available.
No TFI available.
+- Failed to allocate a TFI
No TFI available.
No TFI available.
+- Failed to allocate a TFI
No TFI available.
No TFI available.
+- Failed to allocate a TFI
diff --git a/tests/tbf/TbfTest.cpp b/tests/tbf/TbfTest.cpp
index 47c090a0..159c8596 100644
--- a/tests/tbf/TbfTest.cpp
+++ b/tests/tbf/TbfTest.cpp
@@ -85,14 +85,14 @@ static void test_tbf_tlli_update()
* Make a uplink and downlink allocation
*/
gprs_rlcmac_tbf *dl_tbf = tbf_alloc_dl_tbf(the_bts.bts_data(),
- NULL, 0,
+ NULL,
0, 0, 0);
OSMO_ASSERT(dl_tbf != NULL);
dl_tbf->update_ms(0x2342, GPRS_RLCMAC_DL_TBF);
dl_tbf->set_ta(4);
gprs_rlcmac_tbf *ul_tbf = tbf_alloc_ul_tbf(the_bts.bts_data(),
- dl_tbf->ms(), 0,
+ dl_tbf->ms(),
0, 0, 0);
OSMO_ASSERT(ul_tbf != NULL);
ul_tbf->update_ms(0x2342, GPRS_RLCMAC_UL_TBF);
@@ -170,7 +170,7 @@ static gprs_rlcmac_dl_tbf *create_dl_tbf(BTS *the_bts, uint8_t ms_class,
tfi = the_bts->tfi_find_free(GPRS_RLCMAC_DL_TBF, &trx_no, -1);
OSMO_ASSERT(tfi >= 0);
- dl_tbf = tbf_alloc_dl_tbf(bts, NULL, tfi, trx_no, ms_class, 1);
+ dl_tbf = tbf_alloc_dl_tbf(bts, NULL, trx_no, ms_class, 1);
check_tbf(dl_tbf);
/* "Establish" the DL TBF */
diff --git a/tests/tbf/TbfTest.err b/tests/tbf/TbfTest.err
index 3c7892e4..c64d4f1d 100644
--- a/tests/tbf/TbfTest.err
+++ b/tests/tbf/TbfTest.err
@@ -1,7 +1,9 @@
********** TBF starts here **********
-Allocating DL TBF: TFI=0 TRX=0 MS_CLASS=0
+Allocating DL TBF: MS_CLASS=0
Creating MS object, TLLI = 0x00000000
Slot Allocation (Algorithm A) for class 0
+Searching for first unallocated TFI: TRX=0 first TS=2
+ Found TFI=0.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 4, because not enabled
@@ -13,11 +15,14 @@ Slot Allocation (Algorithm A) for class 0
PDCH(TS 2, TRX 0): Attaching TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL), 1 TBFs, USFs = 00, TFIs = 00000001.
- Setting Control TS 2
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 04, dl_slots = 04
The MS object cannot fully confirm an unexpected TLLI: 0x00002342, partly confirmed
Modifying MS object, TLLI = 0x00002342, TA 0 -> 4
********** TBF starts here **********
-Allocating UL TBF: TFI=0 TRX=0 MS_CLASS=0
+Allocating UL TBF: MS_CLASS=0
Slot Allocation (Algorithm A) for class 0
+Searching for first unallocated TFI: TRX=0 first TS=2
+ Found TFI=0.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 3, because need to reuse TS
@@ -29,6 +34,7 @@ Slot Allocation (Algorithm A) for class 0
PDCH(TS 2, TRX 0): Attaching TBF(TFI=0 TLLI=0x00000000 DIR=UL STATE=NULL), 1 TBFs, USFs = 01, TFIs = 00000001.
- Setting Control TS 2
Attaching TBF to MS object, TLLI = 0x00002342, TBF = TBF(TFI=0 TLLI=0x00002342 DIR=UL STATE=NULL)
+Allocated TBF(TFI=0 TLLI=0x00002342 DIR=UL STATE=NULL): trx = 0, ul_slots = 04, dl_slots = 00
Modifying MS object, TLLI: 0x00000000 -> 0x00002342, already confirmed partly
The MS object cannot fully confirm an unexpected TLLI: 0x00004232, partly confirmed
Modifying MS object, TLLI: 0x00002342 -> 0x00004232, already confirmed partly
@@ -36,10 +42,12 @@ Modifying MS object, TLLI = 0x00004232, TA 4 -> 6
Searching for first unallocated TFI: TRX=0 first TS=4
Found TFI=0.
********** TBF starts here **********
-Allocating DL TBF: TFI=0 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=0.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -51,6 +59,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL), 1 TBFs, USFs = 00, TFIs = 00000001.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL) changes state from NULL to FLOW
The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed
TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW) append
@@ -77,11 +86,11 @@ Sending data request: trx=0 ts=4 sapi=5 arfcn=0 fn=8 block=2 data=07 00 03 14 15
TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW) downlink acknowledge
- Final ACK received.
TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW) changes state from FLOW to WAIT RELEASE
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=1.
********** TBF starts here **********
-Allocating DL TBF: TFI=1 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=1.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -94,6 +103,7 @@ PDCH(TS 4, TRX 0): Attaching TBF(TFI=1 TLLI=0x00000000 DIR=DL STATE=NULL), 2 TBF
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=1 TLLI=0xffeeddcc DIR=DL STATE=NULL)
Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT RELEASE)
+Allocated TBF(TFI=1 TLLI=0xffeeddcc DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=WAIT RELEASE) Trigger dowlink assignment on PACCH, because another LLC PDU has arrived in between
Send dowlink assignment on PACCH, because TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=WAIT RELEASE) exists
TBF(TFI=1 TLLI=0xffeeddcc DIR=DL STATE=NULL) changes state from NULL to ASSIGN
@@ -111,10 +121,12 @@ Destroying MS object, TLLI = 0xffeeddcc
Searching for first unallocated TFI: TRX=0 first TS=4
Found TFI=0.
********** TBF starts here **********
-Allocating DL TBF: TFI=0 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=0.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -126,6 +138,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL), 1 TBFs, USFs = 00, TFIs = 00000001.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL) changes state from NULL to FLOW
The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed
TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW) append
@@ -152,11 +165,11 @@ Sending data request: trx=0 ts=4 sapi=5 arfcn=0 fn=8 block=2 data=07 00 03 14 15
TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW) downlink acknowledge
- Final ACK received.
TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW) changes state from FLOW to WAIT RELEASE
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=1.
********** TBF starts here **********
-Allocating DL TBF: TFI=1 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=1.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -169,6 +182,7 @@ PDCH(TS 4, TRX 0): Attaching TBF(TFI=1 TLLI=0x00000000 DIR=DL STATE=NULL), 2 TBF
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=1 TLLI=0xffeeddcc DIR=DL STATE=NULL)
Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT RELEASE)
+Allocated TBF(TFI=1 TLLI=0xffeeddcc DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=WAIT RELEASE) Trigger dowlink assignment on PACCH, because another LLC PDU has arrived in between
Send dowlink assignment on PACCH, because TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=WAIT RELEASE) exists
TBF(TFI=1 TLLI=0xffeeddcc DIR=DL STATE=NULL) changes state from NULL to ASSIGN
@@ -186,10 +200,12 @@ Destroying MS object, TLLI = 0xffeeddcc
Searching for first unallocated TFI: TRX=0 first TS=4
Found TFI=0.
********** TBF starts here **********
-Allocating DL TBF: TFI=0 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=0.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -201,6 +217,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL), 1 TBFs, USFs = 00, TFIs = 00000001.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL) changes state from NULL to FLOW
The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed
TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=FLOW) append
@@ -414,10 +431,12 @@ Destroying MS object, TLLI = 0xffeeddcc
Searching for first unallocated TFI: TRX=0 first TS=4
Found TFI=0.
********** TBF starts here **********
-Allocating DL TBF: TFI=0 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=0.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -429,14 +448,17 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL), 1 TBFs, USFs = 00, TFIs = 00000001.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL) changes state from NULL to FLOW
Searching for first unallocated TFI: TRX=0 first TS=4
Found TFI=1.
********** TBF starts here **********
-Allocating DL TBF: TFI=1 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=1.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -448,6 +470,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=1 TLLI=0x00000000 DIR=DL STATE=NULL), 2 TBFs, USFs = 00, TFIs = 00000003.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=1 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=1 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
TBF(TFI=1 TLLI=0x00000000 DIR=DL STATE=NULL) changes state from NULL to FLOW
The MS object cannot fully confirm an unexpected TLLI: 0xf1000001, partly confirmed
The MS object cannot fully confirm an unexpected TLLI: 0xf1000002, partly confirmed
@@ -468,13 +491,13 @@ PDCH(TS 4, TRX 0): Detaching TBF(TFI=0 TLLI=0xf1000001 DIR=DL STATE=FLOW), 0 TBF
Detaching TBF from MS object, TLLI = 0xf1000001, TBF = TBF(TFI=0 TLLI=0xf1000001 DIR=DL STATE=FLOW)
Destroying MS object, TLLI = 0xf1000001
********** TBF ends here **********
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=0.
********** TBF starts here **********
-Allocating DL TBF: TFI=0 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=0.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -486,6 +509,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL), 1 TBFs, USFs = 00, TFIs = 00000001.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc0000000, partly confirmed
TBF(TFI=0 TLLI=0xc0000000 DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc0000000, IMSI '' -> '001001000000000'
@@ -494,13 +518,13 @@ TBF(TFI=0 TLLI=0xc0000000 DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=0 TLLI=0xc0000000 DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 30 30 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 00 08 00 23 2b 2b 2b 2b
TBF(TFI=0 TLLI=0xc0000000 DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=1.
********** TBF starts here **********
-Allocating DL TBF: TFI=1 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=1.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -512,6 +536,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=1 TLLI=0x00000000 DIR=DL STATE=NULL), 2 TBFs, USFs = 00, TFIs = 00000003.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=1 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=1 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc0000001, partly confirmed
TBF(TFI=1 TLLI=0xc0000001 DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc0000001, IMSI '' -> '001001000000001'
@@ -520,13 +545,13 @@ TBF(TFI=1 TLLI=0xc0000001 DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=1 TLLI=0xc0000001 DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 30 31 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 00 18 40 23 2b 2b 2b 2b
TBF(TFI=1 TLLI=0xc0000001 DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=2.
********** TBF starts here **********
-Allocating DL TBF: TFI=2 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=2.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -538,6 +563,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=2 TLLI=0x00000000 DIR=DL STATE=NULL), 3 TBFs, USFs = 00, TFIs = 00000007.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=2 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=2 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc0000002, partly confirmed
TBF(TFI=2 TLLI=0xc0000002 DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc0000002, IMSI '' -> '001001000000002'
@@ -546,13 +572,13 @@ TBF(TFI=2 TLLI=0xc0000002 DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=2 TLLI=0xc0000002 DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 30 32 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 00 28 80 23 2b 2b 2b 2b
TBF(TFI=2 TLLI=0xc0000002 DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=3.
********** TBF starts here **********
-Allocating DL TBF: TFI=3 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=3.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -564,6 +590,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=3 TLLI=0x00000000 DIR=DL STATE=NULL), 4 TBFs, USFs = 00, TFIs = 0000000f.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=3 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=3 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc0000003, partly confirmed
TBF(TFI=3 TLLI=0xc0000003 DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc0000003, IMSI '' -> '001001000000003'
@@ -572,13 +599,13 @@ TBF(TFI=3 TLLI=0xc0000003 DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=3 TLLI=0xc0000003 DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 30 33 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 00 38 c0 23 2b 2b 2b 2b
TBF(TFI=3 TLLI=0xc0000003 DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=4.
********** TBF starts here **********
-Allocating DL TBF: TFI=4 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=4.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -590,6 +617,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=4 TLLI=0x00000000 DIR=DL STATE=NULL), 5 TBFs, USFs = 00, TFIs = 0000001f.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=4 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=4 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc0000004, partly confirmed
TBF(TFI=4 TLLI=0xc0000004 DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc0000004, IMSI '' -> '001001000000004'
@@ -598,13 +626,13 @@ TBF(TFI=4 TLLI=0xc0000004 DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=4 TLLI=0xc0000004 DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 30 34 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 00 49 00 23 2b 2b 2b 2b
TBF(TFI=4 TLLI=0xc0000004 DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=5.
********** TBF starts here **********
-Allocating DL TBF: TFI=5 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=5.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -616,6 +644,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=5 TLLI=0x00000000 DIR=DL STATE=NULL), 6 TBFs, USFs = 00, TFIs = 0000003f.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=5 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=5 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc0000005, partly confirmed
TBF(TFI=5 TLLI=0xc0000005 DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc0000005, IMSI '' -> '001001000000005'
@@ -624,13 +653,13 @@ TBF(TFI=5 TLLI=0xc0000005 DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=5 TLLI=0xc0000005 DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 30 35 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 00 59 40 23 2b 2b 2b 2b
TBF(TFI=5 TLLI=0xc0000005 DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=6.
********** TBF starts here **********
-Allocating DL TBF: TFI=6 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=6.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -642,6 +671,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=6 TLLI=0x00000000 DIR=DL STATE=NULL), 7 TBFs, USFs = 00, TFIs = 0000007f.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=6 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=6 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc0000006, partly confirmed
TBF(TFI=6 TLLI=0xc0000006 DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc0000006, IMSI '' -> '001001000000006'
@@ -650,13 +680,13 @@ TBF(TFI=6 TLLI=0xc0000006 DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=6 TLLI=0xc0000006 DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 30 36 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 00 69 80 23 2b 2b 2b 2b
TBF(TFI=6 TLLI=0xc0000006 DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=7.
********** TBF starts here **********
-Allocating DL TBF: TFI=7 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=7.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -668,6 +698,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=7 TLLI=0x00000000 DIR=DL STATE=NULL), 8 TBFs, USFs = 00, TFIs = 000000ff.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=7 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=7 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc0000007, partly confirmed
TBF(TFI=7 TLLI=0xc0000007 DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc0000007, IMSI '' -> '001001000000007'
@@ -676,13 +707,13 @@ TBF(TFI=7 TLLI=0xc0000007 DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=7 TLLI=0xc0000007 DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 30 37 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 00 79 c0 23 2b 2b 2b 2b
TBF(TFI=7 TLLI=0xc0000007 DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=8.
********** TBF starts here **********
-Allocating DL TBF: TFI=8 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=8.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -694,6 +725,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=8 TLLI=0x00000000 DIR=DL STATE=NULL), 9 TBFs, USFs = 00, TFIs = 000001ff.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=8 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=8 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc0000008, partly confirmed
TBF(TFI=8 TLLI=0xc0000008 DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc0000008, IMSI '' -> '001001000000008'
@@ -702,13 +734,13 @@ TBF(TFI=8 TLLI=0xc0000008 DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=8 TLLI=0xc0000008 DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 30 38 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 00 8a 00 23 2b 2b 2b 2b
TBF(TFI=8 TLLI=0xc0000008 DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=9.
********** TBF starts here **********
-Allocating DL TBF: TFI=9 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=9.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -720,6 +752,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=9 TLLI=0x00000000 DIR=DL STATE=NULL), 10 TBFs, USFs = 00, TFIs = 000003ff.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=9 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=9 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc0000009, partly confirmed
TBF(TFI=9 TLLI=0xc0000009 DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc0000009, IMSI '' -> '001001000000009'
@@ -728,13 +761,13 @@ TBF(TFI=9 TLLI=0xc0000009 DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=9 TLLI=0xc0000009 DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 30 39 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 00 9a 40 23 2b 2b 2b 2b
TBF(TFI=9 TLLI=0xc0000009 DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=10.
********** TBF starts here **********
-Allocating DL TBF: TFI=10 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=10.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -746,6 +779,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=10 TLLI=0x00000000 DIR=DL STATE=NULL), 11 TBFs, USFs = 00, TFIs = 000007ff.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=10 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=10 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc000000a, partly confirmed
TBF(TFI=10 TLLI=0xc000000a DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc000000a, IMSI '' -> '001001000000010'
@@ -754,13 +788,13 @@ TBF(TFI=10 TLLI=0xc000000a DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=10 TLLI=0xc000000a DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 31 30 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 00 aa 80 23 2b 2b 2b 2b
TBF(TFI=10 TLLI=0xc000000a DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=11.
********** TBF starts here **********
-Allocating DL TBF: TFI=11 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=11.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -772,6 +806,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=11 TLLI=0x00000000 DIR=DL STATE=NULL), 12 TBFs, USFs = 00, TFIs = 00000fff.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=11 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=11 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc000000b, partly confirmed
TBF(TFI=11 TLLI=0xc000000b DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc000000b, IMSI '' -> '001001000000011'
@@ -780,13 +815,13 @@ TBF(TFI=11 TLLI=0xc000000b DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=11 TLLI=0xc000000b DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 31 31 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 00 ba c0 23 2b 2b 2b 2b
TBF(TFI=11 TLLI=0xc000000b DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=12.
********** TBF starts here **********
-Allocating DL TBF: TFI=12 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=12.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -798,6 +833,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=12 TLLI=0x00000000 DIR=DL STATE=NULL), 13 TBFs, USFs = 00, TFIs = 00001fff.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=12 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=12 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc000000c, partly confirmed
TBF(TFI=12 TLLI=0xc000000c DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc000000c, IMSI '' -> '001001000000012'
@@ -806,13 +842,13 @@ TBF(TFI=12 TLLI=0xc000000c DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=12 TLLI=0xc000000c DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 31 32 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 00 cb 00 23 2b 2b 2b 2b
TBF(TFI=12 TLLI=0xc000000c DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=13.
********** TBF starts here **********
-Allocating DL TBF: TFI=13 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=13.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -824,6 +860,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=13 TLLI=0x00000000 DIR=DL STATE=NULL), 14 TBFs, USFs = 00, TFIs = 00003fff.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=13 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=13 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc000000d, partly confirmed
TBF(TFI=13 TLLI=0xc000000d DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc000000d, IMSI '' -> '001001000000013'
@@ -832,13 +869,13 @@ TBF(TFI=13 TLLI=0xc000000d DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=13 TLLI=0xc000000d DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 31 33 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 00 db 40 23 2b 2b 2b 2b
TBF(TFI=13 TLLI=0xc000000d DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=14.
********** TBF starts here **********
-Allocating DL TBF: TFI=14 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=14.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -850,6 +887,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=14 TLLI=0x00000000 DIR=DL STATE=NULL), 15 TBFs, USFs = 00, TFIs = 00007fff.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=14 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=14 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc000000e, partly confirmed
TBF(TFI=14 TLLI=0xc000000e DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc000000e, IMSI '' -> '001001000000014'
@@ -858,13 +896,13 @@ TBF(TFI=14 TLLI=0xc000000e DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=14 TLLI=0xc000000e DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 31 34 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 00 eb 80 23 2b 2b 2b 2b
TBF(TFI=14 TLLI=0xc000000e DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=15.
********** TBF starts here **********
-Allocating DL TBF: TFI=15 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=15.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -876,6 +914,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=15 TLLI=0x00000000 DIR=DL STATE=NULL), 16 TBFs, USFs = 00, TFIs = 0000ffff.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=15 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=15 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc000000f, partly confirmed
TBF(TFI=15 TLLI=0xc000000f DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc000000f, IMSI '' -> '001001000000015'
@@ -884,13 +923,13 @@ TBF(TFI=15 TLLI=0xc000000f DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=15 TLLI=0xc000000f DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 31 35 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 00 fb c0 23 2b 2b 2b 2b
TBF(TFI=15 TLLI=0xc000000f DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=16.
********** TBF starts here **********
-Allocating DL TBF: TFI=16 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=16.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -902,6 +941,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=16 TLLI=0x00000000 DIR=DL STATE=NULL), 17 TBFs, USFs = 00, TFIs = 0001ffff.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=16 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=16 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc0000010, partly confirmed
TBF(TFI=16 TLLI=0xc0000010 DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc0000010, IMSI '' -> '001001000000016'
@@ -910,13 +950,13 @@ TBF(TFI=16 TLLI=0xc0000010 DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=16 TLLI=0xc0000010 DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 31 36 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 01 0c 00 23 2b 2b 2b 2b
TBF(TFI=16 TLLI=0xc0000010 DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=17.
********** TBF starts here **********
-Allocating DL TBF: TFI=17 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=17.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -928,6 +968,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=17 TLLI=0x00000000 DIR=DL STATE=NULL), 18 TBFs, USFs = 00, TFIs = 0003ffff.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=17 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=17 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc0000011, partly confirmed
TBF(TFI=17 TLLI=0xc0000011 DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc0000011, IMSI '' -> '001001000000017'
@@ -936,13 +977,13 @@ TBF(TFI=17 TLLI=0xc0000011 DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=17 TLLI=0xc0000011 DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 31 37 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 01 1c 40 23 2b 2b 2b 2b
TBF(TFI=17 TLLI=0xc0000011 DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=18.
********** TBF starts here **********
-Allocating DL TBF: TFI=18 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=18.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -954,6 +995,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=18 TLLI=0x00000000 DIR=DL STATE=NULL), 19 TBFs, USFs = 00, TFIs = 0007ffff.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=18 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=18 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc0000012, partly confirmed
TBF(TFI=18 TLLI=0xc0000012 DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc0000012, IMSI '' -> '001001000000018'
@@ -962,13 +1004,13 @@ TBF(TFI=18 TLLI=0xc0000012 DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=18 TLLI=0xc0000012 DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 31 38 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 01 2c 80 23 2b 2b 2b 2b
TBF(TFI=18 TLLI=0xc0000012 DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=19.
********** TBF starts here **********
-Allocating DL TBF: TFI=19 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=19.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -980,6 +1022,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=19 TLLI=0x00000000 DIR=DL STATE=NULL), 20 TBFs, USFs = 00, TFIs = 000fffff.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=19 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=19 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc0000013, partly confirmed
TBF(TFI=19 TLLI=0xc0000013 DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc0000013, IMSI '' -> '001001000000019'
@@ -988,13 +1031,13 @@ TBF(TFI=19 TLLI=0xc0000013 DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=19 TLLI=0xc0000013 DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 31 39 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 01 3c c0 23 2b 2b 2b 2b
TBF(TFI=19 TLLI=0xc0000013 DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=20.
********** TBF starts here **********
-Allocating DL TBF: TFI=20 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=20.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -1006,6 +1049,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=20 TLLI=0x00000000 DIR=DL STATE=NULL), 21 TBFs, USFs = 00, TFIs = 001fffff.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=20 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=20 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc0000014, partly confirmed
TBF(TFI=20 TLLI=0xc0000014 DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc0000014, IMSI '' -> '001001000000020'
@@ -1014,13 +1058,13 @@ TBF(TFI=20 TLLI=0xc0000014 DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=20 TLLI=0xc0000014 DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 32 30 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 01 4d 00 23 2b 2b 2b 2b
TBF(TFI=20 TLLI=0xc0000014 DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=21.
********** TBF starts here **********
-Allocating DL TBF: TFI=21 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=21.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -1032,6 +1076,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=21 TLLI=0x00000000 DIR=DL STATE=NULL), 22 TBFs, USFs = 00, TFIs = 003fffff.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=21 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=21 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc0000015, partly confirmed
TBF(TFI=21 TLLI=0xc0000015 DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc0000015, IMSI '' -> '001001000000021'
@@ -1040,13 +1085,13 @@ TBF(TFI=21 TLLI=0xc0000015 DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=21 TLLI=0xc0000015 DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 32 31 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 01 5d 40 23 2b 2b 2b 2b
TBF(TFI=21 TLLI=0xc0000015 DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=22.
********** TBF starts here **********
-Allocating DL TBF: TFI=22 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=22.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -1058,6 +1103,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=22 TLLI=0x00000000 DIR=DL STATE=NULL), 23 TBFs, USFs = 00, TFIs = 007fffff.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=22 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=22 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc0000016, partly confirmed
TBF(TFI=22 TLLI=0xc0000016 DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc0000016, IMSI '' -> '001001000000022'
@@ -1066,13 +1112,13 @@ TBF(TFI=22 TLLI=0xc0000016 DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=22 TLLI=0xc0000016 DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 32 32 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 01 6d 80 23 2b 2b 2b 2b
TBF(TFI=22 TLLI=0xc0000016 DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=23.
********** TBF starts here **********
-Allocating DL TBF: TFI=23 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=23.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -1084,6 +1130,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=23 TLLI=0x00000000 DIR=DL STATE=NULL), 24 TBFs, USFs = 00, TFIs = 00ffffff.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=23 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=23 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc0000017, partly confirmed
TBF(TFI=23 TLLI=0xc0000017 DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc0000017, IMSI '' -> '001001000000023'
@@ -1092,13 +1139,13 @@ TBF(TFI=23 TLLI=0xc0000017 DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=23 TLLI=0xc0000017 DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 32 33 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 01 7d c0 23 2b 2b 2b 2b
TBF(TFI=23 TLLI=0xc0000017 DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=24.
********** TBF starts here **********
-Allocating DL TBF: TFI=24 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=24.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -1110,6 +1157,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=24 TLLI=0x00000000 DIR=DL STATE=NULL), 25 TBFs, USFs = 00, TFIs = 01ffffff.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=24 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=24 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc0000018, partly confirmed
TBF(TFI=24 TLLI=0xc0000018 DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc0000018, IMSI '' -> '001001000000024'
@@ -1118,13 +1166,13 @@ TBF(TFI=24 TLLI=0xc0000018 DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=24 TLLI=0xc0000018 DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 32 34 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 01 8e 00 23 2b 2b 2b 2b
TBF(TFI=24 TLLI=0xc0000018 DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=25.
********** TBF starts here **********
-Allocating DL TBF: TFI=25 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=25.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -1136,6 +1184,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=25 TLLI=0x00000000 DIR=DL STATE=NULL), 26 TBFs, USFs = 00, TFIs = 03ffffff.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=25 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=25 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc0000019, partly confirmed
TBF(TFI=25 TLLI=0xc0000019 DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc0000019, IMSI '' -> '001001000000025'
@@ -1144,13 +1193,13 @@ TBF(TFI=25 TLLI=0xc0000019 DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=25 TLLI=0xc0000019 DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 32 35 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 01 9e 40 23 2b 2b 2b 2b
TBF(TFI=25 TLLI=0xc0000019 DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=26.
********** TBF starts here **********
-Allocating DL TBF: TFI=26 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=26.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -1162,6 +1211,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=26 TLLI=0x00000000 DIR=DL STATE=NULL), 27 TBFs, USFs = 00, TFIs = 07ffffff.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=26 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=26 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc000001a, partly confirmed
TBF(TFI=26 TLLI=0xc000001a DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc000001a, IMSI '' -> '001001000000026'
@@ -1170,13 +1220,13 @@ TBF(TFI=26 TLLI=0xc000001a DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=26 TLLI=0xc000001a DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 32 36 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 01 ae 80 23 2b 2b 2b 2b
TBF(TFI=26 TLLI=0xc000001a DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=27.
********** TBF starts here **********
-Allocating DL TBF: TFI=27 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=27.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -1188,6 +1238,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=27 TLLI=0x00000000 DIR=DL STATE=NULL), 28 TBFs, USFs = 00, TFIs = 0fffffff.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=27 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=27 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc000001b, partly confirmed
TBF(TFI=27 TLLI=0xc000001b DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc000001b, IMSI '' -> '001001000000027'
@@ -1196,13 +1247,13 @@ TBF(TFI=27 TLLI=0xc000001b DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=27 TLLI=0xc000001b DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 32 37 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 01 be c0 23 2b 2b 2b 2b
TBF(TFI=27 TLLI=0xc000001b DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=28.
********** TBF starts here **********
-Allocating DL TBF: TFI=28 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=28.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -1214,6 +1265,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=28 TLLI=0x00000000 DIR=DL STATE=NULL), 29 TBFs, USFs = 00, TFIs = 1fffffff.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=28 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=28 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc000001c, partly confirmed
TBF(TFI=28 TLLI=0xc000001c DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc000001c, IMSI '' -> '001001000000028'
@@ -1222,13 +1274,13 @@ TBF(TFI=28 TLLI=0xc000001c DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=28 TLLI=0xc000001c DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 32 38 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 01 cf 00 23 2b 2b 2b 2b
TBF(TFI=28 TLLI=0xc000001c DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=29.
********** TBF starts here **********
-Allocating DL TBF: TFI=29 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=29.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -1240,6 +1292,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=29 TLLI=0x00000000 DIR=DL STATE=NULL), 30 TBFs, USFs = 00, TFIs = 3fffffff.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=29 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=29 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc000001d, partly confirmed
TBF(TFI=29 TLLI=0xc000001d DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc000001d, IMSI '' -> '001001000000029'
@@ -1248,13 +1301,13 @@ TBF(TFI=29 TLLI=0xc000001d DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=29 TLLI=0xc000001d DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 32 39 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 01 df 40 23 2b 2b 2b 2b
TBF(TFI=29 TLLI=0xc000001d DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=30.
********** TBF starts here **********
-Allocating DL TBF: TFI=30 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=30.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -1266,6 +1319,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=30 TLLI=0x00000000 DIR=DL STATE=NULL), 31 TBFs, USFs = 00, TFIs = 7fffffff.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=30 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=30 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc000001e, partly confirmed
TBF(TFI=30 TLLI=0xc000001e DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc000001e, IMSI '' -> '001001000000030'
@@ -1274,13 +1328,13 @@ TBF(TFI=30 TLLI=0xc000001e DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=30 TLLI=0xc000001e DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 33 30 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 01 ef 80 23 2b 2b 2b 2b
TBF(TFI=30 TLLI=0xc000001e DIR=DL STATE=ASSIGN) append
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=31.
********** TBF starts here **********
-Allocating DL TBF: TFI=31 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=31.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -1292,6 +1346,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=31 TLLI=0x00000000 DIR=DL STATE=NULL), 32 TBFs, USFs = 00, TFIs = ffffffff.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=31 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=31 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc000001f, partly confirmed
TBF(TFI=31 TLLI=0xc000001f DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc000001f, IMSI '' -> '001001000000031'
@@ -1300,16 +1355,23 @@ TBF(TFI=31 TLLI=0xc000001f DIR=DL STATE=NULL) changes state from NULL to ASSIGN
TX: START TBF(TFI=31 TLLI=0xc000001f DIR=DL STATE=ASSIGN) Immediate Assignment Downlink (PCH)
Sending data request: trx=0 ts=0 sapi=3 arfcn=0 fn=0 block=0 data=30 33 31 2d 06 3f 30 0c 00 00 7d 80 00 00 00 dc 00 00 01 ff c0 23 2b 2b 2b 2b
TBF(TFI=31 TLLI=0xc000001f DIR=DL STATE=ASSIGN) append
+********** TBF starts here **********
+Allocating DL TBF: MS_CLASS=45
+Creating MS object, TLLI = 0x00000000
+Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
+Slot Allocation (Algorithm A) for class 45
Searching for first unallocated TFI: TRX=0 first TS=4
No TFI available.
+- Failed to allocate a TFI
No PDCH resource
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=0.
+Destroying MS object, TLLI = 0x00000000
********** TBF starts here **********
-Allocating DL TBF: TFI=0 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Creating MS object, TLLI = 0x00000000
Modifying MS object, TLLI = 0x00000000, MS class 0 -> 45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=0.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -1321,6 +1383,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL), 1 TBFs, USFs = 00, TFIs = 00000001.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL)
+Allocated TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
The MS object cannot fully confirm an unexpected TLLI: 0xc0123456, partly confirmed
TBF(TFI=0 TLLI=0xc0123456 DIR=DL STATE=NULL) [DOWNLINK] START
Modifying MS object, TLLI = 0xc0123456, IMSI '' -> '001001000123456'
@@ -1334,11 +1397,11 @@ TBF(TFI=0 TLLI=0xc0123456 DIR=DL STATE=ASSIGN) free
PDCH(TS 4, TRX 0): Detaching TBF(TFI=0 TLLI=0xc0123456 DIR=DL STATE=ASSIGN), 0 TBFs, USFs = 00, TFIs = 00000000.
Detaching TBF from MS object, TLLI = 0xc0123456, TBF = TBF(TFI=0 TLLI=0xc0123456 DIR=DL STATE=ASSIGN)
********** TBF ends here **********
-Searching for first unallocated TFI: TRX=0 first TS=4
- Found TFI=0.
********** TBF starts here **********
-Allocating DL TBF: TFI=0 TRX=0 MS_CLASS=45
+Allocating DL TBF: MS_CLASS=45
Slot Allocation (Algorithm A) for class 45
+Searching for first unallocated TFI: TRX=0 first TS=4
+ Found TFI=0.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -1350,6 +1413,7 @@ Slot Allocation (Algorithm A) for class 45
PDCH(TS 4, TRX 0): Attaching TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL), 1 TBFs, USFs = 00, TFIs = 00000001.
- Setting Control TS 4
Attaching TBF to MS object, TLLI = 0xc0123456, TBF = TBF(TFI=0 TLLI=0xc0123456 DIR=DL STATE=NULL)
+Allocated TBF(TFI=0 TLLI=0xc0123456 DIR=DL STATE=NULL): trx = 0, ul_slots = 10, dl_slots = 10
TBF(TFI=0 TLLI=0xc0123456 DIR=DL STATE=NULL) [DOWNLINK] START
Send dowlink assignment for TBF(TFI=0 TLLI=0xc0123456 DIR=DL STATE=NULL) on PCH, no TBF exist (IMSI=001001000123456)
TBF(TFI=0 TLLI=0xc0123456 DIR=DL STATE=NULL) changes state from NULL to ASSIGN
@@ -1386,12 +1450,12 @@ MSG = 07 01 04 4d 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03
Searching for first unallocated TFI: TRX=0 first TS=7
Found TFI=0.
MS requests UL TBF on RACH, so we provide one:
-Searching for first unallocated TFI: TRX=0 first TS=7
- Found TFI=0.
********** TBF starts here **********
-Allocating UL TBF: TFI=0 TRX=0 MS_CLASS=0
+Allocating UL TBF: MS_CLASS=0
Creating MS object, TLLI = 0x00000000
Slot Allocation (Algorithm A) for class 0
+Searching for first unallocated TFI: TRX=0 first TS=7
+ Found TFI=0.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -1403,6 +1467,7 @@ Slot Allocation (Algorithm A) for class 0
PDCH(TS 7, TRX 0): Attaching TBF(TFI=0 TLLI=0x00000000 DIR=UL STATE=NULL), 1 TBFs, USFs = 01, TFIs = 00000001.
- Setting Control TS 7
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 DIR=UL STATE=NULL)
+Allocated TBF(TFI=0 TLLI=0x00000000 DIR=UL STATE=NULL): trx = 0, ul_slots = 80, dl_slots = 00
Modifying MS object, TLLI = 0x00000000, TA 0 -> 7
TBF(TFI=0 TLLI=0x00000000 DIR=UL STATE=NULL) changes state from NULL to FLOW
TBF(TFI=0 TLLI=0x00000000 DIR=UL STATE=FLOW) starting timer 3169.
@@ -1443,12 +1508,12 @@ Searching for first unallocated TFI: TRX=0 first TS=7
------------------------- RX : Uplink Control Block -------------------------
MS requests UL TBF in packet resource request of single block, so we provide one:
MS does not give us a class.
-Searching for first unallocated TFI: TRX=0 first TS=7
- Found TFI=0.
********** TBF starts here **********
-Allocating UL TBF: TFI=0 TRX=0 MS_CLASS=0
+Allocating UL TBF: MS_CLASS=0
Creating MS object, TLLI = 0x00000000
Slot Allocation (Algorithm A) for class 0
+Searching for first unallocated TFI: TRX=0 first TS=7
+ Found TFI=0.
- Skipping TS 0, because not enabled
- Skipping TS 1, because not enabled
- Skipping TS 2, because not enabled
@@ -1460,6 +1525,7 @@ Slot Allocation (Algorithm A) for class 0
PDCH(TS 7, TRX 0): Attaching TBF(TFI=0 TLLI=0x00000000 DIR=UL STATE=NULL), 1 TBFs, USFs = 01, TFIs = 00000001.
- Setting Control TS 7
Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 DIR=UL STATE=NULL)
+Allocated TBF(TFI=0 TLLI=0x00000000 DIR=UL STATE=NULL): trx = 0, ul_slots = 80, dl_slots = 00
TBF(TFI=0 TLLI=0x00000000 DIR=UL STATE=NULL) changes state from NULL to ASSIGN
TBF(TFI=0 TLLI=0x00000000 DIR=UL STATE=ASSIGN) starting timer 3169.
Modifying MS object, UL TLLI: 0x00000000 -> 0xf1223344, not yet confirmed