Hello Jenkins Builder,

I'd like you to reexamine a change.  Please visit

    https://gerrit.osmocom.org/5862

to look at the new patch set (#2).

TBF: make UL/DL state internal

* add functions/macros for setting TBF's UL/DL state
* add functions for checking TBF's UL/DL state
* move pre-free check into separate function
* update TBF test output due to extended state transition logging

N. B: this should not be confused with TBF-UL or TBF-DL state.

Change-Id: Idcbf5775d17b1247f2ed01788f9b0788ce66e871
Related: OS#1539
---
M src/bts.cpp
M src/gprs_rlcmac_sched.cpp
M src/tbf.cpp
M src/tbf.h
M src/tbf_dl.cpp
M tests/tbf/TbfTest.cpp
M tests/tbf/TbfTest.err
7 files changed, 170 insertions(+), 44 deletions(-)


  git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/62/5862/2

diff --git a/src/bts.cpp b/src/bts.cpp
index 873af73..f614c1a 100644
--- a/src/bts.cpp
+++ b/src/bts.cpp
@@ -1022,11 +1022,11 @@
                tbf_free(tbf);
                return;
        }
-       if (tbf->dl_ass_state == GPRS_RLCMAC_DL_ASS_WAIT_ACK) {
+       if (tbf->dl_ass_state_is(GPRS_RLCMAC_DL_ASS_WAIT_ACK)) {
                LOGPTBF(tbf, LOGL_DEBUG, "[UPLINK] DOWNLINK ASSIGNED\n");
                /* reset N3105 */
                tbf->n3105 = 0;
-               tbf->dl_ass_state = GPRS_RLCMAC_DL_ASS_NONE;
+               TBF_SET_ASS_STATE_DL(tbf, GPRS_RLCMAC_DL_ASS_NONE);
 
                new_tbf = tbf->ms() ? tbf->ms()->dl_tbf() : NULL;
                if (!new_tbf) {
@@ -1054,11 +1054,11 @@
                tbf_assign_control_ts(new_tbf);
                return;
        }
-       if (tbf->ul_ass_state == GPRS_RLCMAC_UL_ASS_WAIT_ACK) {
+       if (tbf->ul_ass_state_is(GPRS_RLCMAC_UL_ASS_WAIT_ACK)) {
                LOGPTBF(tbf, LOGL_DEBUG, "[DOWNLINK] UPLINK ASSIGNED\n");
                /* reset N3105 */
                tbf->n3105 = 0;
-               tbf->ul_ass_state = GPRS_RLCMAC_UL_ASS_NONE;
+               TBF_SET_ASS_STATE_UL(tbf, GPRS_RLCMAC_UL_ASS_NONE);
 
                new_tbf = tbf->ms() ? tbf->ms()->ul_tbf() : NULL;
                if (!new_tbf) {
@@ -1156,10 +1156,10 @@
        /* schedule uplink assignment or reject */
        if (ul_tbf) {
                LOGP(DRLCMAC, LOGL_DEBUG, "MS requests UL TBF in ack message, 
so we provide one:\n");
-               tbf->ul_ass_state = GPRS_RLCMAC_UL_ASS_SEND_ASS;
+               TBF_SET_ASS_STATE_UL(tbf, GPRS_RLCMAC_UL_ASS_SEND_ASS);
        } else {
                LOGP(DRLCMAC, LOGL_DEBUG, "MS requests UL TBF in ack message, 
so we packet access reject:\n");
-               tbf->ul_ass_state = GPRS_RLCMAC_UL_ASS_SEND_ASS_REJ;
+               TBF_SET_ASS_STATE_UL(tbf, GPRS_RLCMAC_UL_ASS_SEND_ASS_REJ);
        }
 }
 
@@ -1403,7 +1403,7 @@
 
                ul_tbf->control_ts = ts_no;
                /* schedule uplink assignment */
-               ul_tbf->ul_ass_state = GPRS_RLCMAC_UL_ASS_SEND_ASS;
+               TBF_SET_ASS_STATE_UL(ul_tbf, GPRS_RLCMAC_UL_ASS_SEND_ASS);
 
                /* get capabilities */
                if (ul_tbf->ms())
diff --git a/src/gprs_rlcmac_sched.cpp b/src/gprs_rlcmac_sched.cpp
index 8925032..a87217f 100644
--- a/src/gprs_rlcmac_sched.cpp
+++ b/src/gprs_rlcmac_sched.cpp
@@ -54,11 +54,10 @@
                        *poll_tbf = ul_tbf;
                if (ul_tbf->ul_ack_state == GPRS_RLCMAC_UL_ACK_SEND_ACK)
                        *ul_ack_tbf = ul_tbf;
-               if (ul_tbf->dl_ass_state == GPRS_RLCMAC_DL_ASS_SEND_ASS)
+               if (ul_tbf->dl_ass_state_is(GPRS_RLCMAC_DL_ASS_SEND_ASS))
                        *dl_ass_tbf = ul_tbf;
-               if (ul_tbf->ul_ass_state == GPRS_RLCMAC_UL_ASS_SEND_ASS
-                       || ul_tbf->ul_ass_state ==
-                               GPRS_RLCMAC_UL_ASS_SEND_ASS_REJ)
+               if (ul_tbf->ul_ass_state_is(GPRS_RLCMAC_UL_ASS_SEND_ASS)
+                   || ul_tbf->ul_ass_state_is(GPRS_RLCMAC_UL_ASS_SEND_ASS_REJ))
                        *ul_ass_tbf = ul_tbf;
 /* FIXME: Is this supposed to be fair? The last TBF for each wins? Maybe use 
llist_add_tail and skip once we have all
 states? */
@@ -73,10 +72,10 @@
                if (dl_tbf->poll_state == GPRS_RLCMAC_POLL_SCHED
                 && dl_tbf->poll_fn == poll_fn)
                        *poll_tbf = dl_tbf;
-               if (dl_tbf->dl_ass_state == GPRS_RLCMAC_DL_ASS_SEND_ASS)
+               if (dl_tbf->dl_ass_state_is(GPRS_RLCMAC_DL_ASS_SEND_ASS))
                        *dl_ass_tbf = dl_tbf;
-               if (dl_tbf->ul_ass_state == GPRS_RLCMAC_UL_ASS_SEND_ASS
-                || dl_tbf->ul_ass_state == GPRS_RLCMAC_UL_ASS_SEND_ASS_REJ)
+               if (dl_tbf->ul_ass_state_is(GPRS_RLCMAC_UL_ASS_SEND_ASS)
+                   || dl_tbf->ul_ass_state_is(GPRS_RLCMAC_UL_ASS_SEND_ASS_REJ))
                        *ul_ass_tbf = dl_tbf;
        }
 
@@ -139,13 +138,11 @@
                 * because they may kill the TBF when the CONTROL ACK is
                 * received, thus preventing the others from being processed.
                 */
-               if (tbf == ul_ass_tbf && tbf->ul_ass_state ==
-                               GPRS_RLCMAC_UL_ASS_SEND_ASS_REJ)
+               if (tbf == ul_ass_tbf && 
tbf->ul_ass_state_is(GPRS_RLCMAC_UL_ASS_SEND_ASS_REJ))
                        msg = ul_ass_tbf->create_packet_access_reject();
                else if (tbf == ul_ass_tbf && tbf->direction ==
                                GPRS_RLCMAC_DL_TBF)
-                       if (tbf->ul_ass_state ==
-                                       GPRS_RLCMAC_UL_ASS_SEND_ASS_REJ)
+                       if 
(tbf->ul_ass_state_is(GPRS_RLCMAC_UL_ASS_SEND_ASS_REJ))
                                msg = ul_ass_tbf->create_packet_access_reject();
                        else
                                msg = ul_ass_tbf->create_ul_ass(fn, ts);
diff --git a/src/tbf.cpp b/src/tbf.cpp
index 699f960..0cb54bc 100644
--- a/src/tbf.cpp
+++ b/src/tbf.cpp
@@ -165,8 +165,6 @@
        first_ts(0),
        first_common_ts(0),
        control_ts(0xff),
-       dl_ass_state(GPRS_RLCMAC_DL_ASS_NONE),
-       ul_ass_state(GPRS_RLCMAC_UL_ASS_NONE),
        ul_ack_state(GPRS_RLCMAC_UL_ACK_NONE),
        poll_state(GPRS_RLCMAC_POLL_NONE),
        poll_fn(0),
@@ -185,6 +183,8 @@
        m_ta(GSM48_TA_INVALID),
        m_ms_class(0),
        state(GPRS_RLCMAC_NULL),
+       dl_ass_state(GPRS_RLCMAC_DL_ASS_NONE),
+       ul_ass_state(GPRS_RLCMAC_UL_ASS_NONE),
        m_list(this),
        m_ms_list(this),
        m_egprs_enabled(false)
@@ -452,21 +452,7 @@
        }
 
        LOGPTBF(tbf, LOGL_INFO, "free\n");
-       if (tbf->ul_ass_state != GPRS_RLCMAC_UL_ASS_NONE)
-               LOGPTBF(tbf, LOGL_ERROR, "Software error: Pending uplink "
-                    "assignment in state %s. This may not happen, because the "
-                       "assignment message never gets transmitted. Please "
-                       "be sure not to free in this state. PLEASE FIX!\n",
-                    get_value_string(gprs_rlcmac_tbf_ul_ass_state_names,
-                                     tbf->ul_ass_state));
-       if (tbf->dl_ass_state != GPRS_RLCMAC_DL_ASS_NONE)
-               LOGPTBF(tbf, LOGL_ERROR, "Software error: Pending downlink "
-                    "assignment in state %s. This may not happen, because the "
-                       "assignment message never gets transmitted. Please "
-                       "be sure not to free in this state. PLEASE FIX!\n",
-                    get_value_string(gprs_rlcmac_tbf_dl_ass_state_names,
-                                     tbf->dl_ass_state));
-
+       tbf->check_pending_ass();
        tbf->stop_timers("freeing TBF");
        /* TODO: Could/Should generate  bssgp_tx_llc_discarded */
        tbf_unlink_pdch(tbf);
@@ -1513,7 +1499,7 @@
 
        ul_tbf->set_ms(ms);
        ul_tbf->update_ms(tlli, GPRS_RLCMAC_UL_TBF);
-       ul_tbf->ul_ass_state = GPRS_RLCMAC_UL_ASS_SEND_ASS_REJ;
+       TBF_SET_ASS_STATE_UL(ul_tbf, GPRS_RLCMAC_UL_ASS_SEND_ASS_REJ);
        ul_tbf->control_ts = ts;
        ul_tbf->trx = trx;
        ul_tbf->m_ctrs = rate_ctr_group_alloc(ul_tbf, &tbf_ctrg_desc, 0);
diff --git a/src/tbf.h b/src/tbf.h
index 244ddd4..2d51945 100644
--- a/src/tbf.h
+++ b/src/tbf.h
@@ -181,6 +181,8 @@
 #define T_START(tbf, t, sec, usec, r, f) tbf->t_start(t, sec, usec, r, f, 
__FILE__, __LINE__)
 
 #define TBF_SET_STATE(t, st) do { t->set_state(st, __FILE__, __LINE__); } 
while(0)
+#define TBF_SET_ASS_STATE_DL(t, st) do { t->set_ass_state_dl(st, __FILE__, 
__LINE__); } while(0)
+#define TBF_SET_ASS_STATE_UL(t, st) do { t->set_ass_state_ul(st, __FILE__, 
__LINE__); } while(0)
 #define TBF_SET_ASS_ON(t, fl, chk) do { t->set_assigned_on(fl, chk, __FILE__, 
