laforge has submitted this change. ( https://gerrit.osmocom.org/c/osmo-bsc/+/28079 )
Change subject: acc: Simplify start/stop by using new signal S_NM_RUNNING_CHG
......................................................................
acc: Simplify start/stop by using new signal S_NM_RUNNING_CHG
ACC used to be stared/stopped based on operational/administrative state
changes. The new S_NM_RUNNING_CHG triggers a single boolean based on the
same logic, so we can now simplify the mechanism.
Change-Id: I2e09bcb18a6c3bb2e88bba98579fb4854a6b0699
---
M src/osmo-bsc/acc.c
1 file changed, 32 insertions(+), 106 deletions(-)
Approvals:
Jenkins Builder: Verified
pespin: Looks good to me, approved
laforge: Looks good to me, but someone else must approve
osmith: Looks good to me, but someone else must approve
diff --git a/src/osmo-bsc/acc.c b/src/osmo-bsc/acc.c
index 61a226c..1f23107 100644
--- a/src/osmo-bsc/acc.c
+++ b/src/osmo-bsc/acc.c
@@ -411,121 +411,47 @@
}
/* Implements osmo_signal_cbfn() -- trigger or abort ACC ramping upon changes RF lock state. */
-static int acc_ramp_nm_sig_cb(unsigned int subsys, unsigned int signal, void *handler_data, void *signal_data)
+static int acc_ramp_nm_sig_cb(unsigned int subsys, unsigned int signal,
+ void *handler_data, void *signal_data)
{
- struct nm_statechg_signal_data *nsd = signal_data;
- struct gsm_bts_trx *trx = NULL;
- bool trigger_ramping = false, abort_ramping = false;
-
- /* Handled signals map to an Administrative State Change ACK, or a State Changed Event Report. */
- if (signal != S_NM_STATECHG)
+ struct nm_running_chg_signal_data *nsd;
+ struct gsm_bts *bts;
+ struct gsm_bts_trx *trx;
+ if (signal != S_NM_RUNNING_CHG)
return 0;
-
- if (nsd->obj_class != NM_OC_RADIO_CARRIER)
+ nsd = signal_data;
+ bts = nsd->bts;
+ switch (nsd->obj_class) {
+ case NM_OC_RADIO_CARRIER:
+ trx = (struct gsm_bts_trx *)nsd->obj;
+ break;
+ case NM_OC_BASEB_TRANSC:
+ trx = gsm_bts_bb_trx_get_trx((struct gsm_bts_bb_trx *)nsd->obj);
+ break;
+ default:
return 0;
-
- trx = nsd->obj;
-
- LOG_TRX(trx, DRSL, LOGL_DEBUG, "ACC RAMP: administrative state %s -> %s\n",
- get_value_string(abis_nm_adm_state_names, nsd->old_state.administrative),
- get_value_string(abis_nm_adm_state_names, nsd->new_state.administrative));
- LOG_TRX(trx, DRSL, LOGL_DEBUG, "ACC RAMP: operational state %s -> %s\n",
- abis_nm_opstate_name(nsd->old_state.operational),
- abis_nm_opstate_name(nsd->new_state.operational));
+ }
/* We only care about state changes of the first TRX. */
- if (trx->nr != 0)
+ if (trx != trx->bts->c0)
return 0;
- /* RSL must already be up. We cannot send RACH system information to the BTS otherwise. */
- if (trx->rsl_link_primary == NULL) {
- LOG_TRX(trx, DRSL, LOGL_DEBUG,
- "ACC RAMP: ignoring state change because RSL link is down\n");
- return 0;
- }
-
- /* Trigger or abort ACC ramping based on the new state of this TRX. */
- if (nsd->old_state.administrative != nsd->new_state.administrative) {
- switch (nsd->new_state.administrative) {
- case NM_STATE_UNLOCKED:
- if (nsd->old_state.operational != nsd->new_state.operational) {
- /*
- * Administrative and operational state have both changed.
- * Trigger ramping only if TRX 0 will be both enabled and unlocked.
- */
- if (nsd->new_state.operational == NM_OPSTATE_ENABLED)
- trigger_ramping = true;
- else
- LOG_TRX(trx, DRSL, LOGL_DEBUG,
- "ACC RAMP: ignoring state change because TRX is "
- "transitioning into operational state '%s'\n",
- abis_nm_opstate_name(nsd->new_state.operational));
- } else {
- /*
- * Operational state has not changed.
- * Trigger ramping only if TRX 0 is already usable.
- */
- if (trx_is_usable(trx))
- trigger_ramping = true;
- else
- LOG_TRX(trx, DRSL, LOGL_DEBUG, "ACC RAMP: ignoring state change "
- "because TRX is not usable\n");
- }
- break;
- case NM_STATE_LOCKED:
- case NM_STATE_SHUTDOWN:
- abort_ramping = true;
- break;
- case NM_STATE_NULL:
- default:
- LOG_TRX(trx, DRSL, LOGL_ERROR, "ACC RAMP: unrecognized administrative state '0x%x' "
- "reported for TRX 0\n", nsd->new_state.administrative);
- break;
+ LOG_TRX(trx, DRSL, LOGL_DEBUG, "ACC RAMP: nm_obj=%s running=%u\n",
+ get_value_string(abis_nm_obj_class_names, nsd->obj_class), nsd->running);
+ if (nsd->running) {
+ /* Trigger ramping only if TRX 0 is already usable. That usually
+ * means RCARRIER+BBTRANSC NM objects are running (op=enabled
+ * adm=unlocked) */
+ if (trx_is_usable(trx)) {
+ LOG_BTS(bts, DPAG, LOGL_INFO, "ACC RAMP: C0 becomes available\n");
+ acc_ramp_trigger(&trx->bts->acc_ramp);
+ } else {
+ LOG_TRX(trx, DRSL, LOGL_DEBUG, "ACC RAMP: ignoring state change "
+ "because TRX is not usable\n");
}
- }
- if (nsd->old_state.operational != nsd->new_state.operational) {
- switch (nsd->new_state.operational) {
- case NM_OPSTATE_ENABLED:
- if (nsd->old_state.administrative != nsd->new_state.administrative) {
- /*
- * Administrative and operational state have both changed.
- * Trigger ramping only if TRX 0 will be both enabled and unlocked.
- */
- if (nsd->new_state.administrative == NM_STATE_UNLOCKED)
- trigger_ramping = true;
- else
- LOG_TRX(trx, DRSL, LOGL_DEBUG, "ACC RAMP: ignoring state change "
- "because TRX is transitioning into administrative state '%s'\n",
- get_value_string(abis_nm_adm_state_names, nsd->new_state.administrative));
- } else {
- /*
- * Administrative state has not changed.
- * Trigger ramping only if TRX 0 is already unlocked.
- */
- if (trx->mo.nm_state.administrative == NM_STATE_UNLOCKED)
- trigger_ramping = true;
- else
- LOG_TRX(trx, DRSL, LOGL_DEBUG, "ACC RAMP: ignoring state change "
- "because TRX is in administrative state '%s'\n",
- get_value_string(abis_nm_adm_state_names, trx->mo.nm_state.administrative));
- }
- break;
- case NM_OPSTATE_DISABLED:
- abort_ramping = true;
- break;
- case NM_OPSTATE_NULL:
- default:
- LOG_TRX(trx, DRSL, LOGL_ERROR, "ACC RAMP: unrecognized operational state '0x%x' "
- "reported for TRX 0\n", nsd->new_state.administrative);
- break;
- }
- }
-
- if (trigger_ramping)
- acc_ramp_trigger(&trx->bts->acc_ramp);
- else if (abort_ramping)
+ } else {
acc_ramp_abort(&trx->bts->acc_ramp);
-
+ }
return 0;
}
--
To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/28079
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bsc
Gerrit-Branch: master
Gerrit-Change-Id: I2e09bcb18a6c3bb2e88bba98579fb4854a6b0699
Gerrit-Change-Number: 28079
Gerrit-PatchSet: 3
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged
Attention is currently required from: pespin.
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-bsc/+/28046 )
Change subject: Introduce new signal S_NM_RUNNING_CHG and implement it for rcarrier,bbtransc
......................................................................
Patch Set 6: Code-Review+2
--
To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/28046
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bsc
Gerrit-Branch: master
Gerrit-Change-Id: I206d4c7863a77fbab6a600126742a6a6b8fc3614
Gerrit-Change-Number: 28046
Gerrit-PatchSet: 6
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Sun, 15 May 2022 08:07:05 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
Attention is currently required from: pespin.
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-bsc/+/28046 )
Change subject: Introduce new signal S_NM_RUNNING_CHG and implement it for rcarrier,bbtransc
......................................................................
Patch Set 6: Code-Review+1
(1 comment)
Patchset:
PS6:
thanks!
--
To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/28046
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bsc
Gerrit-Branch: master
Gerrit-Change-Id: I206d4c7863a77fbab6a600126742a6a6b8fc3614
Gerrit-Change-Number: 28046
Gerrit-PatchSet: 6
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Sun, 15 May 2022 08:06:55 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
laforge has submitted this change. ( https://gerrit.osmocom.org/c/osmo-gsm-manuals/+/28097 )
Change subject: port_numbers: Add missing records for osmo-upf, pfcp-tool, hnodeb
......................................................................
port_numbers: Add missing records for osmo-upf, pfcp-tool, hnodeb
Seems like the instructions for adding new port numbers were not
followed when those entires were added to
https://osmocom.org/projects/cellular-infrastructure/wiki/Port_Numbers
Change-Id: Ie077bc375d45202f6004d0a3d45e5fc772d5641d
---
M common/chapters/port_numbers.adoc
1 file changed, 6 insertions(+), 0 deletions(-)
Approvals:
Jenkins Builder: Verified
pespin: Looks good to me, but someone else must approve
fixeria: Looks good to me, approved
diff --git a/common/chapters/port_numbers.adoc b/common/chapters/port_numbers.adoc
index 5faf3cf..c86551d 100644
--- a/common/chapters/port_numbers.adoc
+++ b/common/chapters/port_numbers.adoc
@@ -52,6 +52,12 @@
|TCP|4269|telnet (VTY)|osmo-e1d
|TCP|4271|telnet (VTY)|osmo-smlc
|TCP|4272|Control Interface|osmo-smlc
+|TCP|4273|telnet (VTY)|osmo-hnodeb
+|TCP|4274|Control Interface|osmo-hnodeb
+|TCP|4275|telnet (VTY)|osmo-upf
+|TCP|4276|Control Interface|osmo-upf
+|TCP|4277|telnet (VTY)|osmo-pfcp-tool
+|TCP|4278|Control Interface|osmo-pfcp-tool
|UDP|4729|GSMTAP|Almost every osmocom project
|TCP|5000|A/IP|osmo-bsc, osmo-bsc_nat
|UDP|23000|GPRS-NS over IP default port|osmo-pcu, osmo-sgsn, osmo-gbproxy
--
To view, visit https://gerrit.osmocom.org/c/osmo-gsm-manuals/+/28097
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-gsm-manuals
Gerrit-Branch: master
Gerrit-Change-Id: Ie077bc375d45202f6004d0a3d45e5fc772d5641d
Gerrit-Change-Number: 28097
Gerrit-PatchSet: 2
Gerrit-Owner: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged
Attention is currently required from: fixeria, pespin.
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-bsc/+/28099 )
Change subject: Add new Manual "OsmoBSC CBSP Protocol Specification"
......................................................................
Patch Set 1:
(4 comments)
Commit Message:
https://gerrit.osmocom.org/c/osmo-bsc/+/28099/comment/6b312bed_5b5ec530
PS1, Line 7: Add new Manuall "OsmoBSC CBSP Protocol Specification"
> Manual
Done
File doc/manuals/cbsp/messages.adoc:
https://gerrit.osmocom.org/c/osmo-bsc/+/28099/comment/018c54f9_04387d94
PS1, Line 59: The RESET FAILURE message hence only occurs if the CBC were to identify
> Ack, I also find this confusing. Most likely, existing/non-existent cell is the key difference here. […]
Done
File doc/manuals/cbsp/procedures.adoc:
https://gerrit.osmocom.org/c/osmo-bsc/+/28099/comment/806c372e_bf2a3fba
PS1, Line 34: of OsmoBTS and OsmoPCU):
> Ack
Done
https://gerrit.osmocom.org/c/osmo-bsc/+/28099/comment/76fd7f97_53c53623
PS1, Line 69: persistent in the BSC and if Cells reboot / restart during the duration
> cellswithout caps?
Done
--
To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/28099
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bsc
Gerrit-Branch: master
Gerrit-Change-Id: I2e18e167281fac3abaf380089ff883738ebaa0a0
Gerrit-Change-Number: 28099
Gerrit-PatchSet: 1
Gerrit-Owner: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Sun, 15 May 2022 08:04:08 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: pespin <pespin(a)sysmocom.de>
Comment-In-Reply-To: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: comment
Attention is currently required from: laforge, pespin.
Hello Jenkins Builder,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-bsc/+/28099
to look at the new patch set (#2).
Change subject: Add new Manual "OsmoBSC CBSP Protocol Specification"
......................................................................
Add new Manual "OsmoBSC CBSP Protocol Specification"
This document decribes the level of CBSP support in the codebase.
Related: SYS#5945
Change-Id: I2e18e167281fac3abaf380089ff883738ebaa0a0
---
M doc/manuals/Makefile.am
A doc/manuals/cbsp/messages.adoc
A doc/manuals/cbsp/procedures.adoc
A doc/manuals/osmobsc-cbsp-docinfo.xml
A doc/manuals/osmobsc-cbsp.adoc
5 files changed, 266 insertions(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/99/28099/2
--
To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/28099
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bsc
Gerrit-Branch: master
Gerrit-Change-Id: I2e18e167281fac3abaf380089ff883738ebaa0a0
Gerrit-Change-Number: 28099
Gerrit-PatchSet: 2
Gerrit-Owner: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: newpatchset
Attention is currently required from: keith.
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-mgw/+/28112 )
Change subject: Don't check rtp timestamps if we are not patching timestamps.
......................................................................
Patch Set 1:
(1 comment)
Patchset:
PS1:
I'm not sure if this is the right approach, I think this needs more investigation. The RTP timestamps should not be discontinous or otherwise "odd" to begin with...
--
To view, visit https://gerrit.osmocom.org/c/osmo-mgw/+/28112
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-mgw
Gerrit-Branch: master
Gerrit-Change-Id: I889fce4c86cffdcbb74b17cd36ccda89c034a824
Gerrit-Change-Number: 28112
Gerrit-PatchSet: 1
Gerrit-Owner: keith <keith(a)rhizomatica.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: laforge <laforge(a)osmocom.org>
Gerrit-Attention: keith <keith(a)rhizomatica.org>
Gerrit-Comment-Date: Sun, 15 May 2022 07:58:55 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
Attention is currently required from: fixeria.
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-msc/+/28108 )
Change subject: switch sqlite3 to single-threaded mode
......................................................................
Patch Set 3:
(1 comment)
Patchset:
PS3:
> IMO, it would make more sense to switch from libdbi to libsqlite3 first, and then set sqlite3 specif […]
This should be a rather small uncontroversial change that is expected to significantly reduce CPU utilization of osmo-msc. We might even want to backport it to earlier tagged releases.
The migration to libsqlite3 is much more risky and prone to introduction of errors, and likely cannot be merged very quickly.
--
To view, visit https://gerrit.osmocom.org/c/osmo-msc/+/28108
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-msc
Gerrit-Branch: master
Gerrit-Change-Id: I5bbea90d28b6d73b64b9e5124ff59304b90a8a75
Gerrit-Change-Number: 28108
Gerrit-PatchSet: 3
Gerrit-Owner: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-CC: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Comment-Date: Sun, 15 May 2022 07:58:06 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: comment