Projects
osmocom:master
osmo-bsc
Sign Up
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 35
View file
osmo-bsc.spec
Changed
@@ -18,13 +18,13 @@ Name: osmo-bsc Requires: osmocom-master -Version: 1.9.0.102.8826 +Version: 1.9.0.104.67181 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.9.0.102.8826.tar.xz +Source: osmo-bsc_1.9.0.104.67181.tar.xz Source1: rpmlintrc BuildRequires: automake >= 1.9 BuildRequires: libtool >= 2
View file
commit_671811f4fcf37229b5749b1091d720a9d14c7a5d.txt
Added
View file
commit_882602cdd860adc8ea1086a55d627424898d470a.txt
Deleted
View file
osmo-bsc_1.9.0.102.8826.dsc -> osmo-bsc_1.9.0.104.67181.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.9.0.102.8826 +Version: 1.9.0.104.67181 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: - f6e5a98c9a03906e7bed2af5e0adfe25522b30f2 583776 osmo-bsc_1.9.0.102.8826.tar.xz + 2127612ca59d3611d6aa8a09e23b586b6531f6bc 584044 osmo-bsc_1.9.0.104.67181.tar.xz Checksums-Sha256: - b2752dc3d8a6f20a962119aafd2665c3ec38e670e6c47d03097b2aa64713239a 583776 osmo-bsc_1.9.0.102.8826.tar.xz + 0753be5af63369022b127a490c47f42c8e7f43375bd475136beb4e2ceadaaac8 584044 osmo-bsc_1.9.0.104.67181.tar.xz Files: - 6e5542f42939aa425fa43abb92a426a8 583776 osmo-bsc_1.9.0.102.8826.tar.xz + 5f8891c300e60ee1a9cf0746d9860938 584044 osmo-bsc_1.9.0.104.67181.tar.xz
View file
osmo-bsc_1.9.0.102.8826.tar.xz/.tarball-version -> osmo-bsc_1.9.0.104.67181.tar.xz/.tarball-version
Changed
@@ -1 +1 @@ -1.9.0.102-8826 +1.9.0.104-67181
View file
osmo-bsc_1.9.0.102.8826.tar.xz/debian/changelog -> osmo-bsc_1.9.0.104.67181.tar.xz/debian/changelog
Changed
@@ -1,8 +1,8 @@ -osmo-bsc (1.9.0.102.8826) unstable; urgency=medium +osmo-bsc (1.9.0.104.67181) unstable; urgency=medium * Automatically generated changelog entry for building the Osmocom master feed - -- Osmocom OBS scripts <info@osmocom.org> Fri, 25 Nov 2022 12:23:26 +0000 + -- Osmocom OBS scripts <info@osmocom.org> Tue, 29 Nov 2022 11:43:14 +0000 osmo-bsc (1.9.0) unstable; urgency=medium
View file
osmo-bsc_1.9.0.102.8826.tar.xz/include/osmocom/bsc/paging.h -> osmo-bsc_1.9.0.104.67181.tar.xz/include/osmocom/bsc/paging.h
Changed
@@ -53,6 +53,14 @@ BSC_PAGING_FOR_LCS = 0x2, }; +/* OS#5552, OS#5553: Maximum allowed scheduling transmit delay in paging + * requests to be queued, in seconds. If calculated delay for requests to be + * queued goes over this threshold, they are discarded instead of inserted to + * the queue. This avoids keeping queueing requests which will be scheduled for + * transmission too late. + */ +#define PAGING_THRESHOLD_X3113_DEFAULT_SEC 60 + struct bsc_paging_params { enum bsc_paging_reason reason; struct bsc_msc_data *msc;
View file
osmo-bsc_1.9.0.102.8826.tar.xz/src/osmo-bsc/bts_vty.c -> osmo-bsc_1.9.0.104.67181.tar.xz/src/osmo-bsc/bts_vty.c
Changed
@@ -3033,7 +3033,7 @@ #define TNUM_STR "T-number, optionally preceded by 't' or 'T'\n" DEFUN_ATTR(cfg_bts_t3113_dynamic, cfg_bts_t3113_dynamic_cmd, "timer-dynamic TNNNN", - "Calculate T3113 dynamically based on channel config and load\n" + "Calculate T3113 dynamically based on channel config and load (default)\n" TNUM_STR, CMD_ATTR_IMMEDIATE) { @@ -4516,6 +4516,8 @@ /* if we have a limit, write it */ if (bts->paging.free_chans_need >= 0) vty_out(vty, " paging free %d%s", bts->paging.free_chans_need, VTY_NEWLINE); + if (!bts->T3113_dynamic) + vty_out(vty, " no timer-dynamic T3113%s", VTY_NEWLINE); vty_out(vty, " neighbor-list mode %s%s", get_value_string(bts_neigh_mode_strs, bts->neigh_list_manual_mode), VTY_NEWLINE);
View file
osmo-bsc_1.9.0.102.8826.tar.xz/src/osmo-bsc/net_init.c -> osmo-bsc_1.9.0.104.67181.tar.xz/src/osmo-bsc/net_init.c
Changed
@@ -26,6 +26,7 @@ #include <osmocom/bsc/chan_alloc.h> #include <osmocom/bsc/neighbor_ident.h> #include <osmocom/bsc/bts_setup_ramp.h> +#include <osmocom/bsc/paging.h> static struct osmo_tdef gsm_network_T_defs = { { .T = 4, .default_val = 5, .desc = "Timeout to receive BSSMAP RESET ACKNOWLEDGE from the MSC" }, @@ -74,6 +75,11 @@ " 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 = -3111, .default_val = 4, .desc = "Wait time after lchan was released in error (should be T3111 + 2s)" }, + { .T = -3113, .default_val = PAGING_THRESHOLD_X3113_DEFAULT_SEC, + .desc = "Maximum Paging Request Transmit Delay Threshold: " \ + "If the estimated transmit delay of the messages of the paging queue surpasses this threshold, new incoming " + "paging requests are 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" }, { .T = -3210, .default_val = 20, .desc = "After L3 Complete, wait for MSC to confirm" }, {} };
View file
osmo-bsc_1.9.0.102.8826.tar.xz/src/osmo-bsc/paging.c -> osmo-bsc_1.9.0.104.67181.tar.xz/src/osmo-bsc/paging.c
Changed
@@ -61,8 +61,6 @@ /* How many paging requests to Tx on RSL at max before going back to main loop */ #define MAX_PAGE_REQ_PER_ITER 10 -#define MAX_TX_DELAY_TIME_SEC 60 - /* How often to attempt sending new paging requests (initial, not retrans): 250ms */ static const struct timespec initial_period = { .tv_sec = 0, @@ -355,7 +353,7 @@ unsigned int num_reqs_same_pgroup); static unsigned int calculate_timer_3113(struct gsm_paging_request *req, unsigned int reqs_before, - unsigned int reqs_before_same_pgroup) + unsigned int reqs_before_same_pgroup, unsigned int max_dynamic_value) { unsigned int to_us, estimated_to, to; struct gsm_bts *bts = req->bts; @@ -389,9 +387,9 @@ /* ceiling in seconds + extra time */ estimated_to = (to_us + 999999) / 1000000 + d->val; - /* upper bound: 60s (OS#5553) */ - if (estimated_to > MAX_TX_DELAY_TIME_SEC) - to = MAX_TX_DELAY_TIME_SEC; + /* upper bound: see X3113, PAGING_THRESHOLD_X3113_DEFAULT_SEC */ + if (estimated_to > max_dynamic_value) + to = max_dynamic_value; else to = estimated_to; @@ -414,14 +412,16 @@ struct gsm_bts_paging_state *bts_entry = &bts->paging; struct gsm_paging_request *req, *last_initial_req = NULL; unsigned int t3113_timeout_s; + unsigned int x3113_s = osmo_tdef_get(bts->network->T_defs, -3113, OSMO_TDEF_S, -1); unsigned int reqs_before = 0, reqs_before_same_pgroup = 0; uint8_t pgroup = gsm0502_calc_paging_group(&bts->si_common.chan_desc, str_to_imsi(params->bsub->imsi)); rate_ctr_inc(rate_ctr_group_get_ctr(bts->bts_ctrs, BTS_CTR_PAGING_ATTEMPTED)); - /* don't try to queue more requests than we can realistically handle within MAX_TX_DELAY_TIME_SEC seconds */ - if (paging_pending_requests_nr(bts) > paging_estimate_available_slots(bts, MAX_TX_DELAY_TIME_SEC)) { + /* Don't try to queue more requests than we can realistically handle within X3113 seconds, + * see PAGING_THRESHOLD_X3113_DEFAULT_SEC. */ + if (paging_pending_requests_nr(bts) > paging_estimate_available_slots(bts, x3113_s)) { rate_ctr_inc(rate_ctr_group_get_ctr(bts->bts_ctrs, BTS_CTR_PAGING_OVERLOAD)); return -ENOSPC; } @@ -484,7 +484,7 @@ else/* Add in the middle of the list after last_initial_req */ __llist_add(&req->entry, &last_initial_req->entry, last_initial_req->entry.next); - t3113_timeout_s = calculate_timer_3113(req, reqs_before, reqs_before_same_pgroup); + t3113_timeout_s = calculate_timer_3113(req, reqs_before, reqs_before_same_pgroup, x3113_s); osmo_timer_schedule(&req->T3113, t3113_timeout_s, 0); /* Trigger scheduler if needed: */
View file
osmo-bsc_1.9.0.102.8826.tar.xz/tests/timer.vty -> osmo-bsc_1.9.0.104.67181.tar.xz/tests/timer.vty
Changed
@@ -35,6 +35,7 @@ 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: 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 of the paging queue surpasses this threshold, new incoming paging requests are 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) net: X3210 = 20 s After L3 Complete, wait for MSC to confirm (default: 20 s) mgw: X2427 = 5 s timeout for MGCP response from MGW (default: 5 s) @@ -89,6 +90,7 @@ 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: 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 of the paging queue surpasses this threshold, new incoming paging requests are 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) net: X3210 = 20 s After L3 Complete, wait for MSC to confirm (default: 20 s) mgw: X2427 = 5 s timeout for MGCP response from MGW (default: 5 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
.