__LINE__); } while(0)
 
 struct gprs_rlcmac_tbf {
@@ -191,7 +193,12 @@
 
        bool state_is(enum gprs_rlcmac_tbf_state rhs) const;
        bool state_is_not(enum gprs_rlcmac_tbf_state rhs) const;
+       bool dl_ass_state_is(enum gprs_rlcmac_tbf_dl_ass_state rhs) const;
+       bool ul_ass_state_is(enum gprs_rlcmac_tbf_ul_ass_state rhs) const;
        void set_state(enum gprs_rlcmac_tbf_state new_state, const char *file, 
int line);
+       void set_ass_state_dl(enum gprs_rlcmac_tbf_dl_ass_state new_state, 
const char *file, int line);
+       void set_ass_state_ul(enum gprs_rlcmac_tbf_ul_ass_state new_state, 
const char *file, int line);
+       void check_pending_ass();
        bool check_n_clear(uint8_t state_flag);
        void set_assigned_on(uint8_t state_flag, bool check_ccch, const char 
*file, int line);
        const char *state_name() const;
@@ -272,8 +279,6 @@
 
        gprs_llc m_llc;
 
-       enum gprs_rlcmac_tbf_dl_ass_state dl_ass_state;
-       enum gprs_rlcmac_tbf_ul_ass_state ul_ass_state;
        enum gprs_rlcmac_tbf_ul_ack_state ul_ack_state;
 
        enum gprs_rlcmac_tbf_poll_state poll_state;
@@ -336,6 +341,8 @@
 
 private:
        enum gprs_rlcmac_tbf_state state;
+       enum gprs_rlcmac_tbf_dl_ass_state dl_ass_state;
+       enum gprs_rlcmac_tbf_ul_ass_state ul_ass_state;
        LListHead<gprs_rlcmac_tbf> m_list;
        LListHead<gprs_rlcmac_tbf> m_ms_list;
        bool m_egprs_enabled;
@@ -368,6 +375,16 @@
        return state == rhs;
 }
 
+inline bool gprs_rlcmac_tbf::dl_ass_state_is(enum gprs_rlcmac_tbf_dl_ass_state 
rhs) const
+{
+       return dl_ass_state == rhs;
+}
+
+inline bool gprs_rlcmac_tbf::ul_ass_state_is(enum gprs_rlcmac_tbf_ul_ass_state 
rhs) const
+{
+       return ul_ass_state == rhs;
+}
+
 inline bool gprs_rlcmac_tbf::state_is_not(enum gprs_rlcmac_tbf_state rhs) const
 {
        return state != rhs;
@@ -399,6 +416,39 @@
        state = new_state;
 }
 
+inline void gprs_rlcmac_tbf::set_ass_state_dl(enum 
gprs_rlcmac_tbf_dl_ass_state new_state, const char *file, int line)
+{
+       LOGPSRC(DTBF, LOGL_DEBUG, file, line, "%s changes DL ASS state from %s 
to %s\n",
+               tbf_name(this),
+               get_value_string(gprs_rlcmac_tbf_dl_ass_state_names, 
dl_ass_state),
+               get_value_string(gprs_rlcmac_tbf_dl_ass_state_names, 
new_state));
+       dl_ass_state = new_state;
+}
+
+inline void gprs_rlcmac_tbf::set_ass_state_ul(enum 
gprs_rlcmac_tbf_ul_ass_state new_state, const char *file, int line)
+{
+       LOGPSRC(DTBF, LOGL_DEBUG, file, line, "%s changes UL ASS state from %s 
to %s\n",
+               tbf_name(this),
+               get_value_string(gprs_rlcmac_tbf_ul_ass_state_names, 
ul_ass_state),
+               get_value_string(gprs_rlcmac_tbf_ul_ass_state_names, 
new_state));
+       ul_ass_state = new_state;
+}
+
+inline void gprs_rlcmac_tbf::check_pending_ass()
+{
+       if (ul_ass_state != GPRS_RLCMAC_UL_ASS_NONE)
+               LOGPTBF(this, LOGL_ERROR, "FIXME: Software error: Pending 
uplink assignment in state %s. "
+                       "This may not happen, because the assignment message 
never gets transmitted. "
+                       "Please be sure not to free in this state. PLEASE 
FIX!\n",
+                       get_value_string(gprs_rlcmac_tbf_ul_ass_state_names, 
ul_ass_state));
+
+       if (dl_ass_state != GPRS_RLCMAC_DL_ASS_NONE)
+               LOGPTBF(this, LOGL_ERROR, "FIXME: Software error: Pending 
downlink assignment in state %s. "
+                       "This may not happen, because the assignment message 
never gets transmitted. "
+                       "Please be sure not to free in this state. PLEASE 
FIX!\n",
+                       get_value_string(gprs_rlcmac_tbf_dl_ass_state_names, 
dl_ass_state));
+}
+
 inline bool gprs_rlcmac_tbf::check_n_clear(uint8_t state_flag)
 {
        if ((state_flags & (1 << state_flag))) {
diff --git a/src/tbf_dl.cpp b/src/tbf_dl.cpp
index 9a0bf78..fdbbd16 100644
--- a/src/tbf_dl.cpp
+++ b/src/tbf_dl.cpp
@@ -483,7 +483,7 @@
        /* check for downlink tbf:  */
        if (old_tbf) {
                LOGPTBFDL(this, LOGL_DEBUG, "Send dowlink assignment on PACCH, 
because %s exists\n", old_tbf->name());
-               old_tbf->dl_ass_state = GPRS_RLCMAC_DL_ASS_SEND_ASS;
+               TBF_SET_ASS_STATE_DL(old_tbf, GPRS_RLCMAC_DL_ASS_SEND_ASS);
                old_tbf->was_releasing = 
old_tbf->state_is(GPRS_RLCMAC_WAIT_RELEASE);
 
                /* change state */
diff --git a/tests/tbf/TbfTest.cpp b/tests/tbf/TbfTest.cpp
index 9e21c73..968f9eb 100644
--- a/tests/tbf/TbfTest.cpp
+++ b/tests/tbf/TbfTest.cpp
@@ -175,7 +175,7 @@
        check_tbf(dl_tbf);
 
        /* "Establish" the DL TBF */
-       dl_tbf->dl_ass_state = GPRS_RLCMAC_DL_ASS_SEND_ASS;
+       TBF_SET_ASS_STATE_DL(dl_tbf, GPRS_RLCMAC_DL_ASS_SEND_ASS);
        TBF_SET_STATE(dl_tbf, GPRS_RLCMAC_FLOW);
        dl_tbf->m_wait_confirm = 0;
        check_tbf(dl_tbf);
@@ -276,7 +276,7 @@
        OSMO_ASSERT(new_tbf != dl_tbf);
        OSMO_ASSERT(new_tbf->tfi() == 1);
        check_tbf(dl_tbf);
-       dl_tbf->dl_ass_state = GPRS_RLCMAC_DL_ASS_NONE;
+       TBF_SET_ASS_STATE_DL(dl_tbf, GPRS_RLCMAC_DL_ASS_NONE);
        if (test_mode == TEST_MODE_REVERSE_FREE) {
                GprsMs::Guard guard(ms);
                tbf_free(new_tbf);
@@ -365,7 +365,7 @@
 
        /* Clean up and ensure tbfs are in the correct state */
        OSMO_ASSERT(dl_tbf->state_is(GPRS_RLCMAC_WAIT_RELEASE));
-       dl_tbf->dl_ass_state = GPRS_RLCMAC_DL_ASS_NONE;
+       TBF_SET_ASS_STATE_DL(dl_tbf, GPRS_RLCMAC_DL_ASS_NONE);
        check_tbf(dl_tbf);
        tbf_free(dl_tbf);
        printf("=== end %s ===\n", __func__);
@@ -2699,7 +2699,7 @@
 
        /* Clean up and ensure tbfs are in the correct state */
        OSMO_ASSERT(dl_tbf->state_is(GPRS_RLCMAC_WAIT_RELEASE));
-       dl_tbf->dl_ass_state = GPRS_RLCMAC_DL_ASS_NONE;
+       TBF_SET_ASS_STATE_DL(dl_tbf, GPRS_RLCMAC_DL_ASS_NONE);
        check_tbf(dl_tbf);
        tbf_free(dl_tbf);
 }
@@ -2748,7 +2748,7 @@
 
        /* Clean up and ensure tbfs are in the correct state */
        OSMO_ASSERT(dl_tbf->state_is(GPRS_RLCMAC_WAIT_RELEASE));
-       dl_tbf->dl_ass_state = GPRS_RLCMAC_DL_ASS_NONE;
+       TBF_SET_ASS_STATE_DL(dl_tbf, GPRS_RLCMAC_DL_ASS_NONE);
        check_tbf(dl_tbf);
        tbf_free(dl_tbf);
 
diff --git a/tests/tbf/TbfTest.err b/tests/tbf/TbfTest.err
index f0f67c0..29d718d 100644
--- a/tests/tbf/TbfTest.err
+++ b/tests/tbf/TbfTest.err
@@ -43,6 +43,7 @@
 PDCH(TS 4, TRX 0): Attaching TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL), 1 
TBFs, USFs = 00, TFIs = 00000001.
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=DL STATE=NULL)
 Modifying MS object, TLLI = 0x00000000, TA 220 -> 0
+TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly 
confirmed
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xffeeddcc DIR=DL 
STATE=FLOW) (TRX=0, TS=4)
 Sending data request: trx=0 ts=4 sapi=5 arfcn=0 fn=0 block=0 data=4f 08 20 00 
44 02 00 02 08 04 00 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
@@ -64,6 +65,8 @@
 - Assign downlink TS=4 TFI=1
 PDCH(TS 4, TRX 0): Attaching TBF(TFI=1 TLLI=0x00000000 DIR=DL STATE=NULL), 2 
TBFs, USFs = 00, TFIs = 00000003.
 Attaching TBF to MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=1 TLLI=0xffeeddcc 
DIR=DL STATE=NULL)
+TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT RELEASE) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_WAIT_ACK to GPRS_RLCMAC_DL_ASS_SEND_ASS
+TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT RELEASE) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_SEND_ASS to GPRS_RLCMAC_DL_ASS_NONE
 PDCH(TS 4, TRX 0): Detaching TBF(TFI=0 TLLI=0xffeeddcc DIR=DL 
STATE=RELEASING), 1 TBFs, USFs = 00, TFIs = 00000002.
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 
TLLI=0xffeeddcc DIR=DL STATE=RELEASING)
 PDCH(TS 4, TRX 0): Detaching TBF(TFI=1 TLLI=0xffeeddcc DIR=DL 
STATE=RELEASING), 0 TBFs, USFs = 00, TFIs = 00000000.
@@ -85,6 +88,7 @@
 PDCH(TS 4, TRX 0): Attaching TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL), 1 
