Attention is currently required from: osmith.
fixeria has posted comments on this change by osmith. ( https://gerrit.osmocom.org/c/dahdi-linux/+/42906?usp=email )
Change subject: Adjust to strncpy removal in linux 7.2-rc1
......................................................................
Patch Set 1: Code-Review+1
--
To view, visit https://gerrit.osmocom.org/c/dahdi-linux/+/42906?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: dahdi-linux
Gerrit-Branch: master
Gerrit-Change-Id: I860344fd23d5780fc588d19388ad91c6f6bcfc90
Gerrit-Change-Number: 42906
Gerrit-PatchSet: 1
Gerrit-Owner: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Attention: osmith <osmith(a)sysmocom.de>
Gerrit-Comment-Date: Mon, 29 Jun 2026 13:58:03 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
Attention is currently required from: laforge.
fixeria has posted comments on this change by fixeria. ( https://gerrit.osmocom.org/c/osmo-bts/+/42855?usp=email )
Change subject: osmo-bts-trx: fix spurious clock skew shutdown after self-compensation
......................................................................
Set Ready For Review
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/42855?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: Icdb7db8abe70258ae008d9514b6608bd74bb2881
Gerrit-Change-Number: 42855
Gerrit-PatchSet: 2
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Comment-Date: Mon, 29 Jun 2026 13:52:08 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: No
Attention is currently required from: Hoernchen, pespin.
fixeria has posted comments on this change by fixeria. ( https://gerrit.osmocom.org/c/osmo-bts/+/42871?usp=email )
Change subject: osmo-bts-trx: fix spurious shutdown on first CLCK.ind from osmo-trx
......................................................................
Set Ready For Review
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/42871?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: I25e76e02d29fd8f88130d15d0adfe8d90a017924
Gerrit-Change-Number: 42871
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Hoernchen <ewild(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: Hoernchen <ewild(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Mon, 29 Jun 2026 13:51:26 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: No
fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bts/+/42908?usp=email )
Change subject: oml: validate Intave Parameter range in SET BTS ATTR
......................................................................
oml: validate Intave Parameter range in SET BTS ATTR
3GPP TS 52.021 §9.4.24 defines valid range for the Intave Parameter
as 1..31, matching the fixed size of the per-lchan interference sample
buffer (interf_meas_dbm[31] in lchan.h). Previously any uint8_t value
was accepted without validation, meaning a buggy BSC could send
intave=0 (silently disabling interference reporting) or intave>31
(causing a buffer overflow in gsm_lchan_interf_meas_push()).
Let's guard against that by NACKing the SET BTS ATTR message with
cause=NM_NACK_PARAM_RANGE if the value is outside the valid range.
Change-Id: Id4d3353d4397aaa2517091b020d38ee15e084e2c
AI-Assisted: yes (Claude)
---
M src/common/oml.c
1 file changed, 10 insertions(+), 3 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/08/42908/1
diff --git a/src/common/oml.c b/src/common/oml.c
index 35b8664..ce5f7f9 100644
--- a/src/common/oml.c
+++ b/src/common/oml.c
@@ -955,9 +955,16 @@
bts->interference.boundary[i] = -1 * boundary;
}
}
- /* 9.4.24 Intave Parameter */
- if (TLVP_PRES_LEN(&tp, NM_ATT_INTAVE_PARAM, 1))
- bts->interference.intave = *TLVP_VAL(&tp, NM_ATT_INTAVE_PARAM);
+ /* 9.4.24 Intave Parameter (3GPP TS 52.021 §9.4.24: range 1..31) */
+ if (TLVP_PRES_LEN(&tp, NM_ATT_INTAVE_PARAM, 1)) {
+ uint8_t intave = *TLVP_VAL(&tp, NM_ATT_INTAVE_PARAM);
+ if (intave < 1 || intave > 31) {
+ LOGPFOH(DOML, LOGL_ERROR, foh,
+ "Intave Parameter %u out of range (1..31)\n", intave);
+ return oml_fom_ack_nack(msg, NM_NACK_PARAM_RANGE);
+ }
+ bts->interference.intave = intave;
+ }
/* 9.4.14 Connection Failure Criterion */
if (TLVP_PRES_LEN(&tp, NM_ATT_CONN_FAIL_CRIT, 1)) {
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/42908?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: Id4d3353d4397aaa2517091b020d38ee15e084e2c
Gerrit-Change-Number: 42908
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bts/+/42907?usp=email )
Change subject: l1sap: fix duplicate RF RESOURCE INDICATION on clock bootstrap
......................................................................
l1sap: fix duplicate RF RESOURCE INDICATION on clock bootstrap
The TTCN-3 test suite (ttcn3-bts-test) expects to receive exactly one
RF RESOURCE INDICATION message from each TRX during the bootstrap stage,
while waiting for all TRX to come up and be configured by the BSC.
l1sap_interf_meas_report() fires whenever bts->gsm_time.fn % period is
0, where period = intave * 104 (typically 624 frames). Since CLCK.ind
with FN=0 satisfies this condition, a report is sent at the very
beginning of each clock epoch.
This was not a problem before commit fcfc4e83, because the first
CLCK.ind from the transciever was effectively a no-op: with
last_fn_timer.fn zero-initialised, the first indication at FN=0 yielded
elapsed_fn=0 (not > MAX_FN_SKEW), and the catch-up loop (while fn !=
last_fn_timer.fn) would not execute either. Downlink scheduling only
started on the second CLCK.ind (at FN=102, which is > MAX_FN_SKEW),
and 102 % 624 != 0, so no RF RESOURCE INDICATION was triggered.
fcfc4e83 changed the logic so that Downlink scheduling now begins
immediately on the first CLCK.ind, via an unconditional call to
trx_setup_clock() -> bts_sched_fn(fn). When fake_trx starts its frame
counter from FN=0, this immediately triggers l1sap_interf_meas_report()
because 0 % 624 == 0. A second report follows ~2.88s later when the
periodic timer reaches FN=624, making the bootstrap logic
in ttcn3-bts-test unhappy.
Fix by shifting the trigger to (fn + 1) % period == 0, i.e. the report
fires at the last frame of each period rather than the first. FN=0 now
yields (0+1) % 624 = 1 != 0, suppressing the spurious bootstrap report.
The periodic behaviour and report cadence are otherwise unchanged.
Change-Id: I6550178427b08e67c9763f0f37efff5b88960b1f
Related: fcfc4e83 ("osmo-bts-trx: fix spurious shutdown on first CLCK.ind from osmo-trx")
AI-Assisted: yes (Claude)
---
M src/common/l1sap.c
1 file changed, 1 insertion(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/07/42907/1
diff --git a/src/common/l1sap.c b/src/common/l1sap.c
index 78938f8..f11bb2c 100644
--- a/src/common/l1sap.c
+++ b/src/common/l1sap.c
@@ -595,7 +595,7 @@
if (bts->interference.intave == 0)
return;
- if (bts->gsm_time.fn % period != 0)
+ if ((bts->gsm_time.fn + 1) % period != 0)
return;
llist_for_each_entry(trx, &bts->trx_list, list) {
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/42907?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: I6550178427b08e67c9763f0f37efff5b88960b1f
Gerrit-Change-Number: 42907
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bts/+/42910?usp=email )
Change subject: common: flush paging queue in nm_bts_fsm's NOTINSTALLED on_enter
......................................................................
common: flush paging queue in nm_bts_fsm's NOTINSTALLED on_enter
paging_reset() exists to flush stale paging records from the queue,
but was never called anywhere. Stale paging records can accumulate
when the OML link goes down: osmo-bts does not exit, so the paging
queue survives into the next BSC session.
Call it alongside bts_cbch_reset() and bts_asci_notification_reset()
in st_op_disabled_notinstalled_on_enter(), which fires after all TRXs
are confirmed closed and before a new OML connection is accepted.
Change-Id: I109ab282986b68b68ba5c11859c44b771c0416fd
AI-Assisted: yes (Claude)
---
M src/common/nm_bts_fsm.c
1 file changed, 2 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/10/42910/1
diff --git a/src/common/nm_bts_fsm.c b/src/common/nm_bts_fsm.c
index 5c4a534..e5bfb76 100644
--- a/src/common/nm_bts_fsm.c
+++ b/src/common/nm_bts_fsm.c
@@ -37,6 +37,7 @@
#include <osmo-bts/phy_link.h>
#include <osmo-bts/cbch.h>
#include <osmo-bts/notification.h>
+#include <osmo-bts/paging.h>
#define X(s) (1 << (s))
@@ -69,6 +70,7 @@
TALLOC_FREE(bts->mo.nm_attr);
bts_cbch_reset(bts);
bts_asci_notification_reset(bts);
+ paging_reset(bts->paging_state);
if (bts->c0_power_red_db > 0)
bts_set_c0_pwr_red(bts, 0);
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/42910?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: I109ab282986b68b68ba5c11859c44b771c0416fd
Gerrit-Change-Number: 42910
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bts/+/42909?usp=email )
Change subject: common: reset lchan meas state in gsm_ts_release()
......................................................................
common: reset lchan meas state in gsm_ts_release()
lchan->meas (including interf_meas_num and num_ul_meas) is normally
only reset by lchan_meas_reset() called from rsl_tx_chan_act_ack() on
RSL CHANNEL ACTIVATION. Idle logical channels are never RSL-activated,
so their measurement state is never reset via that path.
On an OML link re-establishment, osmo-bts does not exit: abis.c tears
down the signalling links, the bts_shutdown FSM powers down all TRXs,
and then waits for reconnect. The gsm_bts/trx/ts/lchan structures
remain in memory, so stale interf_meas_num survives the reconnect.
This is why we're seeing these ERRORs while running ttcn3-bts-test:
(bts=0,trx=2,ts=4,ss=6) Not enough room to store interference report (0dBm)
Add a lchan_meas_reset() call to gsm_ts_release(), which is called
from nm_channel_fsm's NOTINSTALLED on_enter after the TRX is confirmed
closed. This is exactly the right moment: the radio is fully stopped,
so no new samples arrive.
Change-Id: I18dc9d30417b0c5b2e579660d4a087d93445f956
AI-Assisted: yes (Claude)
---
M src/common/gsm_data.c
1 file changed, 6 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/09/42909/1
diff --git a/src/common/gsm_data.c b/src/common/gsm_data.c
index dad5587..5b50e5e 100644
--- a/src/common/gsm_data.c
+++ b/src/common/gsm_data.c
@@ -39,6 +39,7 @@
#include <osmo-bts/bts.h>
#include <osmo-bts/bts_trx.h>
#include <osmo-bts/logging.h>
+#include <osmo-bts/measurement.h>
struct osmo_tdef_group bts_tdef_groups[] = {
{ .name = "bts", .tdefs = bts_T_defs, .desc = "BTS process timers" },
@@ -336,6 +337,11 @@
for (ln = 0; ln < ARRAY_SIZE(ts->lchan); ln++) {
struct gsm_lchan *lchan = &ts->lchan[ln];
gsm_lchan_release(lchan, LCHAN_REL_ACT_OML);
+ /* Prevent stale interference/UL measurement samples from
+ * accumulating across an OML link re-establishment: idle lchans
+ * are never RSL-activated, so lchan_meas_reset() would otherwise
+ * not be called for them until the next RSL CHAN ACT. */
+ lchan_meas_reset(lchan);
}
ts->pchan = GSM_PCHAN_NONE;
/* Make sure pchan_is is reset, since PCU act_req to release it will be
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/42909?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: I18dc9d30417b0c5b2e579660d4a087d93445f956
Gerrit-Change-Number: 42909
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>