Attention is currently required from: pespin.
dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/35151?usp=email )
Change subject: gprs_rlcmac_sched: rewrite logic around idle block skip
......................................................................
Patch Set 1:
(1 comment)
File src/gprs_rlcmac_sched.cpp:
https://gerrit.osmocom.org/c/osmo-pcu/+/35151/comment/724b3af7_7e2b6a19
PS1, Line 486: * way we help BTS energy saving (on TRX!=C0) by sending nothing
I don't get why this is energy saving. The dummy block is sent in any case. A dummy block should consume as much energy as a block that has actual data in it.
So all we do here is looking up if there are TBF. If there are none => msg = NULL => TRX will create and send a dummy frame by itself)
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/35151?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: Iadb62748b18605bf158169b317f880352bc0a5a6
Gerrit-Change-Number: 35151
Gerrit-PatchSet: 1
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-CC: Jenkins Builder
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Tue, 28 Nov 2023 14:43:31 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-pcu/+/35151?usp=email )
Change subject: gprs_rlcmac_sched: rewrite logic around idle block skip
......................................................................
gprs_rlcmac_sched: rewrite logic around idle block skip
The logic that decides whether to generate idle / dummy blocks directly
at the PCU or leave the work to the TRX implementation of that specific
BTS has a confusing appeareance.
(This is a follow up patch to change
I7a08d8cc670fa14f7206ffffdbc22351f3668a17)
Related: OS#6191
Change-Id: Iadb62748b18605bf158169b317f880352bc0a5a6
---
M src/gprs_rlcmac_sched.cpp
1 file changed, 36 insertions(+), 15 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/51/35151/1
diff --git a/src/gprs_rlcmac_sched.cpp b/src/gprs_rlcmac_sched.cpp
index 12b9e50..a56fcb3 100644
--- a/src/gprs_rlcmac_sched.cpp
+++ b/src/gprs_rlcmac_sched.cpp
@@ -474,22 +474,26 @@
}
/* Prio 3: send dummy control message if need to poll or USF */
else {
- /* If there's no TBF attached to this PDCH, we can submit an empty
- * data_req since there's nothing to transmit nor to poll/USF. This
- * way we help BTS energy saving (on TRX!=C0) by sending nothing
- * instead of a dummy block. The early return is done here and
- * not at the start of the function because the condition below
- * (num_tbfs==0) may not be enough, because temporary dummy TBFs
- * created to send Imm Ass Rej (see handle_tbf_reject()) don't
- * have a TFI assigned and hence are not attached to the PDCH
- * TS, so they don't show up in the count below.
- */
- const unsigned num_tbfs = pdch->num_tbfs(GPRS_RLCMAC_DL_TBF)
- + pdch->num_tbfs(GPRS_RLCMAC_UL_TBF);
- bool skip_idle = (num_tbfs == 0);
+ bool skip_idle;
- if (bts->gen_idle_blocks)
- skip_idle = skip_idle && trx != 0;
+ if (bts->gen_idle_blocks) {
+ /* Always generate all idle blocks since the TRX of this BTS does
+ * not generate idle blocks by itself. */
+ skip_idle = false;
+ } else {/* Only skip if no one is listening on this PDCH:
+ * If there's no TBF attached to this PDCH, we can submit an empty
+ * data_req since there's nothing to transmit nor to poll/USF. This
+ * way we help BTS energy saving (on TRX!=C0) by sending nothing
+ * instead of a dummy block. The early return is done here and
+ * not at the start of the function because the condition below
+ * (num_tbfs==0) may not be enough, because temporary dummy TBFs
+ * created to send Imm Ass Rej (see handle_tbf_reject()) don't
+ * have a TFI assigned and hence are not attached to the PDCH
+ * TS, so they don't show up in the count below. */
+ const unsigned num_tbfs = pdch->num_tbfs(GPRS_RLCMAC_DL_TBF)
+ + pdch->num_tbfs(GPRS_RLCMAC_UL_TBF);
+ skip_idle = (num_tbfs == 0);
+ }
if (!skip_idle && (msg = sched_dummy())) {
/* increase counter */
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/35151?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: Iadb62748b18605bf158169b317f880352bc0a5a6
Gerrit-Change-Number: 35151
Gerrit-PatchSet: 1
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-MessageType: newchange
Attention is currently required from: daniel.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/libosmocore/+/35078?usp=email )
Change subject: osmo_io: Factor out and use common send function from backend
......................................................................
Patch Set 1:
(1 comment)
File src/core/osmo_io.c:
https://gerrit.osmocom.org/c/libosmocore/+/35078/comment/e07d3106_06f58829
PS1, Line 360:
rc == 0 case seems to be missing here?
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/35078?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: I6da2653d32aedd0e7872be0cf90a841b56462e59
Gerrit-Change-Number: 35078
Gerrit-PatchSet: 1
Gerrit-Owner: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-CC: laforge <laforge(a)osmocom.org>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: daniel <dwillmann(a)sysmocom.de>
Gerrit-Comment-Date: Tue, 28 Nov 2023 13:41:58 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
Attention is currently required from: dexter.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/35096?usp=email )
Change subject: gprs_rlcmac_sched: fix condition for generating dummy blocks on idle
......................................................................
Patch Set 2:
(1 comment)
File src/gprs_rlcmac_sched.cpp:
https://gerrit.osmocom.org/c/osmo-pcu/+/35096/comment/bc33e489_dccdf6cf
PS2, Line 492: skip_idle = skip_idle && trx != 0;
I think now that we don't have the #ifdef, we can really simplify this to:
bool skip_dummy;
if (bts->gen_dummy_blk) {
skip_dummy = false;
} else {
const unsigned num_tbfs = pdch->num_tbfs(GPRS_RLCMAC_DL_TBF)
+ pdch->num_tbfs(GPRS_RLCMAC_UL_TBF);
skip_dummy = (num_tbfs == 0);
}
This can again be simplified to:
bool skip_dummy = bts->gen_dummy_blk;
if (skip_dummy) {
/* Only skip if no one is listening on this PDCH: */
const unsigned num_tbfs = pdch->num_tbfs(GPRS_RLCMAC_DL_TBF)
+ pdch->num_tbfs(GPRS_RLCMAC_UL_TBF);
skip_dummy = (num_tbfs == 0);
}
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/35096?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: I7a08d8cc670fa14f7206ffffdbc22351f3668a17
Gerrit-Change-Number: 35096
Gerrit-PatchSet: 2
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: dexter <pmaier(a)sysmocom.de>
Gerrit-Comment-Date: Tue, 28 Nov 2023 13:38:50 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
Attention is currently required from: daniel, neels.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-bts/+/35095?usp=email )
Change subject: early-IA: use the correct TRX
......................................................................
Patch Set 3:
(1 comment)
File src/common/rsl.c:
https://gerrit.osmocom.org/c/osmo-bts/+/35095/comment/3000b245_8e7cd8de
PS3, Line 1403: /* hopping is disabled. */
> What if hopping is enabled? Should we return an rsl_tx_error_report()
Ack
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/35095?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: Id9a930e5c67122812b229dc27ea2bfe246b67611
Gerrit-Change-Number: 35095
Gerrit-PatchSet: 3
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: daniel <dwillmann(a)sysmocom.de>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Attention: daniel <dwillmann(a)sysmocom.de>
Gerrit-Comment-Date: Tue, 28 Nov 2023 13:08:13 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: daniel <dwillmann(a)sysmocom.de>
Gerrit-MessageType: comment