TBFs, USFs = 00, TFIs = 00000001.
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=DL STATE=NULL)
 Modifying MS object, TLLI = 0x00000000, TA 220 -> 0
+TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly 
confirmed
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xffeeddcc DIR=DL 
STATE=FLOW) (TRX=0, TS=4)
 Sending data request: trx=0 ts=4 sapi=5 arfcn=0 fn=0 block=0 data=4f 08 20 00 
44 02 00 02 08 04 00 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
@@ -106,6 +110,8 @@
 - Assign downlink TS=4 TFI=1
 PDCH(TS 4, TRX 0): Attaching TBF(TFI=1 TLLI=0x00000000 DIR=DL STATE=NULL), 2 
TBFs, USFs = 00, TFIs = 00000003.
 Attaching TBF to MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=1 TLLI=0xffeeddcc 
DIR=DL STATE=NULL)
+TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT RELEASE) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_WAIT_ACK to GPRS_RLCMAC_DL_ASS_SEND_ASS
+TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT RELEASE) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_SEND_ASS to GPRS_RLCMAC_DL_ASS_NONE
 PDCH(TS 4, TRX 0): Detaching TBF(TFI=1 TLLI=0xffeeddcc DIR=DL 
STATE=RELEASING), 1 TBFs, USFs = 00, TFIs = 00000001.
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=1 
TLLI=0xffeeddcc DIR=DL STATE=RELEASING)
 PDCH(TS 4, TRX 0): Detaching TBF(TFI=0 TLLI=0xffeeddcc DIR=DL 
STATE=RELEASING), 0 TBFs, USFs = 00, TFIs = 00000000.
@@ -127,6 +133,7 @@
 PDCH(TS 4, TRX 0): Attaching TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL), 1 
TBFs, USFs = 00, TFIs = 00000001.
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=DL STATE=NULL)
 Modifying MS object, TLLI = 0x00000000, TA 220 -> 0
+TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly 
confirmed
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xffeeddcc DIR=DL 
STATE=FLOW) (TRX=0, TS=4)
 Sending data request: trx=0 ts=4 sapi=5 arfcn=0 fn=0 block=0 data=4f 08 20 00 
44 02 00 02 08 04 00 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
@@ -227,6 +234,7 @@
 -- Chunk with length 19 is less than remaining space (20): add length header 
to to delimit LLC frame
 -- Final block, so we done.
 Sending data request: trx=0 ts=4 sapi=5 arfcn=0 fn=203 block=11 data=07 01 2c 
4d 43 c0 01 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
+TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT RELEASE) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_WAIT_ACK to GPRS_RLCMAC_DL_ASS_NONE
 PDCH(TS 4, TRX 0): Detaching TBF(TFI=0 TLLI=0xffeeddcc DIR=DL 
STATE=RELEASING), 0 TBFs, USFs = 00, TFIs = 00000000.
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 
TLLI=0xffeeddcc DIR=DL STATE=RELEASING)
 Destroying MS object, TLLI = 0xffeeddcc
@@ -246,6 +254,7 @@
 PDCH(TS 4, TRX 0): Attaching TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL), 1 
TBFs, USFs = 00, TFIs = 00000001.
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=DL STATE=NULL)
 Modifying MS object, TLLI = 0x00000000, TA 220 -> 0
+TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 Searching for first unallocated TFI: TRX=0
  Found TFI=1.
 Creating MS object, TLLI = 0x00000000
@@ -262,6 +271,7 @@
 PDCH(TS 4, TRX 0): Attaching TBF(TFI=1 TLLI=0x00000000 DIR=DL STATE=NULL), 2 
TBFs, USFs = 00, TFIs = 00000003.
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=1 TLLI=0x00000000 
DIR=DL STATE=NULL)
 Modifying MS object, TLLI = 0x00000000, TA 220 -> 0
+TBF(TFI=1 TLLI=0x00000000 DIR=DL STATE=NULL) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 The MS object cannot fully confirm an unexpected TLLI: 0xf1000001, partly 
confirmed
 The MS object cannot fully confirm an unexpected TLLI: 0xf1000002, partly 
confirmed
 Modifying MS object, TLLI = 0xf1000001, IMSI '' -> '001001000000001'
@@ -936,11 +946,13 @@
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=UL STATE=NULL)
 Modifying MS object, UL TLLI: 0x00000000 -> 0xf1223344, not yet confirmed
 Modifying MS object, TLLI = 0xf1223344, TA 220 -> 7
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=ASSIGN) changes UL ASS state from 
GPRS_RLCMAC_UL_ASS_NONE to GPRS_RLCMAC_UL_ASS_SEND_ASS
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xf1223344 DIR=UL 
STATE=ASSIGN) (TRX=0, TS=7)
 Sending data request: trx=0 ts=7 sapi=5 arfcn=0 fn=2654270 block=8 data=4f 28 
5e 24 46 68 8f 1d 00 00 88 00 08 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
 Got RLC block, coding scheme: CS-1, length: 23 (23))
 +++++++++++++++++++++++++ RX : Uplink Control Block +++++++++++++++++++++++++
 ------------------------- RX : Uplink Control Block -------------------------
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=ASSIGN) changes UL ASS state from 
GPRS_RLCMAC_UL_ASS_WAIT_ACK to GPRS_RLCMAC_UL_ASS_NONE
 Got RLC block, coding scheme: CS-1, length: 23 (23))
   UL data: 3c 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
00 
 Got CS-1 RLC block: R=0, SI=0, TFI=0, CPS=0, RSB=0, rc=184
@@ -961,6 +973,7 @@
 Attaching TBF to MS object, TLLI = 0xf1223344, TBF = TBF(TFI=0 TLLI=0xf1223344 
DIR=DL STATE=NULL)
 Modifying MS object, TLLI: 0xf1223344 confirmed
 Modifying MS object, TLLI = 0xf1223344, IMSI '' -> '0011223344'
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=FLOW) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 Sending data request: trx=0 ts=7 sapi=5 arfcn=0 fn=2654218 block=8 data=47 94 
2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
 MS requests UL TBF on RACH, so we provide one: ra=0x73 Fn=2654167 qta=31 
is_11bit=0:
 MS requests single block allocation
@@ -989,11 +1002,13 @@
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=UL STATE=NULL)
 Modifying MS object, UL TLLI: 0x00000000 -> 0xf1223344, not yet confirmed
 Modifying MS object, TLLI = 0xf1223344, TA 220 -> 7
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=ASSIGN) changes UL ASS state from 
GPRS_RLCMAC_UL_ASS_NONE to GPRS_RLCMAC_UL_ASS_SEND_ASS
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xf1223344 DIR=UL 
STATE=ASSIGN) (TRX=0, TS=7)
 Sending data request: trx=0 ts=7 sapi=5 arfcn=0 fn=2654270 block=8 data=4f 28 
