[PATCH] osmocom-bb[fixeria/trx]: trxcon/sched_trx.c: fix: omit inactive logical channels

2018-03-11 Thread Vadim Yanitskiy

trxcon/sched_trx.c: fix: omit inactive logical channels

The sched_frame_clck_cb() is responsible for UL burst transmission.
Iterating over each timeslot, it chooses a proper lchan handler
according to a current frame number and a multiframe layout in use,
takes a L2 UL frame from a TX buffer, and finally calls the chosen
handler in order to to encode and transmit a taken frame.

A handler should be called only for activated logical channels...
but for some long time, there was a bug, so each lchan was
processed, including inactive ones. It's time to fix this.

Change-Id: I33e3ecc14be3ae64dfd02789c7f0970c945582c9
---
M src/host/trxcon/sched_trx.c
1 file changed, 4 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/03/7203/2

diff --git a/src/host/trxcon/sched_trx.c b/src/host/trxcon/sched_trx.c
index 1197f2c..8c859de 100644
--- a/src/host/trxcon/sched_trx.c
+++ b/src/host/trxcon/sched_trx.c
@@ -86,6 +86,10 @@
if (lchan == NULL)
continue;
 
+   /* Omit inactive lchans */
+   if (!lchan->active)
+   continue;
+
/**
 * If we aren't processing any primitive yet,
 * attempt to obtain a new one from queue

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

Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I33e3ecc14be3ae64dfd02789c7f0970c945582c9
Gerrit-PatchSet: 2
Gerrit-Project: osmocom-bb
Gerrit-Branch: fixeria/trx
Gerrit-Owner: Vadim Yanitskiy 
Gerrit-Reviewer: Jenkins Builder


[PATCH] osmocom-bb[fixeria/trx]: trxcon/sched_trx.c: fix: omit inactive logical channels

2018-03-10 Thread Vadim Yanitskiy

Review at  https://gerrit.osmocom.org/7203

trxcon/sched_trx.c: fix: omit inactive logical channels

The sched_frame_clck_cb() is responsible for UL burst transmission.
Iterating over each timeslot, it chooses a proper lchan handler
according to a current frame number and a multiframe layout in use,
takes a L2 UL frame from a TX buffer, and finally calls the chosen
handler in order to to encode and transmit a taken frame.

A handler should be called only for activated logical channels...
but for some long time, there was a bug, so each lchan was
processed, including inactive ones. It's time to fix this.

Change-Id: I33e3ecc14be3ae64dfd02789c7f0970c945582c9
---
M src/host/trxcon/sched_trx.c
1 file changed, 4 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/03/7203/1

diff --git a/src/host/trxcon/sched_trx.c b/src/host/trxcon/sched_trx.c
index 1197f2c..4ee6e61 100644
--- a/src/host/trxcon/sched_trx.c
+++ b/src/host/trxcon/sched_trx.c
@@ -86,6 +86,10 @@
if (lchan == NULL)
continue;
 
+   /* Omit inactive lchans */
+   if (!lchans->active)
+   continue;
+
/**
 * If we aren't processing any primitive yet,
 * attempt to obtain a new one from queue

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I33e3ecc14be3ae64dfd02789c7f0970c945582c9
Gerrit-PatchSet: 1
Gerrit-Project: osmocom-bb
Gerrit-Branch: fixeria/trx
Gerrit-Owner: Vadim Yanitskiy