Projects
osmocom:nightly
osmo-bsc
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 527
View file
osmo-bsc.spec
Changed
@@ -17,14 +17,14 @@ %define _lto_cflags %{nil} Name: osmo-bsc -Requires: osmocom-nightly = 202311262026 -Version: 1.11.0.38.252e7.202311262026 +Requires: osmocom-nightly = 202311272026 +Version: 1.11.0.40.67666.202311272026 Release: 0 Summary: OsmoBSC: Osmocom's Base Station Controller for 2G CS mobile networks License: AGPL-3.0-or-later AND GPL-2.0-or-later Group: Hardware/Mobile URL: https://osmocom.org/projects/osmobsc -Source: osmo-bsc_1.11.0.38.252e7.202311262026.tar.xz +Source: osmo-bsc_1.11.0.40.67666.202311272026.tar.xz Source1: rpmlintrc BuildRequires: automake >= 1.9 BuildRequires: libtool >= 2 @@ -49,7 +49,7 @@ OsmoBSC: Osmocom's Base Station Controller for 2G circuit-switched mobile networks. %package abisip-find -Requires: osmocom-nightly = 202311262026 +Requires: osmocom-nightly = 202311272026 Summary: CLI utility to find ip.access compatible BTS License: GPL-2.0-or-later Group: Productivity/Telephony/Utilities @@ -58,7 +58,7 @@ Command line utility to find ip.access compatible BTS. %package ipaccess-utils -Requires: osmocom-nightly = 202311262026 +Requires: osmocom-nightly = 202311272026 Summary: Command line utilities for ip.access nanoBTS License: GPL-2.0-or-later Group: Productivity/Telephony/Utilities @@ -69,7 +69,7 @@ and ipaccess-proxy. %package bs11-utils -Requires: osmocom-nightly = 202311262026 +Requires: osmocom-nightly = 202311272026 Summary: Command line utilities for Siemens BS-11 BTS License: GPL-2.0-or-later Group: Productivity/Telephony/Utilities @@ -80,7 +80,7 @@ public telephone network as frequency standard for the E1 line. %package meas-utils -Requires: osmocom-nightly = 202311262026 +Requires: osmocom-nightly = 202311272026 Summary: Command line utilities for OsmoBSC's measurement reports License: GPL-2.0-or-later Group: Productivity/Telephony/Utilities
View file
osmo-bsc_1.11.0.38.252e7.202311262026.dsc -> osmo-bsc_1.11.0.40.67666.202311272026.dsc
Changed
@@ -2,7 +2,7 @@ Source: osmo-bsc Binary: osmo-bsc, osmo-bsc-dbg, abisip-find, osmo-bsc-ipaccess-utils, osmo-bsc-bs11-utils, osmo-bsc-meas-utils, osmo-bsc-doc Architecture: any all -Version: 1.11.0.38.252e7.202311262026 +Version: 1.11.0.40.67666.202311272026 Maintainer: Osmocom team <openbsc@lists.osmocom.org> Homepage: https://projects.osmocom.org/projects/osmo-bsc Standards-Version: 3.9.8 @@ -18,8 +18,8 @@ osmo-bsc-ipaccess-utils deb net extra arch=any osmo-bsc-meas-utils deb net extra arch=any Checksums-Sha1: - 26321525df2e0412baab0bb988f60a404da1eaef 621128 osmo-bsc_1.11.0.38.252e7.202311262026.tar.xz + 62f776ddc15d0ee562e4a07b6fec58455f08c1a7 621476 osmo-bsc_1.11.0.40.67666.202311272026.tar.xz Checksums-Sha256: - 56e5d189e9aab81368455b1b8662da10676b12e9d1e1c5e5f962f27afc46ff62 621128 osmo-bsc_1.11.0.38.252e7.202311262026.tar.xz + 74e87f7324e56b18f233a33c6b0adbc885c41b2c3ca5a6628fa97e5c43f55aa1 621476 osmo-bsc_1.11.0.40.67666.202311272026.tar.xz Files: - e3471d8be7f5fb25149e8f8fae43185d 621128 osmo-bsc_1.11.0.38.252e7.202311262026.tar.xz + becd772907d3c3cdf953e72b1f68477e 621476 osmo-bsc_1.11.0.40.67666.202311272026.tar.xz
View file
osmo-bsc_1.11.0.38.252e7.202311262026.tar.xz/.tarball-version -> osmo-bsc_1.11.0.40.67666.202311272026.tar.xz/.tarball-version
Changed
@@ -1 +1 @@ -1.11.0.38-252e7.202311262026 +1.11.0.40-67666.202311272026
View file
osmo-bsc_1.11.0.38.252e7.202311262026.tar.xz/contrib/osmo-bsc.spec.in -> osmo-bsc_1.11.0.40.67666.202311272026.tar.xz/contrib/osmo-bsc.spec.in
Changed
@@ -17,7 +17,7 @@ %define _lto_cflags %{nil} Name: osmo-bsc -Requires: osmocom-nightly = 202311262026 +Requires: osmocom-nightly = 202311272026 Version: @VERSION@ Release: 0 Summary: OsmoBSC: Osmocom's Base Station Controller for 2G CS mobile networks @@ -48,7 +48,7 @@ OsmoBSC: Osmocom's Base Station Controller for 2G circuit-switched mobile networks. %package abisip-find -Requires: osmocom-nightly = 202311262026 +Requires: osmocom-nightly = 202311272026 Summary: CLI utility to find ip.access compatible BTS License: GPL-2.0-or-later Group: Productivity/Telephony/Utilities @@ -57,7 +57,7 @@ Command line utility to find ip.access compatible BTS. %package ipaccess-utils -Requires: osmocom-nightly = 202311262026 +Requires: osmocom-nightly = 202311272026 Summary: Command line utilities for ip.access nanoBTS License: GPL-2.0-or-later Group: Productivity/Telephony/Utilities @@ -68,7 +68,7 @@ and ipaccess-proxy. %package bs11-utils -Requires: osmocom-nightly = 202311262026 +Requires: osmocom-nightly = 202311272026 Summary: Command line utilities for Siemens BS-11 BTS License: GPL-2.0-or-later Group: Productivity/Telephony/Utilities @@ -79,7 +79,7 @@ public telephone network as frequency standard for the E1 line. %package meas-utils -Requires: osmocom-nightly = 202311262026 +Requires: osmocom-nightly = 202311272026 Summary: Command line utilities for OsmoBSC's measurement reports License: GPL-2.0-or-later Group: Productivity/Telephony/Utilities
View file
osmo-bsc_1.11.0.38.252e7.202311262026.tar.xz/debian/changelog -> osmo-bsc_1.11.0.40.67666.202311272026.tar.xz/debian/changelog
Changed
@@ -1,8 +1,8 @@ -osmo-bsc (1.11.0.38.252e7.202311262026) unstable; urgency=medium +osmo-bsc (1.11.0.40.67666.202311272026) unstable; urgency=medium * Automatically generated changelog entry for building the Osmocom nightly feed - -- Osmocom OBS scripts <info@osmocom.org> Sun, 26 Nov 2023 20:26:35 +0000 + -- Osmocom OBS scripts <info@osmocom.org> Mon, 27 Nov 2023 20:26:36 +0000 osmo-bsc (1.11.0) unstable; urgency=medium
View file
osmo-bsc_1.11.0.38.252e7.202311262026.tar.xz/debian/control -> osmo-bsc_1.11.0.40.67666.202311272026.tar.xz/debian/control
Changed
@@ -26,7 +26,7 @@ Package: osmo-bsc Architecture: any Multi-Arch: foreign -Depends: osmocom-nightly (= 202311262026), ${misc:Depends}, ${shlibs:Depends} +Depends: osmocom-nightly (= 202311272026), ${misc:Depends}, ${shlibs:Depends} Recommends: osmo-mgw Description: OsmoBSC: Osmocom's Base Station Controller for 2G circuit-switched mobile networks @@ -34,19 +34,19 @@ Section: debug Architecture: any Multi-Arch: same -Depends: osmocom-nightly (= 202311262026), osmo-bsc (= ${binary:Version}), ${misc:Depends} +Depends: osmocom-nightly (= 202311272026), osmo-bsc (= ${binary:Version}), ${misc:Depends} Description: OsmoBSC: Osmocom's Base Station Controller for 2G circuit-switched mobile networks Package: abisip-find Architecture: any Multi-Arch: foreign -Depends: osmocom-nightly (= 202311262026), ${misc:Depends}, ${shlibs:Depends} +Depends: osmocom-nightly (= 202311272026), ${misc:Depends}, ${shlibs:Depends} Description: Command line utility to find ip.access compatible BTS Package: osmo-bsc-ipaccess-utils Architecture: any Multi-Arch: foreign -Depends: osmocom-nightly (= 202311262026), ${misc:Depends}, ${shlibs:Depends} +Depends: osmocom-nightly (= 202311272026), ${misc:Depends}, ${shlibs:Depends} Description: Command line utilities for ip.access nanoBTS This package contains utilities that are specific for nanoBTS when being used together with OpenBSC. It contains mainly two tools: ipaccess-config and ipaccess-proxy. @@ -54,7 +54,7 @@ Package: osmo-bsc-bs11-utils Architecture: any Multi-Arch: foreign -Depends: osmocom-nightly (= 202311262026), ${misc:Depends}, ${shlibs:Depends} +Depends: osmocom-nightly (= 202311272026), ${misc:Depends}, ${shlibs:Depends} Description: Command line utilities for Siemens BS-11 BTS There is a tool in this package for configuring the Siemens BS-11 BTS. Additionally, it contains one tool for making use of an ISDN-card and the @@ -63,14 +63,14 @@ Package: osmo-bsc-meas-utils Architecture: any Multi-Arch: foreign -Depends: osmocom-nightly (= 202311262026), ${misc:Depends}, ${shlibs:Depends} +Depends: osmocom-nightly (= 202311272026), ${misc:Depends}, ${shlibs:Depends} Description: Command line utilities to manage measurement reports. Package: osmo-bsc-doc Architecture: all Section: doc Priority: optional -Depends: osmocom-nightly (= 202311262026), ${misc:Depends} +Depends: osmocom-nightly (= 202311272026), ${misc:Depends} Description: ${misc:Package} PDF documentation Various manuals: user manual, VTY reference manual and/or protocol/interface manuals.
View file
osmo-bsc_1.11.0.38.252e7.202311262026.tar.xz/doc/lchan-fsm.dot -> osmo-bsc_1.11.0.40.67666.202311272026.tar.xz/doc/lchan-fsm.dot
Changed
@@ -32,6 +32,7 @@ WAIT_TS_READY -> UNUSED label="error/timeout",style=dashed,constraint=false {WAIT_ACTIV_ACK,WAIT_RF_RELEASE_ACK} -> BORKEN label="error/timeout",style=dashed BORKEN -> WAIT_AFTER_ERROR label="late RF Release ACK" + BORKEN -> WAIT_RF_RELEASE_ACK label="late Activation ACK" WAIT_RLL_RTP_ESTABLISH -> WAIT_RLL_RTP_RELEASED label=error,style=dashed WAIT_ACTIV_ACK -> rtp label="LCHAN_RTP_EV_LCHAN_READY",style=dotted @@ -44,4 +45,13 @@ WAIT_RSL_CHAN_MODE_MODIFY_ACK -> ESTABLISHED label="LCHAN_EV_RSL_CHAN_MODE_MODIFY_ACK\nno change to RTP" WAIT_RR_CHAN_MODE_MODIFY_ACK -> BORKEN label="error/timeout",style=dashed WAIT_RSL_CHAN_MODE_MODIFY_ACK -> BORKEN label="error/timeout",style=dashed + + BORKEN -> RECOVER_WAIT_ACTIV_ACK label="X28" + RECOVER_WAIT_ACTIV_ACK -> BORKEN label="error/timeout",style=dashed + + RECOVER_WAIT_ACTIV_ACK -> UNUSED label="rx ACK" + RECOVER_WAIT_ACTIV_ACK -> RECOVER_WAIT_RF_RELEASE_ACK label="rx NACK" + + RECOVER_WAIT_RF_RELEASE_ACK -> UNUSED label="rx ACK" + RECOVER_WAIT_RF_RELEASE_ACK -> BORKEN label="error/timeout",style=dashed }
View file
osmo-bsc_1.11.0.38.252e7.202311262026.tar.xz/include/osmocom/bsc/lchan_fsm.h -> osmo-bsc_1.11.0.40.67666.202311272026.tar.xz/include/osmocom/bsc/lchan_fsm.h
Changed
@@ -33,6 +33,8 @@ LCHAN_ST_WAIT_RF_RELEASE_ACK, LCHAN_ST_WAIT_AFTER_ERROR, LCHAN_ST_BORKEN, + LCHAN_ST_RECOVER_WAIT_ACTIV_ACK, /*< Attempt to recover from BORKEN: first try to activate the lchan */ + LCHAN_ST_RECOVER_WAIT_RF_RELEASE_ACK, /*< Attempt to recover from BORKEN: then try to release it */ }; enum lchan_fsm_event {
View file
osmo-bsc_1.11.0.38.252e7.202311262026.tar.xz/src/osmo-bsc/lchan_fsm.c -> osmo-bsc_1.11.0.40.67666.202311272026.tar.xz/src/osmo-bsc/lchan_fsm.c
Changed
@@ -334,6 +334,9 @@ LCHAN_ST_WAIT_AFTER_ERROR = { .T = -3111 }, LCHAN_ST_WAIT_RR_CHAN_MODE_MODIFY_ACK = { .T = -13 }, LCHAN_ST_WAIT_RSL_CHAN_MODE_MODIFY_ACK = { .T = -14 }, + LCHAN_ST_BORKEN = { .T = -28 }, + LCHAN_ST_RECOVER_WAIT_ACTIV_ACK = { .T = -6 }, + LCHAN_ST_RECOVER_WAIT_RF_RELEASE_ACK = { .T = -6 }, }; /* Transition to a state, using the T timer defined in lchan_fsm_timeouts. @@ -380,6 +383,8 @@ LCHAN_ST_BORKEN = LCHAN_ST_BORKEN, LCHAN_ST_WAIT_RR_CHAN_MODE_MODIFY_ACK = LCHAN_ST_WAIT_RF_RELEASE_ACK, LCHAN_ST_WAIT_RSL_CHAN_MODE_MODIFY_ACK = LCHAN_ST_WAIT_RF_RELEASE_ACK, + LCHAN_ST_RECOVER_WAIT_ACTIV_ACK = LCHAN_ST_BORKEN, + LCHAN_ST_RECOVER_WAIT_RF_RELEASE_ACK = LCHAN_ST_BORKEN, }; #define lchan_fail(fmt, args...) lchan_fail_to(lchan_fsm_on_errorfi->state, fmt, ## args) @@ -1631,6 +1636,71 @@ } } +static void lchan_fsm_recover_wait_activ_ack_onenter(struct osmo_fsm_inst *fi, uint32_t prev_state) +{ + int rc; + struct gsm_lchan *lchan = lchan_fi_lchan(fi); + + LOG_LCHAN(lchan, LOGL_INFO, "attempting to recover from BORKEN lchan\n"); + + lchan->type = GSM_LCHAN_SDCCH; + lchan->activate.info.ta_known = true; + + chan_counts_ts_update(lchan->ts); + + rc = rsl_tx_chan_activ(lchan, RSL_ACT_INTRA_NORM_ASS, 0); + if (rc) + lchan_fail("Tx Chan Activ failed: %s (%d)", strerror(-rc), rc); +} + +static void lchan_fsm_recover_wait_activ_ack(struct osmo_fsm_inst *fi, uint32_t event, void *data) +{ + struct gsm_lchan *lchan = lchan_fi_lchan(fi); + + switch (event) { + + case LCHAN_EV_RSL_CHAN_ACTIV_ACK: + lchan_fsm_state_chg(LCHAN_ST_RECOVER_WAIT_RF_RELEASE_ACK); + break; + + case LCHAN_EV_RSL_CHAN_ACTIV_NACK: + /* If an earlier lchan activ got through to the BTS, but the + * ACK did not get back to the BSC, it may still be active on + * the BTS side. Proceed to release it. */ + LOG_LCHAN(lchan, LOGL_NOTICE, "received NACK for activation of BORKEN lchan, assuming still active\n"); + lchan_fsm_state_chg(LCHAN_ST_RECOVER_WAIT_RF_RELEASE_ACK); + break; + + default: + OSMO_ASSERT(false); + } +} + +static void lchan_fsm_recover_wait_rf_release_ack_onenter(struct osmo_fsm_inst *fi, uint32_t prev_state) +{ + int rc; + struct gsm_lchan *lchan = lchan_fi_lchan(fi); + + rc = rsl_tx_rf_chan_release(lchan); + if (rc) + lchan_fail("Tx RSL RF Channel Release failed: %s (%d)\n", strerror(-rc), rc); +} + +static void lchan_fsm_recover_wait_rf_release_ack(struct osmo_fsm_inst *fi, uint32_t event, void *data) +{ + struct gsm_lchan *lchan = lchan_fi_lchan(fi); + switch (event) { + + case LCHAN_EV_RSL_RF_CHAN_REL_ACK: + LOG_LCHAN(lchan, LOGL_NOTICE, "successfully recovered BORKEN lchan\n"); + lchan_fsm_state_chg(LCHAN_ST_UNUSED); + break; + + default: + OSMO_ASSERT(false); + } +} + #define S(x) (1 << (x)) static const struct osmo_fsm_state lchan_fsm_states = { @@ -1820,6 +1890,32 @@ | S(LCHAN_ST_WAIT_RF_RELEASE_ACK) | S(LCHAN_ST_UNUSED) | S(LCHAN_ST_WAIT_AFTER_ERROR) + | S(LCHAN_ST_RECOVER_WAIT_ACTIV_ACK) + , + }, + LCHAN_ST_RECOVER_WAIT_ACTIV_ACK { + .name = "RECOVER_WAIT_ACTIV_ACK", + .onenter = lchan_fsm_recover_wait_activ_ack_onenter, + .action = lchan_fsm_recover_wait_activ_ack, + .in_event_mask = 0 + | S(LCHAN_EV_RSL_CHAN_ACTIV_ACK) + | S(LCHAN_EV_RSL_CHAN_ACTIV_NACK) + , + .out_state_mask = 0 + | S(LCHAN_ST_BORKEN) + | S(LCHAN_ST_RECOVER_WAIT_RF_RELEASE_ACK) + , + }, + LCHAN_ST_RECOVER_WAIT_RF_RELEASE_ACK { + .name = "RECOVER_WAIT_RF_RELEASE_ACK", + .onenter = lchan_fsm_recover_wait_rf_release_ack_onenter, + .action = lchan_fsm_recover_wait_rf_release_ack, + .in_event_mask = 0 + | S(LCHAN_EV_RSL_RF_CHAN_REL_ACK) + , + .out_state_mask = 0 + | S(LCHAN_ST_BORKEN) + | S(LCHAN_ST_UNUSED) , }, }; @@ -1893,6 +1989,10 @@ lchan_fsm_state_chg(LCHAN_ST_UNUSED); return 0; + case LCHAN_ST_BORKEN: + lchan_fsm_state_chg(LCHAN_ST_RECOVER_WAIT_ACTIV_ACK); + return 0; + default: lchan->release.in_error = true; lchan->release.rsl_error_cause = RSL_ERR_INTERWORKING;
View file
osmo-bsc_1.11.0.38.252e7.202311262026.tar.xz/src/osmo-bsc/net_init.c -> osmo-bsc_1.11.0.40.67666.202311272026.tar.xz/src/osmo-bsc/net_init.c
Changed
@@ -74,6 +74,7 @@ " after this amount of idle time, forget internally cumulated time remainders. Zero to always" " keep remainders. See also X16, X17." }, { .T = -25, .default_val = 5, .desc = "Timeout for initial user data after an MSC initiated an SCCP connection to the BSS" }, + { .T = -28, .default_val = 30, .desc = "Interval at which to try to recover a BORKEN lchan" }, { .T = -3105, .default_val = GSM_NY1_DEFAULT, .unit = OSMO_TDEF_CUSTOM, .desc = "Ny1: Maximum number of Physical Information (re)transmissions" }, { .T = -3111, .default_val = 4, .desc = "Wait time after lchan was released in error (should be T3111 + 2s)" },
View file
osmo-bsc_1.11.0.38.252e7.202311262026.tar.xz/src/osmo-bsc/vgcs_fsm.c -> osmo-bsc_1.11.0.40.67666.202311272026.tar.xz/src/osmo-bsc/vgcs_fsm.c
Changed
@@ -795,6 +795,8 @@ /* Report talker detection to call state machine. */ if (conn->vgcs_chan.call) osmo_fsm_inst_dispatch(conn->vgcs_chan.call->vgcs_call.fi, VGCS_EV_CALLING_ASSIGNED, conn); + /* Repeat notification for the MS that has been assigned. */ + rsl_notification_cmd(conn->lchan->ts->trx->bts, conn->lchan, &conn->vgcs_chan.gc_ie, NULL); break; case VGCS_EV_CLEANUP: LOG_CHAN(conn, LOGL_DEBUG, "SCCP connection clearing.\n");
View file
osmo-bsc_1.11.0.38.252e7.202311262026.tar.xz/tests/timer.vty -> osmo-bsc_1.11.0.40.67666.202311272026.tar.xz/tests/timer.vty
Changed
@@ -34,6 +34,7 @@ net: X17 = 0 ms Rounding threshold for all_allocated:* rate counters: round up to the next counter increment after this many milliseconds. If set to half of X16 (or 0), employ the usual round() behavior: round up after half of a granularity period. If set to 1, behave like ceil(): already increment the counter immediately when all channels are allocated. If set >= X16, behave like floor(): only increment after a full X16 period of all channels being occupied. See also X16, X18 (default: 0 ms) net: X18 = 60000 ms Forget-sum period for all_allocated:* rate counters: after this amount of idle time, forget internally cumulated time remainders. Zero to always keep remainders. See also X16, X17. (default: 60000 ms) net: X25 = 5 s Timeout for initial user data after an MSC initiated an SCCP connection to the BSS (default: 5 s) +net: X28 = 30 s Interval at which to try to recover a BORKEN lchan (default: 30 s) net: X3105 = 17 Ny1: Maximum number of Physical Information (re)transmissions (default: 17) net: X3111 = 4 s Wait time after lchan was released in error (should be T3111 + 2s) (default: 4 s) net: X3113 = 60 s Maximum Paging Request Transmit Delay Threshold: If the estimated transmit delay of the messages in the paging queue surpasses this threshold, then new incoming paging requests will if possible replace a request in retransmission state from the queue or otherwise be discarded, hence limiting the size of the queue and maximum delay of its scheduled requests. X3113 also serves as the upper boundary for dynamic T3113 when estimating the expected maximum delay to get a response (default: 60 s) @@ -90,6 +91,7 @@ net: X17 = 0 ms Rounding threshold for all_allocated:* rate counters: round up to the next counter increment after this many milliseconds. If set to half of X16 (or 0), employ the usual round() behavior: round up after half of a granularity period. If set to 1, behave like ceil(): already increment the counter immediately when all channels are allocated. If set >= X16, behave like floor(): only increment after a full X16 period of all channels being occupied. See also X16, X18 (default: 0 ms) net: X18 = 60000 ms Forget-sum period for all_allocated:* rate counters: after this amount of idle time, forget internally cumulated time remainders. Zero to always keep remainders. See also X16, X17. (default: 60000 ms) net: X25 = 5 s Timeout for initial user data after an MSC initiated an SCCP connection to the BSS (default: 5 s) +net: X28 = 30 s Interval at which to try to recover a BORKEN lchan (default: 30 s) net: X3105 = 17 Ny1: Maximum number of Physical Information (re)transmissions (default: 17) net: X3111 = 4 s Wait time after lchan was released in error (should be T3111 + 2s) (default: 4 s) net: X3113 = 60 s Maximum Paging Request Transmit Delay Threshold: If the estimated transmit delay of the messages in the paging queue surpasses this threshold, then new incoming paging requests will if possible replace a request in retransmission state from the queue or otherwise be discarded, hence limiting the size of the queue and maximum delay of its scheduled requests. X3113 also serves as the upper boundary for dynamic T3113 when estimating the expected maximum delay to get a response (default: 60 s)
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.