lynxis lazus has submitted this change and it was merged. ( 
https://gerrit.osmocom.org/c/osmo-pcu/+/15466 )

Change subject: tbf_dl: add comments to the scheduler
......................................................................

tbf_dl: add comments to the scheduler

Change-Id: Ib037f9fda30472313c7a82effb1e925c6abebbe5
---
M src/tbf_dl.cpp
1 file changed, 13 insertions(+), 2 deletions(-)

Approvals:
  pespin: Looks good to me, approved
  Jenkins Builder: Verified



diff --git a/src/tbf_dl.cpp b/src/tbf_dl.cpp
index a7671c9..37bd3ee 100644
--- a/src/tbf_dl.cpp
+++ b/src/tbf_dl.cpp
@@ -359,6 +359,7 @@
        int data_len2, force_data_len = -1;
        GprsCodingScheme force_cs;

+       /* search for a nacked or resend marked bsn */
        bsn = m_window.resend_needed();

        if (previous_bsn >= 0) {
@@ -369,6 +370,7 @@
        }

        if (bsn >= 0) {
+               /* resend an unacked bsn or resend bsn. */
                if (previous_bsn == bsn)
                        return -1;

@@ -397,9 +399,11 @@
                        if (m_rlc.block(bsn)->cs_init == MCS8)
                                m_rlc.block(bsn)->cs_current_trans =
                                        MCS8;
-               } else
+               } else {
+                       /* gprs */
                        m_rlc.block(bsn)->cs_current_trans =
                                        m_rlc.block(bsn)->cs_last;
+               }

                data_len2 = m_rlc.block(bsn)->len;
                if (force_data_len > 0 && force_data_len != data_len2)
@@ -409,6 +413,9 @@
                m_window.m_v_b.mark_unacked(bsn);
                bts->rlc_resent();
        } else if (state_is(GPRS_RLCMAC_FINISHED)) {
+               /* If the TBF is in finished, we already sent all packages at 
least once.
+                * If any packages could have been sent (because of unacked) it 
should have
+                * been catched up by the upper if(bsn >= 0) */
                LOGPTBFDL(this, LOGL_DEBUG,
                          "Restarting at BSN %d, because all blocks have been 
transmitted.\n",
                          m_window.v_a());
@@ -416,6 +423,8 @@
                if (restart_bsn_cycle())
                        return take_next_bsn(fn, previous_bsn, may_combine);
        } else if (dl_window_stalled()) {
+               /* There are no more packages to send, but the window is 
stalled.
+                * Restart the bsn_cycle to resend all unacked messages */
                LOGPTBFDL(this, LOGL_NOTICE,
                          "Restarting at BSN %d, because the window is 
stalled.\n",
                          m_window.v_a());
@@ -423,8 +432,8 @@
                if (restart_bsn_cycle())
                        return take_next_bsn(fn, previous_bsn, may_combine);
        } else if (have_data()) {
+               /* The window has space left, generate new bsn */
                GprsCodingScheme new_cs;
-               /* New blocks may be send */
                new_cs = force_cs ? force_cs : current_cs();
                LOGPTBFDL(this, LOGL_DEBUG,
                          "Sending new block at BSN %d, CS=%s\n",
@@ -432,6 +441,8 @@

                bsn = create_new_bsn(fn, new_cs);
        } else if (bts->bts_data()->dl_tbf_preemptive_retransmission && 
!m_window.window_empty()) {
+               /* The window contains unacked packages, but not acked.
+                * Mark unacked bsns as RESEND */
                LOGPTBFDL(this, LOGL_DEBUG,
                          "Restarting at BSN %d, because all blocks have been 
transmitted (FLOW).\n",
                          m_window.v_a());

--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/15466
To unsubscribe, or for help writing mail filters, visit 
https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: Ib037f9fda30472313c7a82effb1e925c6abebbe5
Gerrit-Change-Number: 15466
Gerrit-PatchSet: 3
Gerrit-Owner: lynxis lazus <lyn...@fe80.eu>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: lynxis lazus <lyn...@fe80.eu>
Gerrit-Reviewer: pespin <pes...@sysmocom.de>
Gerrit-MessageType: merged

Reply via email to