5e 24 46 68 8f 1d 00 00 88 00 08 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
 Got RLC block, coding scheme: CS-1, length: 23 (23))
 +++++++++++++++++++++++++ RX : Uplink Control Block +++++++++++++++++++++++++
 ------------------------- RX : Uplink Control Block -------------------------
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=ASSIGN) changes UL ASS state from 
GPRS_RLCMAC_UL_ASS_WAIT_ACK to GPRS_RLCMAC_UL_ASS_NONE
 Got RLC block, coding scheme: CS-1, length: 23 (23))
   UL data: 3c 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
00 
 Got CS-1 RLC block: R=0, SI=0, TFI=0, CPS=0, RSB=0, rc=184
@@ -1013,6 +1028,7 @@
 Attaching TBF to MS object, TLLI = 0xf1223344, TBF = TBF(TFI=0 TLLI=0xf1223344 
DIR=DL STATE=NULL)
 Modifying MS object, TLLI: 0xf1223344 confirmed
 Modifying MS object, TLLI = 0xf1223344, IMSI '' -> '0011223344'
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=FLOW) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 Old MS: TLLI = 0xf1223344, TA = 7, IMSI = 0011223344, LLC = 1
 Received RTS for PDCH: TRX=0 TS=7 FN=2654275 block_nr=9 scheduling USF=0 for 
required uplink resource of UL TFI=0
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xf1223344 DIR=UL 
STATE=FLOW) (TRX=0, TS=7)
@@ -1020,6 +1036,7 @@
 Got RLC block, coding scheme: CS-1, length: 23 (23))
 +++++++++++++++++++++++++ RX : Uplink Control Block +++++++++++++++++++++++++
 ------------------------- RX : Uplink Control Block -------------------------
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=FLOW) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_WAIT_ACK to GPRS_RLCMAC_DL_ASS_NONE
 Received RTS on disabled PDCH: TRX=0 TS=0
 Received RTS on disabled PDCH: TRX=0 TS=1
 Received RTS on disabled PDCH: TRX=0 TS=2
@@ -1062,12 +1079,14 @@
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=1 TLLI=0x00000000 
DIR=UL STATE=NULL)
 Modifying MS object, UL TLLI: 0x00000000 -> 0xf5667788, not yet confirmed
 Modifying MS object, TLLI = 0xf5667788, TA 220 -> 7
+TBF(TFI=1 TLLI=0xf5667788 DIR=UL STATE=ASSIGN) changes UL ASS state from 
GPRS_RLCMAC_UL_ASS_NONE to GPRS_RLCMAC_UL_ASS_SEND_ASS
 Received RTS for PDCH: TRX=0 TS=7 FN=2654335 block_nr=11 scheduling USF=0 for 
required uplink resource of UL TFI=0
 Scheduling control message at RTS for TBF(TFI=1 TLLI=0xf5667788 DIR=UL 
STATE=ASSIGN) (TRX=0, TS=7)
 Sending data request: trx=0 ts=7 sapi=5 arfcn=0 fn=2654335 block=11 data=48 28 
5e ac ce f1 0f 1d 00 00 88 40 09 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
 Got RLC block, coding scheme: CS-1, length: 23 (23))
 +++++++++++++++++++++++++ RX : Uplink Control Block +++++++++++++++++++++++++
 ------------------------- RX : Uplink Control Block -------------------------
+TBF(TFI=1 TLLI=0xf5667788 DIR=UL STATE=ASSIGN) changes UL ASS state from 
GPRS_RLCMAC_UL_ASS_WAIT_ACK to GPRS_RLCMAC_UL_ASS_NONE
 Got RLC block, coding scheme: CS-1, length: 23 (23))
   UL data: 3c 02 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
00 
 Got CS-1 RLC block: R=0, SI=0, TFI=1, CPS=0, RSB=0, rc=184
@@ -1108,11 +1127,13 @@
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=UL STATE=NULL)
 Modifying MS object, UL TLLI: 0x00000000 -> 0xf1223344, not yet confirmed
 Modifying MS object, TLLI = 0xf1223344, TA 220 -> 7
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=ASSIGN) changes UL ASS state from 
GPRS_RLCMAC_UL_ASS_NONE to GPRS_RLCMAC_UL_ASS_SEND_ASS
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xf1223344 DIR=UL 
STATE=ASSIGN) (TRX=0, TS=7)
 Sending data request: trx=0 ts=7 sapi=5 arfcn=0 fn=2654270 block=8 data=4f 28 
5e 24 46 68 83 1d 00 00 88 00 08 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
 Got RLC block, coding scheme: CS-1, length: 23 (23))
 +++++++++++++++++++++++++ RX : Uplink Control Block +++++++++++++++++++++++++
 ------------------------- RX : Uplink Control Block -------------------------
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=ASSIGN) changes UL ASS state from 
GPRS_RLCMAC_UL_ASS_WAIT_ACK to GPRS_RLCMAC_UL_ASS_NONE
 Got RLC block, coding scheme: CS-1, length: 23 (23))
   UL data: 3c 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
00 
 Got CS-1 RLC block: R=0, SI=0, TFI=0, CPS=0, RSB=0, rc=184
@@ -1132,6 +1153,7 @@
 Attaching TBF to MS object, TLLI = 0xf1223344, TBF = TBF(TFI=0 TLLI=0xf1223344 
DIR=DL STATE=NULL)
 Modifying MS object, TLLI: 0xf1223344 confirmed
 Modifying MS object, TLLI = 0xf1223344, IMSI '' -> '0011223344'
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=FLOW) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 Old MS: TLLI = 0xf1223344, TA = 7, IMSI = 0011223344, LLC = 2
 UL RSSI of TLLI=0xf1223344: 31 dBm
 PDCH(TS 7, TRX 0): Detaching TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=FLOW), 0 
TBFs, USFs = 00, TFIs = 00000000.
@@ -1162,11 +1184,13 @@
 - Assign uplink TS=7 TFI=0 USF=0
 PDCH(TS 7, TRX 0): Attaching TBF(TFI=0 TLLI=0x00000000 DIR=UL STATE=NULL), 1 
TBFs, USFs = 01, TFIs = 00000001.
 Attaching TBF to MS object, TLLI = 0xf1223344, TBF = TBF(TFI=0 TLLI=0xf1223344 
DIR=UL STATE=NULL)
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=ASSIGN) changes UL ASS state from 
GPRS_RLCMAC_UL_ASS_NONE to GPRS_RLCMAC_UL_ASS_SEND_ASS
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xf1223344 DIR=UL 
STATE=ASSIGN) (TRX=0, TS=7)
 Sending data request: trx=0 ts=7 sapi=5 arfcn=0 fn=2654327 block=9 data=4f 28 
5e 24 46 68 83 1d 00 00 88 00 08 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
 Got RLC block, coding scheme: CS-1, length: 23 (23))
 +++++++++++++++++++++++++ RX : Uplink Control Block +++++++++++++++++++++++++
 ------------------------- RX : Uplink Control Block -------------------------
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=ASSIGN) changes UL ASS state from 
GPRS_RLCMAC_UL_ASS_WAIT_ACK to GPRS_RLCMAC_UL_ASS_NONE
 Slot Allocation (Algorithm A) for class 1
 - Skipping TS 0, because not enabled
 - Skipping TS 1, because not enabled
@@ -1178,6 +1202,7 @@
 - Assign downlink TS=7 TFI=0
 PDCH(TS 7, TRX 0): Attaching TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL), 1 
TBFs, USFs = 01, TFIs = 00000001.
 Attaching TBF to MS object, TLLI = 0xf1223344, TBF = TBF(TFI=0 TLLI=0xf1223344 
DIR=DL STATE=NULL)
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=FLOW) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 Got RLC block, coding scheme: CS-1, length: 23 (23))
   UL data: 3c 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
00 
 Got CS-1 RLC block: R=0, SI=0, TFI=0, CPS=0, RSB=0, rc=184
@@ -1212,11 +1237,13 @@
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=UL STATE=NULL)
 Modifying MS object, UL TLLI: 0x00000000 -> 0xf1223344, not yet confirmed
 Modifying MS object, TLLI = 0xf1223344, TA 220 -> 7
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=ASSIGN) changes UL ASS state from 
GPRS_RLCMAC_UL_ASS_NONE to GPRS_RLCMAC_UL_ASS_SEND_ASS
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xf1223344 DIR=UL 
STATE=ASSIGN) (TRX=0, TS=7)
 Sending data request: trx=0 ts=7 sapi=5 arfcn=0 fn=2654270 block=8 data=4f 28 
5e 24 46 68 83 1d 00 00 88 00 08 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
 Got RLC block, coding scheme: CS-1, length: 23 (23))
 +++++++++++++++++++++++++ RX : Uplink Control Block +++++++++++++++++++++++++
 ------------------------- RX : Uplink Control Block -------------------------
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=ASSIGN) changes UL ASS state from 
GPRS_RLCMAC_UL_ASS_WAIT_ACK to GPRS_RLCMAC_UL_ASS_NONE
 Got RLC block, coding scheme: CS-1, length: 23 (23))
   UL data: 3c 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
00 
 Got CS-1 RLC block: R=0, SI=0, TFI=0, CPS=0, RSB=0, rc=184
@@ -1236,6 +1263,7 @@
 Attaching TBF to MS object, TLLI = 0xf1223344, TBF = TBF(TFI=0 TLLI=0xf1223344 
DIR=DL STATE=NULL)
 Modifying MS object, TLLI: 0xf1223344 confirmed
 Modifying MS object, TLLI = 0xf1223344, IMSI '' -> '0011223344'
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=FLOW) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 Old MS: TLLI = 0xf1223344, TA = 7, IMSI = 0011223344, LLC = 2
 UL RSSI of TLLI=0xf1223344: 31 dBm
 PDCH(TS 7, TRX 0): Detaching TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=FLOW), 0 
TBFs, USFs = 00, TFIs = 00000000.
@@ -1301,11 +1329,13 @@
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=UL STATE=NULL)
 Modifying MS object, UL TLLI: 0x00000000 -> 0xf1223344, not yet confirmed
 Modifying MS object, TLLI = 0xf1223344, TA 220 -> 7
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=ASSIGN) changes UL ASS state from 
GPRS_RLCMAC_UL_ASS_NONE to GPRS_RLCMAC_UL_ASS_SEND_ASS
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xf1223344 DIR=UL 
STATE=ASSIGN) (TRX=0, TS=7)
 Sending data request: trx=0 ts=7 sapi=5 arfcn=0 fn=2654270 block=8 data=4f 28 
5e 24 46 68 83 1d 00 00 88 00 08 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
 Got RLC block, coding scheme: CS-1, length: 23 (23))
 +++++++++++++++++++++++++ RX : Uplink Control Block +++++++++++++++++++++++++
 ------------------------- RX : Uplink Control Block -------------------------
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=ASSIGN) changes UL ASS state from 
GPRS_RLCMAC_UL_ASS_WAIT_ACK to GPRS_RLCMAC_UL_ASS_NONE
 Got RLC block, coding scheme: CS-1, length: 23 (23))
   UL data: 3c 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
00 
 Got CS-1 RLC block: R=0, SI=0, TFI=0, CPS=0, RSB=0, rc=184
@@ -1325,6 +1355,7 @@
 Attaching TBF to MS object, TLLI = 0xf1223344, TBF = TBF(TFI=0 TLLI=0xf1223344 
DIR=DL STATE=NULL)
 Modifying MS object, TLLI: 0xf1223344 confirmed
 Modifying MS object, TLLI = 0xf1223344, IMSI '' -> '0011223344'
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=FLOW) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 Old MS: TLLI = 0xf1223344, TA = 7, IMSI = 0011223344, LLC = 40
 Received RTS for PDCH: TRX=0 TS=7 FN=2654275 block_nr=9 scheduling USF=0 for 
required uplink resource of UL TFI=0
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xf1223344 DIR=UL 
STATE=FLOW) (TRX=0, TS=7)
@@ -1332,6 +1363,7 @@
 Got RLC block, coding scheme: CS-1, length: 23 (23))
 +++++++++++++++++++++++++ RX : Uplink Control Block +++++++++++++++++++++++++
 ------------------------- RX : Uplink Control Block -------------------------
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=FLOW) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_WAIT_ACK to GPRS_RLCMAC_DL_ASS_NONE
 Received RTS on disabled PDCH: TRX=0 TS=0
 Received RTS on disabled PDCH: TRX=0 TS=1
 Received RTS on disabled PDCH: TRX=0 TS=2
@@ -1723,12 +1755,14 @@
 - Assign downlink TS=7 TFI=1
 PDCH(TS 7, TRX 0): Attaching TBF(TFI=1 TLLI=0x00000000 DIR=DL STATE=NULL), 2 
TBFs, USFs = 01, TFIs = 00000003.
 Attaching TBF to MS object, TLLI = 0xf1223344, TBF = TBF(TFI=1 TLLI=0xf1223344 
DIR=DL STATE=NULL)
+TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=WAIT RELEASE) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 Received RTS for PDCH: TRX=0 TS=7 FN=2654400 block_nr=2 scheduling USF=0 for 
required uplink resource of UL TFI=0
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xf1223344 DIR=DL 
STATE=WAIT RELEASE) (TRX=0, TS=7)
 Sending data request: trx=0 ts=7 sapi=5 arfcn=0 fn=2654400 block=2 data=48 08 
20 08 0c 72 00 02 18 00 80 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
 Got RLC block, coding scheme: CS-1, length: 23 (23))
 +++++++++++++++++++++++++ RX : Uplink Control Block +++++++++++++++++++++++++
 ------------------------- RX : Uplink Control Block -------------------------
+TBF(TFI=0 TLLI=0xf1223344 DIR=DL STATE=WAIT RELEASE) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_WAIT_ACK to GPRS_RLCMAC_DL_ASS_NONE
 PDCH(TS 7, TRX 0): Detaching TBF(TFI=0 TLLI=0xf1223344 DIR=DL 
STATE=RELEASING), 1 TBFs, USFs = 01, TFIs = 00000002.
 Detaching TBF from MS object, TLLI = 0xf1223344, TBF = TBF(TFI=0 
TLLI=0xf1223344 DIR=DL STATE=RELEASING)
 Received RTS on disabled PDCH: TRX=0 TS=0
@@ -1955,12 +1989,14 @@
 ws(64)
 Modifying MS object, UL TLLI: 0x00000000 -> 0xf1223344, not yet confirmed
 Modifying MS object, TLLI = 0xf1223344, TA 220 -> 7
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=ASSIGN EGPRS) changes UL ASS state from 
GPRS_RLCMAC_UL_ASS_NONE to GPRS_RLCMAC_UL_ASS_SEND_ASS
 max_cs_ul cannot be derived (current UL CS: UNKNOWN)
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xf1223344 DIR=UL 
STATE=ASSIGN EGPRS) (TRX=0, TS=7)
 Sending data request: trx=0 ts=7 sapi=5 arfcn=0 fn=2654270 block=8 data=4f 28 
5e 24 46 68 90 f8 0a 39 00 00 88 00 08 2b 2b 2b 2b 2b 2b 2b 2b 
 Got RLC block, coding scheme: CS-1, length: 23 (23))
 +++++++++++++++++++++++++ RX : Uplink Control Block +++++++++++++++++++++++++
 ------------------------- RX : Uplink Control Block -------------------------
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=ASSIGN EGPRS) changes UL ASS state from 
GPRS_RLCMAC_UL_ASS_WAIT_ACK to GPRS_RLCMAC_UL_ASS_NONE
 Got RLC block, coding scheme: CS-1, length: 23 (23))
   UL data: 3c 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
00 
 Got CS-1 RLC block: R=0, SI=0, TFI=0, CPS=0, RSB=0, rc=184
@@ -1983,6 +2019,7 @@
 ws(64)
 Modifying MS object, TLLI: 0xf1223344 confirmed
 Modifying MS object, TLLI = 0xf1223344, IMSI '' -> '0011223344'
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=FLOW EGPRS) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 Sending data request: trx=0 ts=7 sapi=5 arfcn=0 fn=2654218 block=8 data=47 94 
2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
 MS requests UL TBF on RACH, so we provide one: ra=0x73 Fn=2654167 qta=31 
is_11bit=0:
 MS requests single block allocation
@@ -2014,12 +2051,14 @@
 ws(64)
 Modifying MS object, UL TLLI: 0x00000000 -> 0xf1223344, not yet confirmed
 Modifying MS object, TLLI = 0xf1223344, TA 220 -> 7
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=ASSIGN EGPRS) changes UL ASS state from 
GPRS_RLCMAC_UL_ASS_NONE to GPRS_RLCMAC_UL_ASS_SEND_ASS
 max_cs_ul cannot be derived (current UL CS: UNKNOWN)
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xf1223344 DIR=UL 
STATE=ASSIGN EGPRS) (TRX=0, TS=7)
 Sending data request: trx=0 ts=7 sapi=5 arfcn=0 fn=2654270 block=8 data=4f 28 
5e 24 46 68 90 f8 0a 39 00 00 88 00 08 2b 2b 2b 2b 2b 2b 2b 2b 
 Got RLC block, coding scheme: CS-1, length: 23 (23))
 +++++++++++++++++++++++++ RX : Uplink Control Block +++++++++++++++++++++++++
 ------------------------- RX : Uplink Control Block -------------------------
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=ASSIGN EGPRS) changes UL ASS state from 
GPRS_RLCMAC_UL_ASS_WAIT_ACK to GPRS_RLCMAC_UL_ASS_NONE
 Got RLC block, coding scheme: CS-1, length: 23 (23))
   UL data: 3c 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
00 
 Got CS-1 RLC block: R=0, SI=0, TFI=0, CPS=0, RSB=0, rc=184
@@ -2100,6 +2139,7 @@
 ws(64)
 Modifying MS object, TLLI: 0xf1223344 confirmed
 Modifying MS object, TLLI = 0xf1223344, IMSI '' -> '0011223344'
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=FLOW EGPRS) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 Creating MS object, TLLI = 0x00000000
@@ -2118,6 +2158,7 @@
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=DL STATE=NULL EGPRS)
 ws(64)
 Modifying MS object, TLLI = 0x00000000, TA 220 -> 0
+TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL EGPRS) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly 
confirmed
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xffeeddcc DIR=DL 
STATE=FLOW EGPRS) (TRX=0, TS=4)
 Sending data request: trx=0 ts=4 sapi=5 arfcn=0 fn=0 block=0 data=4f 08 20 00 
44 02 00 02 08 04 00 c0 03 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
@@ -2201,6 +2242,7 @@
 -- Chunk with length 14 is less than remaining space (15): add length header 
to to delimit LLC frame
 -- No space left, so we are done.
 Sending data request: trx=0 ts=4 sapi=5 arfcn=0 fn=108 block=1 data=07 00 06 
16 18 3a 02 02 02 02 02 02 86 80 03 56 56 56 56 56 56 56 56 56 56 56 00 
+TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT RELEASE EGPRS) changes DL ASS 
state from GPRS_RLCMAC_DL_ASS_WAIT_ACK to GPRS_RLCMAC_DL_ASS_NONE
 PDCH(TS 4, TRX 0): Detaching TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING 
EGPRS), 0 TBFs, USFs = 00, TFIs = 00000000.
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 
TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
@@ -2222,6 +2264,7 @@
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=DL STATE=NULL EGPRS)
 ws(64)
 Modifying MS object, TLLI = 0x00000000, TA 220 -> 0
+TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL EGPRS) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly 
confirmed
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xffeeddcc DIR=DL 
STATE=FLOW EGPRS) (TRX=0, TS=4)
 Sending data request: trx=0 ts=4 sapi=5 arfcn=0 fn=0 block=0 data=4f 08 20 00 
44 02 00 02 08 04 00 c0 03 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
@@ -2290,6 +2333,7 @@
 -- Chunk with length 18 is less than remaining space (19): add length header 
to to delimit LLC frame
 -- No space left, so we are done.
 Sending data request: trx=0 ts=4 sapi=5 arfcn=0 fn=86 block=8 data=07 c0 04 12 
20 4a 02 02 02 02 02 02 02 02 86 80 03 56 56 56 56 56 56 56 56 56 56 56 56 56 
56 56 00 
+TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT RELEASE EGPRS) changes DL ASS 
state from GPRS_RLCMAC_DL_ASS_WAIT_ACK to GPRS_RLCMAC_DL_ASS_NONE
 PDCH(TS 4, TRX 0): Detaching TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING 
EGPRS), 0 TBFs, USFs = 00, TFIs = 00000000.
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 
TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
@@ -2311,6 +2355,7 @@
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=DL STATE=NULL EGPRS)
 ws(64)
 Modifying MS object, TLLI = 0x00000000, TA 220 -> 0
+TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL EGPRS) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly 
confirmed
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xffeeddcc DIR=DL 
STATE=FLOW EGPRS) (TRX=0, TS=4)
 Sending data request: trx=0 ts=4 sapi=5 arfcn=0 fn=0 block=0 data=4f 08 20 00 
44 02 00 02 08 04 00 c0 03 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
@@ -2368,6 +2413,7 @@
 -- Chunk with length 34 is less than remaining space (35): add length header 
to to delimit LLC frame
 -- No space left, so we are done.
 Sending data request: trx=0 ts=4 sapi=5 arfcn=0 fn=69 block=4 data=07 c0 03 06 
04 8a 56 86 80 03 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 
56 56 56 56 56 56 56 56 56 56 56 00 
+TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT RELEASE EGPRS) changes DL ASS 
state from GPRS_RLCMAC_DL_ASS_WAIT_ACK to GPRS_RLCMAC_DL_ASS_NONE
 PDCH(TS 4, TRX 0): Detaching TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING 
EGPRS), 0 TBFs, USFs = 00, TFIs = 00000000.
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 
TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
@@ -2389,6 +2435,7 @@
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=DL STATE=NULL EGPRS)
 ws(64)
 Modifying MS object, TLLI = 0x00000000, TA 220 -> 0
+TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL EGPRS) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly 
confirmed
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xffeeddcc DIR=DL 
STATE=FLOW EGPRS) (TRX=0, TS=4)
 Sending data request: trx=0 ts=4 sapi=5 arfcn=0 fn=0 block=0 data=4f 08 20 00 
44 02 00 02 08 04 00 c0 03 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
@@ -2436,6 +2483,7 @@
 -- Chunk with length 14 is less than remaining space (15): add length header 
to to delimit LLC frame
 -- No space left, so we are done.
 Sending data request: trx=0 ts=4 sapi=5 arfcn=0 fn=56 block=1 data=07 00 03 00 
70 3a 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 
02 02 02 02 86 80 03 56 56 56 56 56 56 56 56 56 56 56 00 
+TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT RELEASE EGPRS) changes DL ASS 
state from GPRS_RLCMAC_DL_ASS_WAIT_ACK to GPRS_RLCMAC_DL_ASS_NONE
 PDCH(TS 4, TRX 0): Detaching TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING 
EGPRS), 0 TBFs, USFs = 00, TFIs = 00000000.
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 
TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
@@ -2457,6 +2505,7 @@
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=DL STATE=NULL EGPRS)
 ws(64)
 Modifying MS object, TLLI = 0x00000000, TA 220 -> 0
+TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL EGPRS) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly 
confirmed
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xffeeddcc DIR=DL 
STATE=FLOW EGPRS) (TRX=0, TS=4)
 Sending data request: trx=0 ts=4 sapi=5 arfcn=0 fn=0 block=0 data=4f 08 20 00 
44 02 00 02 08 04 00 c0 03 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
@@ -2498,6 +2547,7 @@
 -- Chunk with length 46 is less than remaining space (47): add length header 
to to delimit LLC frame
 -- No space left, so we are done.
 Sending data request: trx=0 ts=4 sapi=5 arfcn=0 fn=47 block=11 data=07 80 02 
08 44 57 40 40 40 40 40 40 40 c0 10 70 c0 ca ca ca ca ca ca ca ca ca ca ca ca 
ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca 
ca ca ca ca 0a 
+TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT RELEASE EGPRS) changes DL ASS 
state from GPRS_RLCMAC_DL_ASS_WAIT_ACK to GPRS_RLCMAC_DL_ASS_NONE
 PDCH(TS 4, TRX 0): Detaching TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING 
EGPRS), 0 TBFs, USFs = 00, TFIs = 00000000.
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 
TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
@@ -2519,6 +2569,7 @@
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=DL STATE=NULL EGPRS)
 ws(64)
 Modifying MS object, TLLI = 0x00000000, TA 220 -> 0
+TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL EGPRS) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly 
confirmed
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xffeeddcc DIR=DL 
STATE=FLOW EGPRS) (TRX=0, TS=4)
 Sending data request: trx=0 ts=4 sapi=5 arfcn=0 fn=0 block=0 data=4f 08 20 00 
44 02 00 02 08 04 00 c0 03 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
@@ -2555,6 +2606,7 @@
 -- Chunk with length 71 is less than remaining space (72): add length header 
to to delimit LLC frame
 -- No space left, so we are done.
 Sending data request: trx=0 ts=4 sapi=5 arfcn=0 fn=39 block=9 data=07 00 02 80 
c0 e3 ca 10 70 c0 ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca 
ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca 
ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca 0a 
+TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT RELEASE EGPRS) changes DL ASS 
state from GPRS_RLCMAC_DL_ASS_WAIT_ACK to GPRS_RLCMAC_DL_ASS_NONE
 PDCH(TS 4, TRX 0): Detaching TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING 
EGPRS), 0 TBFs, USFs = 00, TFIs = 00000000.
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 
TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
@@ -2576,6 +2628,7 @@
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=DL STATE=NULL EGPRS)
 ws(64)
 Modifying MS object, TLLI = 0x00000000, TA 220 -> 0
+TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL EGPRS) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly 
confirmed
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xffeeddcc DIR=DL 
STATE=FLOW EGPRS) (TRX=0, TS=4)
 Sending data request: trx=0 ts=4 sapi=5 arfcn=0 fn=0 block=0 data=4f 08 20 00 
44 02 00 02 08 04 00 c0 03 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
@@ -2609,6 +2662,7 @@
 -- Chunk with length 46 is less than remaining space (47): add length header 
to to delimit LLC frame
 -- No space left, so we are done.
 Sending data request: trx=0 ts=4 sapi=5 arfcn=0 fn=30 block=7 data=07 80 02 08 
44 57 40 40 40 40 40 40 40 c0 10 70 c0 ca ca ca ca ca ca ca ca ca ca ca ca ca 
ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca 
ca ca ca 0a 
+TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT RELEASE EGPRS) changes DL ASS 
state from GPRS_RLCMAC_DL_ASS_WAIT_ACK to GPRS_RLCMAC_DL_ASS_NONE
 PDCH(TS 4, TRX 0): Detaching TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING 
EGPRS), 0 TBFs, USFs = 00, TFIs = 00000000.
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 
TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
@@ -2630,6 +2684,7 @@
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=DL STATE=NULL EGPRS)
 ws(64)
 Modifying MS object, TLLI = 0x00000000, TA 220 -> 0
+TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL EGPRS) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly 
confirmed
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xffeeddcc DIR=DL 
STATE=FLOW EGPRS) (TRX=0, TS=4)
 Sending data request: trx=0 ts=4 sapi=5 arfcn=0 fn=0 block=0 data=4f 08 20 00 
44 02 00 02 08 04 00 c0 03 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
@@ -2659,6 +2714,7 @@
 -- Chunk with length 30 is less than remaining space (31): add length header 
to to delimit LLC frame
 -- No space left, so we are done.
 Sending data request: trx=0 ts=4 sapi=5 arfcn=0 fn=26 block=6 data=07 00 02 00 
60 20 f5 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 
04 04 04 04 04 04 04 04 04 04 04 04 04 0c 01 07 ac ac ac ac ac ac ac ac ac ac 
ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac 80 d4 13 10 10 10 10 10 10 
10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 
10 10 10 30 04 1c b0 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 
b2 b2 b2 b2 b2 b2 b2 02 
+TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT RELEASE EGPRS) changes DL ASS 
state from GPRS_RLCMAC_DL_ASS_WAIT_ACK to GPRS_RLCMAC_DL_ASS_NONE
 PDCH(TS 4, TRX 0): Detaching TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING 
EGPRS), 0 TBFs, USFs = 00, TFIs = 00000000.
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 
TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
@@ -2680,6 +2736,7 @@
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=DL STATE=NULL EGPRS)
 ws(64)
 Modifying MS object, TLLI = 0x00000000, TA 220 -> 0
+TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL EGPRS) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly 
confirmed
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xffeeddcc DIR=DL 
STATE=FLOW EGPRS) (TRX=0, TS=4)
 Sending data request: trx=0 ts=4 sapi=5 arfcn=0 fn=0 block=0 data=4f 08 20 00 
44 02 00 02 08 04 00 c0 03 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
@@ -2710,6 +2767,7 @@
 -- Chunk with length 71 is less than remaining space (72): add length header 
to to delimit LLC frame
 -- No space left, so we are done.
 Sending data request: trx=0 ts=4 sapi=5 arfcn=0 fn=26 block=6 data=07 00 02 80 
c0 e3 ca 10 70 c0 ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca 
ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca 
ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca 0a 
+TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT RELEASE EGPRS) changes DL ASS 
state from GPRS_RLCMAC_DL_ASS_WAIT_ACK to GPRS_RLCMAC_DL_ASS_NONE
 PDCH(TS 4, TRX 0): Detaching TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING 
EGPRS), 0 TBFs, USFs = 00, TFIs = 00000000.
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 
TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
@@ -2731,8 +2789,10 @@
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=DL STATE=NULL EGPRS)
 ws(64)
 Modifying MS object, TLLI = 0x00000000, TA 220 -> 0
+TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL EGPRS) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly 
confirmed
 -- Chunk with length 100 larger than space (74) left in block: copy only 
remaining space, and we are done
+TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT RELEASE EGPRS) changes DL ASS 
state from GPRS_RLCMAC_DL_ASS_SEND_ASS to GPRS_RLCMAC_DL_ASS_NONE
 PDCH(TS 4, TRX 0): Detaching TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING 
EGPRS), 0 TBFs, USFs = 00, TFIs = 00000000.
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 
TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
@@ -2754,8 +2814,10 @@
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=DL STATE=NULL EGPRS)
 ws(64)
 Modifying MS object, TLLI = 0x00000000, TA 220 -> 0
+TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL EGPRS) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly 
confirmed
 -- Chunk with length 100 larger than space (22) left in block: copy only 
remaining space, and we are done
+TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT RELEASE EGPRS) changes DL ASS 
state from GPRS_RLCMAC_DL_ASS_SEND_ASS to GPRS_RLCMAC_DL_ASS_NONE
 PDCH(TS 4, TRX 0): Detaching TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING 
EGPRS), 0 TBFs, USFs = 00, TFIs = 00000000.
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 
TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
@@ -2777,8 +2839,10 @@
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=DL STATE=NULL EGPRS)
 ws(64)
 Modifying MS object, TLLI = 0x00000000, TA 220 -> 0
+TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL EGPRS) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly 
confirmed
 -- Chunk with length 100 larger than space (28) left in block: copy only 
remaining space, and we are done
+TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT RELEASE EGPRS) changes DL ASS 
state from GPRS_RLCMAC_DL_ASS_SEND_ASS to GPRS_RLCMAC_DL_ASS_NONE
 PDCH(TS 4, TRX 0): Detaching TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING 
EGPRS), 0 TBFs, USFs = 00, TFIs = 00000000.
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 
TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
@@ -2800,11 +2864,13 @@
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=DL STATE=NULL EGPRS)
 ws(64)
 Modifying MS object, TLLI = 0x00000000, TA 220 -> 0
+TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL EGPRS) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly 
confirmed
 -- Chunk with length 100 larger than space (56) left in block: copy only 
remaining space, and we are done
 -- Chunk with length 44 is less than remaining space (56): add length header 
to to delimit LLC frame
 -- Chunk with length 10 is less than remaining space (11): add length header 
to to delimit LLC frame
 -- No space left, so we are done.
+TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT RELEASE EGPRS) changes DL ASS 
state from GPRS_RLCMAC_DL_ASS_SEND_ASS to GPRS_RLCMAC_DL_ASS_NONE
 PDCH(TS 4, TRX 0): Detaching TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING 
EGPRS), 0 TBFs, USFs = 00, TFIs = 00000000.
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 
TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
@@ -2826,11 +2892,13 @@
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=DL STATE=NULL EGPRS)
 ws(64)
 Modifying MS object, TLLI = 0x00000000, TA 220 -> 0
+TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL EGPRS) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly 
confirmed
 -- Chunk with length 100 larger than space (74) left in block: copy only 
remaining space, and we are done
 -- Chunk with length 26 is less than remaining space (74): add length header 
to to delimit LLC frame
 -- Chunk with length 46 is less than remaining space (47): add length header 
to to delimit LLC frame
 -- No space left, so we are done.
+TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT RELEASE EGPRS) changes DL ASS 
state from GPRS_RLCMAC_DL_ASS_SEND_ASS to GPRS_RLCMAC_DL_ASS_NONE
 PDCH(TS 4, TRX 0): Detaching TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING 
EGPRS), 0 TBFs, USFs = 00, TFIs = 00000000.
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 
TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
@@ -2852,11 +2920,13 @@
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=DL STATE=NULL EGPRS)
 ws(64)
 Modifying MS object, TLLI = 0x00000000, TA 220 -> 0
+TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL EGPRS) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly 
confirmed
 -- Chunk with length 100 larger than space (56) left in block: copy only 
remaining space, and we are done
 -- Chunk with length 44 is less than remaining space (56): add length header 
to to delimit LLC frame
 -- Chunk with length 10 is less than remaining space (11): add length header 
to to delimit LLC frame
 -- No space left, so we are done.
+TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT RELEASE EGPRS) changes DL ASS 
state from GPRS_RLCMAC_DL_ASS_SEND_ASS to GPRS_RLCMAC_DL_ASS_NONE
 PDCH(TS 4, TRX 0): Detaching TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING 
EGPRS), 0 TBFs, USFs = 00, TFIs = 00000000.
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 
TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
@@ -2878,11 +2948,13 @@
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=DL STATE=NULL EGPRS)
 ws(64)
 Modifying MS object, TLLI = 0x00000000, TA 220 -> 0
+TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL EGPRS) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly 
confirmed
 -- Chunk with length 100 larger than space (74) left in block: copy only 
remaining space, and we are done
 -- Chunk with length 26 is less than remaining space (74): add length header 
to to delimit LLC frame
 -- Chunk with length 46 is less than remaining space (47): add length header 
to to delimit LLC frame
 -- No space left, so we are done.
+TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT RELEASE EGPRS) changes DL ASS 
state from GPRS_RLCMAC_DL_ASS_SEND_ASS to GPRS_RLCMAC_DL_ASS_NONE
 PDCH(TS 4, TRX 0): Detaching TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING 
EGPRS), 0 TBFs, USFs = 00, TFIs = 00000000.
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 
TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
@@ -2904,8 +2976,10 @@
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=DL STATE=NULL EGPRS)
 ws(64)
 Modifying MS object, TLLI = 0x00000000, TA 220 -> 0
+TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL EGPRS) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly 
confirmed
 -- Chunk with length 100 larger than space (74) left in block: copy only 
remaining space, and we are done
+TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT RELEASE EGPRS) changes DL ASS 
state from GPRS_RLCMAC_DL_ASS_SEND_ASS to GPRS_RLCMAC_DL_ASS_NONE
 PDCH(TS 4, TRX 0): Detaching TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING 
EGPRS), 0 TBFs, USFs = 00, TFIs = 00000000.
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 
TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
@@ -2927,8 +3001,10 @@
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=DL STATE=NULL EGPRS)
 ws(64)
 Modifying MS object, TLLI = 0x00000000, TA 220 -> 0
+TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL EGPRS) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly 
confirmed
 -- Chunk with length 100 larger than space (56) left in block: copy only 
remaining space, and we are done
+TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT RELEASE EGPRS) changes DL ASS 
state from GPRS_RLCMAC_DL_ASS_SEND_ASS to GPRS_RLCMAC_DL_ASS_NONE
 PDCH(TS 4, TRX 0): Detaching TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING 
EGPRS), 0 TBFs, USFs = 00, TFIs = 00000000.
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 
TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
@@ -2950,8 +3026,10 @@
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=DL STATE=NULL EGPRS)
 ws(64)
 Modifying MS object, TLLI = 0x00000000, TA 220 -> 0
+TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL EGPRS) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly 
confirmed
 -- Chunk with length 100 larger than space (44) left in block: copy only 
remaining space, and we are done
+TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT RELEASE EGPRS) changes DL ASS 
state from GPRS_RLCMAC_DL_ASS_SEND_ASS to GPRS_RLCMAC_DL_ASS_NONE
 PDCH(TS 4, TRX 0): Detaching TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING 
EGPRS), 0 TBFs, USFs = 00, TFIs = 00000000.
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 
TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
@@ -2973,8 +3051,10 @@
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=DL STATE=NULL EGPRS)
 ws(64)
 Modifying MS object, TLLI = 0x00000000, TA 220 -> 0
+TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL EGPRS) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly 
confirmed
 -- Chunk with length 100 larger than space (74) left in block: copy only 
remaining space, and we are done
+TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=WAIT RELEASE EGPRS) changes DL ASS 
state from GPRS_RLCMAC_DL_ASS_SEND_ASS to GPRS_RLCMAC_DL_ASS_NONE
 PDCH(TS 4, TRX 0): Detaching TBF(TFI=0 TLLI=0xffeeddcc DIR=DL STATE=RELEASING 
EGPRS), 0 TBFs, USFs = 00, TFIs = 00000000.
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 
TLLI=0xffeeddcc DIR=DL STATE=RELEASING EGPRS)
 Destroying MS object, TLLI = 0xffeeddcc
@@ -3009,12 +3089,14 @@
 ws(64)
 Modifying MS object, UL TLLI: 0x00000000 -> 0xf1223344, not yet confirmed
 Modifying MS object, TLLI = 0xf1223344, TA 220 -> 7
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=ASSIGN EGPRS) changes UL ASS state from 
GPRS_RLCMAC_UL_ASS_NONE to GPRS_RLCMAC_UL_ASS_SEND_ASS
 max_cs_ul cannot be derived (current UL CS: UNKNOWN)
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xf1223344 DIR=UL 
STATE=ASSIGN EGPRS) (TRX=0, TS=7)
 Sending data request: trx=0 ts=7 sapi=5 arfcn=0 fn=2654270 block=8 data=4f 28 
5e 24 46 68 90 f8 0a 39 00 00 88 00 08 2b 2b 2b 2b 2b 2b 2b 2b 
 Got RLC block, coding scheme: CS-1, length: 23 (23))
 +++++++++++++++++++++++++ RX : Uplink Control Block +++++++++++++++++++++++++
 ------------------------- RX : Uplink Control Block -------------------------
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=ASSIGN EGPRS) changes UL ASS state from 
GPRS_RLCMAC_UL_ASS_WAIT_ACK to GPRS_RLCMAC_UL_ASS_NONE
 Got RLC block, coding scheme: CS-1, length: 23 (23))
   UL data: 3c 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
00 
 Got CS-1 RLC block: R=0, SI=0, TFI=0, CPS=0, RSB=0, rc=184
@@ -3054,6 +3136,7 @@
 ws(64)
 Modifying MS object, TLLI: 0xf1223344 confirmed
 Modifying MS object, TLLI = 0xf1223344, IMSI '' -> '0011223344'
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=FLOW EGPRS) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 Creating MS object, TLLI = 0x00000000
 Modifying MS object, TLLI = 0x00000000, MS class 0 -> 11
 Modifying MS object, TLLI = 0x00000000, EGPRS MS class 0 -> 11
@@ -3126,12 +3209,14 @@
 ws(64)
 Modifying MS object, UL TLLI: 0x00000000 -> 0xf1223344, not yet confirmed
 Modifying MS object, TLLI = 0xf1223344, TA 220 -> 7
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=ASSIGN EGPRS) changes UL ASS state from 
GPRS_RLCMAC_UL_ASS_NONE to GPRS_RLCMAC_UL_ASS_SEND_ASS
 max_cs_ul cannot be derived (current UL CS: UNKNOWN)
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xf1223344 DIR=UL 
STATE=ASSIGN EGPRS) (TRX=0, TS=7)
 Sending data request: trx=0 ts=7 sapi=5 arfcn=0 fn=2654270 block=8 data=4f 28 
5e 24 46 68 90 f8 0a 39 00 00 88 00 08 2b 2b 2b 2b 2b 2b 2b 2b 
 Got RLC block, coding scheme: CS-1, length: 23 (23))
 +++++++++++++++++++++++++ RX : Uplink Control Block +++++++++++++++++++++++++
 ------------------------- RX : Uplink Control Block -------------------------
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=ASSIGN EGPRS) changes UL ASS state from 
GPRS_RLCMAC_UL_ASS_WAIT_ACK to GPRS_RLCMAC_UL_ASS_NONE
 Got RLC block, coding scheme: MCS-4, length: 49 (49))
   UL data: 1d 00 40 c1 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
00 
 Got MCS-4 RLC block: R=1, SI=0, TFI=0, CPS=5, RSB=0, rc=385
@@ -3163,6 +3248,7 @@
 ws(64)
 Modifying MS object, TLLI: 0xf1223344 confirmed
 Modifying MS object, TLLI = 0xf1223344, IMSI '' -> '0011223344'
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=FLOW EGPRS) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 Searching for first unallocated TFI: TRX=0
  Found TFI=0.
 Creating MS object, TLLI = 0x00000000
@@ -3181,6 +3267,7 @@
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=DL STATE=NULL EGPRS)
 ws(64)
 Modifying MS object, TLLI = 0x00000000, TA 220 -> 0
+TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL EGPRS) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly 
confirmed
 ws(480)
 - got ack for BSN=1176
@@ -3462,12 +3549,14 @@
 ws(192)
 Modifying MS object, UL TLLI: 0x00000000 -> 0xf1223344, not yet confirmed
 Modifying MS object, TLLI = 0xf1223344, TA 220 -> 7
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=ASSIGN EGPRS) changes UL ASS state from 
GPRS_RLCMAC_UL_ASS_NONE to GPRS_RLCMAC_UL_ASS_SEND_ASS
 max_cs_ul cannot be derived (current UL CS: UNKNOWN)
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xf1223344 DIR=UL 
STATE=ASSIGN EGPRS) (TRX=0, TS=7)
 Sending data request: trx=0 ts=7 sapi=5 arfcn=0 fn=2654270 block=8 data=4f 28 
5e 24 46 68 90 f9 0a 39 00 00 88 00 08 2b 2b 2b 2b 2b 2b 2b 2b 
 Got RLC block, coding scheme: CS-1, length: 23 (23))
 +++++++++++++++++++++++++ RX : Uplink Control Block +++++++++++++++++++++++++
 ------------------------- RX : Uplink Control Block -------------------------
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=ASSIGN EGPRS) changes UL ASS state from 
GPRS_RLCMAC_UL_ASS_WAIT_ACK to GPRS_RLCMAC_UL_ASS_NONE
 Got RLC block, coding scheme: MCS-4, length: 49 (49))
   UL data: 28 00 00 80 00 00 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
2b 
 Got MCS-4 RLC block: R=0, SI=0, TFI=0, CPS=0, RSB=0, rc=385
@@ -3896,6 +3985,7 @@
 ws(192)
 Modifying MS object, TLLI: 0xf1223344 confirmed
 Modifying MS object, TLLI = 0xf1223344, IMSI '' -> '0011223344'
+TBF(TFI=0 TLLI=0xf1223344 DIR=UL STATE=FLOW EGPRS) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 Got RLC block, coding scheme: MCS-4, length: 49 (49))
   UL data: 28 00 00 80 00 00 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
2b 
 Got MCS-4 RLC block: R=0, SI=0, TFI=0, CPS=0, RSB=0, rc=385
@@ -4442,6 +4532,7 @@
 PDCH(TS 4, TRX 0): Attaching TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL), 1 
TBFs, USFs = 00, TFIs = 00000001.
 Attaching TBF to MS object, TLLI = 0x00000000, TBF = TBF(TFI=0 TLLI=0x00000000 
DIR=DL STATE=NULL)
 Modifying MS object, TLLI = 0x00000000, TA 220 -> 0
+TBF(TFI=0 TLLI=0x00000000 DIR=DL STATE=NULL) changes DL ASS state from 
GPRS_RLCMAC_DL_ASS_NONE to GPRS_RLCMAC_DL_ASS_SEND_ASS
 The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly 
confirmed
 MS requests UL TBF on RACH, so we provide one: ra=0x78 Fn=2654167 qta=31 
is_11bit=0:
 Creating MS object, TLLI = 0x00000000
@@ -4577,6 +4668,7 @@
 Creating MS object, TLLI = 0x00000000
 Modifying MS object, UL TLLI: 0x00000000 -> 0xffeeddcc, not yet confirmed
 Attaching TBF to MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 TLLI=0xffeeddcc 
DIR=UL STATE=ASSIGN)
+TBF(TFI=0 TLLI=0xffeeddcc DIR=UL STATE=ASSIGN) changes UL ASS state from 
GPRS_RLCMAC_UL_ASS_NONE to GPRS_RLCMAC_UL_ASS_SEND_ASS_REJ
 Received RTS for PDCH: TRX=0 TS=7 FN=2654218 block_nr=8 scheduling USF=0 for 
required uplink resource of UL TFI=0
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xffeeddcc DIR=UL 
STATE=ASSIGN) (TRX=0, TS=7)
 Sending data request: trx=0 ts=7 sapi=5 arfcn=0 fn=2654218 block=8 data=40 84 
7f f7 6e e6 41 4b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
@@ -4584,6 +4676,7 @@
 Creating MS object, TLLI = 0x00000000
 Modifying MS object, UL TLLI: 0x00000000 -> 0xffeeddcc, not yet confirmed
 Attaching TBF to MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 TLLI=0xffeeddcc 
DIR=UL STATE=ASSIGN)
+TBF(TFI=0 TLLI=0xffeeddcc DIR=UL STATE=ASSIGN) changes UL ASS state from 
GPRS_RLCMAC_UL_ASS_NONE to GPRS_RLCMAC_UL_ASS_SEND_ASS_REJ
 Scheduling control message at RTS for TBF(TFI=0 TLLI=0xffeeddcc DIR=UL 
STATE=ASSIGN) (TRX=0, TS=7)
 Sending data request: trx=0 ts=7 sapi=5 arfcn=0 fn=2654218 block=8 data=47 84 
7f f7 6e e6 41 4b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 
 Detaching TBF from MS object, TLLI = 0xffeeddcc, TBF = TBF(TFI=0 
TLLI=0xffeeddcc DIR=UL STATE=ASSIGN)

-- 
To view, visit https://gerrit.osmocom.org/5862
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Idcbf5775d17b1247f2ed01788f9b0788ce66e871
Gerrit-PatchSet: 2
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Owner: Max <msur...@sysmocom.de>
Gerrit-Reviewer: Jenkins Builder

Reply via email to