Attention is currently required from: pespin.
Hello osmith, Jenkins Builder,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-pcu/+/33525
to look at the new patch set (#3).
Change subject: Reestore last LLC frames never completely acked when freeing DL TBF
......................................................................
Reestore last LLC frames never completely acked when freeing DL TBF
Scenario: A DL TBF is assigned over PCH (CCCH) and we start transmitting
DL data blocks blindly after X2002, but at the same time the MS start
packet-access-procedure to request an UL TBF.
Right now osmo-pcu correctly detects the MS is available in PDCH and
re-assigns a DL TBF using PACCH, but the LLC frames it transmitted in
the old PCH-assigned DL TBF get lost when that older TBF is freed
(because the DL blocks were removed from the GprsMs llc_queue).
This issue is now more frequent since X2002 timer was added recently to
delay starting requesting USF for a UL TBF, hence the contention
resolution in general takes more time and hence the PACCH assignment of
the DL TBF takes more time too, so more DL data blocks are transmitted
to the DL TBF assigned over PCH during that time.
This patch improves the situation to at least recover the DL blocks
transmitted if the DL TBF is freed (due to MS merge trigger by scenario
mentioned above), where no DL ACK/NACK was ever received by the MS.
Ideal solution would be to have complete tracking of which LLC PDUs from
the llc_queues were completely ACKed at RLC/MAC level, but that really
requires a lot of work and major refactoring, which are left as a future
improvement.
Change-Id: I9be4035fb2cf2b3ee56e91dcc12cc8c24028b4aa
---
M src/gprs_ms.c
M src/llc.c
M src/llc.h
M src/tbf_dl.cpp
M src/tbf_dl.h
M tests/llc/LlcTest.cpp
M tests/tbf/TbfTest.err
7 files changed, 158 insertions(+), 21 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/25/33525/3
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/33525
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: I9be4035fb2cf2b3ee56e91dcc12cc8c24028b4aa
Gerrit-Change-Number: 33525
Gerrit-PatchSet: 3
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: newpatchset
Attention is currently required from: osmith.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/33530 )
Change subject: tbf_dl_fsm: Fix '{FLOW}: Event ASSIGN_PCUIF_CNF not permitted'
......................................................................
Patch Set 2:
(1 comment)
File src/tbf_dl_fsm.c:
https://gerrit.osmocom.org/c/osmo-pcu/+/33530/comment/40a1d2c3_11086416
PS2, Line 227: "(CCCH was not requested on current assignment)\n");
> This sounds like it will not be ignored if CCCH is in state_flags, but it is also ignoring it there […]
Yes, it's intentional. We ignore it because it's from a previous assignment, but it won't trigger the alarms of a user looking at the code or logging of running osmo-pcu since it will be an expected event (receiving PCUIF_CNF if it was assigned over CCCH).
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/33530
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: I042b0117552acae25c750e762f5cc254399da64f
Gerrit-Change-Number: 33530
Gerrit-PatchSet: 2
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: osmith <osmith(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 29 Jun 2023 12:55:31 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: osmith <osmith(a)sysmocom.de>
Gerrit-MessageType: comment
Attention is currently required from: pespin.
osmith has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/33525 )
Change subject: Re-store last LLC frames never completely acked when freeing DL TBF
......................................................................
Patch Set 2:
(2 comments)
File src/llc.c:
https://gerrit.osmocom.org/c/osmo-pcu/+/33525/comment/ebcb53ad_a47e31eb
PS2, Line 368: OSMO_ASSERT(info);
> If the queue is empty, msg=NULL and return in line 362 occurs, so this case you say cannot happen.
Ack
File src/tbf_dl.cpp:
https://gerrit.osmocom.org/c/osmo-pcu/+/33525/comment/b72bb0eb_c8abb27d
PS2, Line 546: if any
> See my other comment, function doesn't assert.
Ack
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/33525
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: I9be4035fb2cf2b3ee56e91dcc12cc8c24028b4aa
Gerrit-Change-Number: 33525
Gerrit-PatchSet: 2
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 29 Jun 2023 12:53:05 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: osmith <osmith(a)sysmocom.de>
Comment-In-Reply-To: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: comment
Attention is currently required from: osmith.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/33525 )
Change subject: Re-store last LLC frames never completely acked when freeing DL TBF
......................................................................
Patch Set 2:
(2 comments)
File src/llc.c:
https://gerrit.osmocom.org/c/osmo-pcu/+/33525/comment/4efed514_77842342
PS2, Line 368: OSMO_ASSERT(info);
> maybe add a comment on top of the function that the queue must not be empty if out_info is set?
If the queue is empty, msg=NULL and return in line 362 occurs, so this case you say cannot happen.
File src/tbf_dl.cpp:
https://gerrit.osmocom.org/c/osmo-pcu/+/33525/comment/6ea3ec69_c7f9e926
PS2, Line 546: if any
> might be a bit nitpicky, but the "if any" part is dealt with above; now the function will assert if […]
See my other comment, function doesn't assert.
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/33525
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: I9be4035fb2cf2b3ee56e91dcc12cc8c24028b4aa
Gerrit-Change-Number: 33525
Gerrit-PatchSet: 2
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: osmith <osmith(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 29 Jun 2023 12:52:12 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: osmith <osmith(a)sysmocom.de>
Gerrit-MessageType: comment
Attention is currently required from: osmith.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/33525 )
Change subject: Re-store last LLC frames never completely acked when freeing DL TBF
......................................................................
Patch Set 2:
(1 comment)
Commit Message:
https://gerrit.osmocom.org/c/osmo-pcu/+/33525/comment/76b926aa_ba24bfa3
PS2, Line 30: improvement.
> Is there an issue about improving this in the future? (If so, reference it here?)
time and headaches, nothing special.
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/33525
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: I9be4035fb2cf2b3ee56e91dcc12cc8c24028b4aa
Gerrit-Change-Number: 33525
Gerrit-PatchSet: 2
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: osmith <osmith(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 29 Jun 2023 12:36:54 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: osmith <osmith(a)sysmocom.de>
Gerrit-MessageType: comment
Attention is currently required from: pespin.
osmith has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/33530 )
Change subject: tbf_dl_fsm: Fix '{FLOW}: Event ASSIGN_PCUIF_CNF not permitted'
......................................................................
Patch Set 2:
(1 comment)
File src/tbf_dl_fsm.c:
https://gerrit.osmocom.org/c/osmo-pcu/+/33530/comment/f6b2fa93_219432ba
PS2, Line 227: "(CCCH was not requested on current assignment)\n");
This sounds like it will not be ignored if CCCH is in state_flags, but it is also ignoring it there (just not logging a message), right? Is this intentional?
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/33530
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: I042b0117552acae25c750e762f5cc254399da64f
Gerrit-Change-Number: 33530
Gerrit-PatchSet: 2
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 29 Jun 2023 12:25:04 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
Attention is currently required from: laforge.
jolly has posted comments on this change. ( https://gerrit.osmocom.org/c/osmocom-bb/+/33532 )
Change subject: mobile: Fix gsm_refer_pcs(): PCS can only be ARFCN 512..810
......................................................................
Patch Set 2:
(1 comment)
File src/host/layer23/src/common/sysinfo.c:
https://gerrit.osmocom.org/c/osmocom-bb/+/33532/comment/9d87c4ec_4f8e21b0
PS2, Line 65: (arfcn >= 512 && arfcn <= 810)
> I guess the only clean solution is to add one additional argument to the function (and document what […]
Yes this makes it simpler.
--
To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/33532
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: Id99c8534bf853f4f24f99364790c1ac1df6cc007
Gerrit-Change-Number: 33532
Gerrit-PatchSet: 2
Gerrit-Owner: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: jolly <andreas(a)eversberg.eu>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Comment-Date: Thu, 29 Jun 2023 09:23:41 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: jolly <andreas(a)eversberg.eu>
Comment-In-Reply-To: laforge <laforge(a)osmocom.org>
Gerrit-MessageType: comment
Attention is currently required from: jolly.
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/osmocom-bb/+/33532 )
Change subject: mobile: Fix gsm_refer_pcs(): PCS can only be ARFCN 512..810
......................................................................
Patch Set 2:
(1 comment)
File src/host/layer23/src/common/sysinfo.c:
https://gerrit.osmocom.org/c/osmocom-bb/+/33532/comment/7a77fb85_7c46bd38
PS2, Line 65: (arfcn >= 512 && arfcn <= 810)
> This would only allow cells in the DCS range to refer to cells with PCS frequencies. […]
I guess the only clean solution is to add one additional argument to the function (and document what it actually is supposed to do). That additional argument is the *arfcn of the cell through which we have received an ARFCN (assignment, SI, ...). In this case we can use the sending-cell-bcch-arfcn and the sending-cell-si1ro-band_ind to determine whether the ARFCN in question is PCS or not.
--
To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/33532
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: Id99c8534bf853f4f24f99364790c1ac1df6cc007
Gerrit-Change-Number: 33532
Gerrit-PatchSet: 2
Gerrit-Owner: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: jolly <andreas(a)eversberg.eu>
Gerrit-Attention: jolly <andreas(a)eversberg.eu>
Gerrit-Comment-Date: Thu, 29 Jun 2023 09:14:26 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: jolly <andreas(a)eversberg.eu>
Gerrit-MessageType: comment
Attention is currently required from: laforge.
jolly has posted comments on this change. ( https://gerrit.osmocom.org/c/osmocom-bb/+/33532 )
Change subject: mobile: Fix gsm_refer_pcs(): PCS can only be ARFCN 512..810
......................................................................
Patch Set 2:
(2 comments)
Patchset:
PS2:
This would only allow cells in the DCS range to refer to cells with PCS frequencies. This makes no sense, because you cannot have DCS and PCS cells mixed in the same network.
We want non DCS/PCS cells refer to DCS or PCS depending on the band indicator when they talk about ARFCN 512..885.
The actual fix must be done in several locations at layer23/src/mobile/gsm48_rr.c:
if (gsm_refer_pcs(CELL-ARFCN, s) && REFER-ARFCN >= 512 && REFER-ARFCN <= 810)
REFER-ARFCN |= ARFCN_PCS;
Where CELL-ARFCN is the frequency of the cell and REFER-ARFCN is a frequency the cell talks about.
File src/host/layer23/src/common/sysinfo.c:
https://gerrit.osmocom.org/c/osmocom-bb/+/33532/comment/ee7545ef_f64fb346
PS2, Line 65: (arfcn >= 512 && arfcn <= 810)
This would only allow cells in the DCS range to refer to cells with PCS frequencies. This makes no sense, because you cannot have DCS and PCS cells mixed in the same network.
We want non DCS/PCS cells refer to DCS or PCS depending on the band indicator when they talk about ARFCN 512..885.
The actual fix must be done in several locations at layer23/src/mobile/gsm48_rr.c:
if (gsm_refer_pcs(CELL-ARFCN, s) && REFER-ARFCN >= 512 && REFER-ARFCN <= 810)
REFER-ARFCN |= ARFCN_PCS;
Where CELL-ARFCN is the frequency of the cell and REFER-ARFCN is a frequency the cell talks about.
--
To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/33532
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: Id99c8534bf853f4f24f99364790c1ac1df6cc007
Gerrit-Change-Number: 33532
Gerrit-PatchSet: 2
Gerrit-Owner: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: jolly <andreas(a)eversberg.eu>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Comment-Date: Thu, 29 Jun 2023 08:57:30 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
Attention is currently required from: laforge.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/libosmocore/+/33531 )
Change subject: gsmtap_source_free(): Don't crash if NULL is passed
......................................................................
Patch Set 1: Code-Review+2
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/33531
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: If0f6c11ac6ad987368e1d5c63a07fc456f89db2a
Gerrit-Change-Number: 33531
Gerrit-PatchSet: 1
Gerrit-Owner: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Comment-Date: Thu, 29 Jun 2023 08:54:40 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
Attention is currently required from: laforge.
jolly has posted comments on this change. ( https://gerrit.osmocom.org/c/osmocom-bb/+/33532 )
Change subject: mobile: Fix gsm_refer_pcs(): PCS can only be ARFCN 512..810
......................................................................
Patch Set 2: Code-Review-1
--
To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/33532
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: Id99c8534bf853f4f24f99364790c1ac1df6cc007
Gerrit-Change-Number: 33532
Gerrit-PatchSet: 2
Gerrit-Owner: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: jolly <andreas(a)eversberg.eu>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Comment-Date: Thu, 29 Jun 2023 08:54:14 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
Attention is currently required from: laforge.
jolly has posted comments on this change. ( https://gerrit.osmocom.org/c/osmocom-bb/+/33532 )
Change subject: mobile: Fix gsm_refer_pcs(): PCS can only be ARFCN 512..810
......................................................................
Patch Set 2:
(1 comment)
Patchset:
PS2:
This would only allow cells in the DCS range to refer to cells with PCS frequencies. This makes no sense, because you cannot have DCS and PCS cells mixed in the same network.
We want non DCS/PCS cells refer to DCS or PCS depending on the band indicator when they talk about ARFCN 512..885.
The actual fix must be done in several locations at layer23/src/mobile/gsm48_rr.c:
if (gsm_refer_pcs(CELL-ARFCN, s) && REFER-ARFCN >= 512 && REFER-ARFCN <= 810)
REFER-ARFCN |= ARFCN_PCS;
Where CELL-ARFCN is the frequency of the cell and REFER-ARFCN is a frequency the cell talks about.
--
To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/33532
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: Id99c8534bf853f4f24f99364790c1ac1df6cc007
Gerrit-Change-Number: 33532
Gerrit-PatchSet: 2
Gerrit-Owner: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: jolly <andreas(a)eversberg.eu>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Comment-Date: Thu, 29 Jun 2023 08:52:21 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
Attention is currently required from: pespin.
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/33453 )
Change subject: Avoid using UL TBF in RELEASE state to assign DL TBF over PACCH
......................................................................
Patch Set 3: Code-Review+1
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/33453
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: Ia11f7802779cfeea15a71bddad9f7e0c6c1afb11
Gerrit-Change-Number: 33453
Gerrit-PatchSet: 3
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 29 Jun 2023 08:27:47 +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-pcu/+/33524 )
Change subject: ms_need_dl_tbf(): Fix state checks and document function
......................................................................
Patch Set 1: Code-Review+1
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/33524
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: I96f311480d036859511c6ba825ccd36bdc71190b
Gerrit-Change-Number: 33524
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 29 Jun 2023 08:27:23 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
Attention is currently required from: neels.
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/33486 )
Change subject: hnbgw: add CN pool tests
......................................................................
Patch Set 1: Code-Review+1
(1 comment)
File hnbgw/HNBGW_Tests.ttcn:
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/33486/comment/91bfa656_4ad4…
PS1, Line 330: var charstring g_ctr_cn_node_name;
In TTCN3 one could introduce a constrained string type which only permits to ever be "msc" or "sgsn" for this. Not critical, just mentioning that this option exists, and we as mainly C-developers aren't used to it.
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/33486
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: I027a059faed3f140f8801f84338956cd004043b5
Gerrit-Change-Number: 33486
Gerrit-PatchSet: 1
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 29 Jun 2023 08:25:35 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
Attention is currently required from: neels.
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/33481 )
Change subject: hnbgw: do not dup MSC_RanOps
......................................................................
Patch Set 1: Code-Review+1
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/33481
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: I556eb4293f51b56a526d4e60c3ac2aa357a8d3e7
Gerrit-Change-Number: 33481
Gerrit-PatchSet: 1
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 29 Jun 2023 08:23:03 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
Attention is currently required from: neels.
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/33488 )
Change subject: hnbgw: add mscpool paging tests
......................................................................
Patch Set 1:
(1 comment)
File hnbgw/HNBGW_Tests.ttcn:
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/33488/comment/e2590b00_cc20…
PS1, Line 2296: RUA Emulation forwards those RUA Unitdata only to the ranap_unitdata_cb
As far as I can see, RUA_Emulation calls whatever unitdata callback was registered by the user of RUA_Emulation. As far as I can see IuhRanapUnitdataCallback() doesn't really do anything with it so far?
The comment reads a bit as there is a missing feature in the RUA emulation. To me it seems the omission is more on the user side of the RUA emulation, as it doesn't register a meaningful call-back. Or do you think that the RUA emulation itself should do anything with those unitdata messages? Like parsing a paging, matching the mobile identity and dispatching it to the respective CLIENT?
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/33488
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: If4bbd5c970108b01e8556fa7744ff627db75fb13
Gerrit-Change-Number: 33488
Gerrit-PatchSet: 1
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: laforge <laforge(a)osmocom.org>
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 29 Jun 2023 08:20:55 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
Attention is currently required from: neels.
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/33490 )
Change subject: rua: also match on RUA Disconnect without RANAP payload
......................................................................
Patch Set 1:
(1 comment)
Patchset:
PS1:
as this is going in between layers and potential cause for non-subtle behavior changes, I think it's worth to think a few minutes about it.
Before starting a longer discussion here, I would like to see how this i s used before making a decision. Right now I don't see that this patch notifies the client/user in any way once a disconnect without the mandatory IEs is received.
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/33490
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: Ia0b89e9198794d196a88040ee89bdf24f3b08ae0
Gerrit-Change-Number: 33490
Gerrit-PatchSet: 1
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: laforge <laforge(a)osmocom.org>
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 29 Jun 2023 08:11:49 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
Attention is currently required from: neels.
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/33489 )
Change subject: rua: RUA_Disc_Ind only when CLIENT is connected
......................................................................
Patch Set 1: Code-Review+2
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/33489
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: Ia1403f39cfdc75139922292a3eace7a69a64a576
Gerrit-Change-Number: 33489
Gerrit-PatchSet: 1
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 29 Jun 2023 08:07:29 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
Attention is currently required from: neels.
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/33487 )
Change subject: RANAP_Templates: drop unused arg from ts_RANAP_Paging()
......................................................................
Patch Set 1: Code-Review+2
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/33487
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: I7e4bbdba34d2f0af9044050fff19ced5ea969ae9
Gerrit-Change-Number: 33487
Gerrit-PatchSet: 1
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 29 Jun 2023 08:07:09 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
Attention is currently required from: jolly.
Hello Jenkins Builder, jolly,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmocom-bb/+/33532
to look at the new patch set (#2).
Change subject: mobile: Fix gsm_refer_pcs(): PCS can only be ARFCN 512..810
......................................................................
mobile: Fix gsm_refer_pcs(): PCS can only be ARFCN 512..810
While it is correct to use the band indicator from SI1 rest octets,
it may only be applied for ARFCN values in the range 512..810.
Change-Id: Id99c8534bf853f4f24f99364790c1ac1df6cc007
Related: OS#6078
---
M src/host/layer23/src/common/sysinfo.c
1 file changed, 18 insertions(+), 2 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/32/33532/2
--
To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/33532
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: Id99c8534bf853f4f24f99364790c1ac1df6cc007
Gerrit-Change-Number: 33532
Gerrit-PatchSet: 2
Gerrit-Owner: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: jolly <andreas(a)eversberg.eu>
Gerrit-Attention: jolly <andreas(a)eversberg.eu>
Gerrit-MessageType: newpatchset
Attention is currently required from: pespin.
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/osmocom-bb/+/33318 )
Change subject: layer23: migrate away from gsm48_generate_mid_from_*
......................................................................
Patch Set 2:
(1 comment)
File src/host/layer23/src/mobile/gsm48_mm.c:
https://gerrit.osmocom.org/c/osmocom-bb/+/33318/comment/80169346_9031e662
PS1, Line 310: int rc = osmo_mobile_identity_encode_buf(buf, 11, &mi, false);
> I think this one is missing the encoding of the GSM48_IE_MOBILE_ID part. See libosmo-gprs. […]
Done
--
To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/33318
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: Ib0d7f76cd635e8d1092ffc1d07ecb29ec0435dda
Gerrit-Change-Number: 33318
Gerrit-PatchSet: 2
Gerrit-Owner: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 29 Jun 2023 08:04:30 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: comment
Attention is currently required from: laforge.
Hello Jenkins Builder,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmocom-bb/+/33318
to look at the new patch set (#2).
Change subject: layer23: migrate away from gsm48_generate_mid_from_*
......................................................................
layer23: migrate away from gsm48_generate_mid_from_*
Migrate from deprecated gsm48_mi_to_string to osmo_mobile_identity
Change-Id: Ib0d7f76cd635e8d1092ffc1d07ecb29ec0435dda
Depends: libosmocore.git If4f7be606e54cfa1c59084cf169785b1cbda5cf5
---
M src/host/layer23/src/mobile/gsm48_mm.c
M src/host/layer23/src/mobile/gsm48_rr.c
2 files changed, 82 insertions(+), 51 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/18/33318/2
--
To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/33318
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: Ib0d7f76cd635e8d1092ffc1d07ecb29ec0435dda
Gerrit-Change-Number: 33318
Gerrit-PatchSet: 2
Gerrit-Owner: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-MessageType: newpatchset
Attention is currently required from: laforge.
Hello Jenkins Builder, pespin,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmocom-bb/+/33317
to look at the new patch set (#2).
Change subject: layer23: migrate away from deprecated gsm48_mi_to_string
......................................................................
layer23: migrate away from deprecated gsm48_mi_to_string
Migrate from deprecated gsm48_mi_to_string to osmo_mobile_identity
Change-Id: Ida67adaa61689c55505a89e1a1bebde041c91139
Depends: libosmocore.git If4f7be606e54cfa1c59084cf169785b1cbda5cf5
---
M src/host/layer23/src/misc/app_ccch_scan.c
1 file changed, 20 insertions(+), 3 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/17/33317/2
--
To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/33317
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: Ida67adaa61689c55505a89e1a1bebde041c91139
Gerrit-Change-Number: 33317
Gerrit-PatchSet: 2
Gerrit-Owner: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-MessageType: newpatchset
laforge has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmocom-bb/+/33532 )
Change subject: mobile: Fix gsm_refer_pcs(): PCS can only be ARFCN 512..810
......................................................................
mobile: Fix gsm_refer_pcs(): PCS can only be ARFCN 512..810
While it is correct to use the band indicator from SI1 rest octets,
it may only be applied for ARFCN values in the range 512..810.
Change-Id: Id99c8534bf853f4f24f99364790c1ac1df6cc007
Related: OS#6078
---
M src/host/layer23/src/common/sysinfo.c
1 file changed, 18 insertions(+), 2 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/32/33532/1
diff --git a/src/host/layer23/src/common/sysinfo.c b/src/host/layer23/src/common/sysinfo.c
index 700accd..e3de81f 100644
--- a/src/host/layer23/src/common/sysinfo.c
+++ b/src/host/layer23/src/common/sysinfo.c
@@ -61,8 +61,11 @@
if (!s->si1)
return 0;
- /* If band indicator indicates PCS band, the cell refers to PCSThe */
- return s->band_ind;
+ /* If band indicator indicates PCS band, the cell refers to PCS */
+ if (s->band_ind && (arfcn >= 512 && arfcn <= 819))
+ return 1;
+
+ return 0;
}
int gsm48_sysinfo_dump(const struct gsm48_sysinfo *s, uint16_t arfcn,
--
To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/33532
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: Id99c8534bf853f4f24f99364790c1ac1df6cc007
Gerrit-Change-Number: 33532
Gerrit-PatchSet: 1
Gerrit-Owner: laforge <laforge(a)osmocom.org>
Gerrit-MessageType: newchange
falconia has submitted this change. ( https://gerrit.osmocom.org/c/osmo-bts/+/33470 )
Change subject: ECU in UL path: move state alloc/free to l1sap
......................................................................
ECU in UL path: move state alloc/free to l1sap
In preparation for moving the now-optional application of ECU in UL
path from osmo-bts-trx model-specific code to the common layer,
move ECU state allocation and freeing from trx model to l1sap.
Related: OS#6040
Change-Id: Ic98a2eb26b5a99bc4a89ad07ae87c9a86b921418
---
M src/common/l1sap.c
M src/osmo-bts-trx/l1_if.c
2 files changed, 40 insertions(+), 20 deletions(-)
Approvals:
fixeria: Looks good to me, but someone else must approve
pespin: Looks good to me, but someone else must approve
falconia: Looks good to me, approved
Jenkins Builder: Verified
diff --git a/src/common/l1sap.c b/src/common/l1sap.c
index 528a735..981d3bc 100644
--- a/src/common/l1sap.c
+++ b/src/common/l1sap.c
@@ -2208,6 +2208,13 @@
if (rc)
return -RSL_ERR_EQUIPMENT_FAIL;
+ /* Is it TCH? If it is, attempt to allocate an Error Concealment Unit
+ * instance, if available, unless it is disabled by vty config. */
+ if (lchan_is_tch(lchan) && trx->bts->use_ul_ecu)
+ lchan->ecu_state = osmo_ecu_init(trx, lchan2ecu_codec(lchan));
+ else
+ lchan->ecu_state = NULL;
+
/* Init DTX DL FSM if necessary */
if (trx->bts->dtxd && lchan_is_tch(lchan)) {
lchan->tch.dtx.dl_amr_fsm = osmo_fsm_inst_alloc(&dtx_dl_amr_fsm,
@@ -2248,6 +2255,12 @@
lchan->tch.dtx.dl_amr_fsm = NULL;
}
+ /* clear ECU state (if any) */
+ if (lchan->ecu_state) {
+ osmo_ecu_destroy(lchan->ecu_state);
+ lchan->ecu_state = NULL;
+ }
+
return l1sap_chan_act_dact_modify(trx, chan_nr, PRIM_INFO_DEACTIVATE,
0);
}
@@ -2270,5 +2283,18 @@
LOGPLCHAN(lchan, DL1C, LOGL_INFO, "Modifying channel %s\n",
rsl_chan_nr_str(chan_nr));
+ /* Is it TCH? If it is and we are applying internal uplink ECUs,
+ * the new channel mode calls for a different ECU. Any changes
+ * in vty config (enabling or disabling this ECU application)
+ * will also take effect upon channel modification. */
+ if (lchan_is_tch(lchan)) {
+ if (lchan->ecu_state)
+ osmo_ecu_destroy(lchan->ecu_state);
+ if (trx->bts->use_ul_ecu)
+ lchan->ecu_state = osmo_ecu_init(trx, lchan2ecu_codec(lchan));
+ else
+ lchan->ecu_state = NULL;
+ }
+
return l1sap_chan_act_dact_modify(trx, chan_nr, PRIM_INFO_MODIFY, 0);
}
diff --git a/src/osmo-bts-trx/l1_if.c b/src/osmo-bts-trx/l1_if.c
index 69ee117..60f9232 100644
--- a/src/osmo-bts-trx/l1_if.c
+++ b/src/osmo-bts-trx/l1_if.c
@@ -439,14 +439,6 @@
break;
}
- /* Attempt to allocate an Error Concealment Unit
- * instance, if available, unless it is disabled
- * by the vty config. */
- if (trx->bts->use_ul_ecu)
- lchan->ecu_state = osmo_ecu_init(trx, lchan2ecu_codec(lchan));
- else
- lchan->ecu_state = NULL;
-
/* activate dedicated channel */
trx_sched_set_lchan(lchan, chan_nr, LID_DEDIC, true);
/* activate associated channel */
@@ -475,13 +467,6 @@
mph_info_chan_confirm(trx, chan_nr, PRIM_INFO_ACTIVATE, 0);
break;
case PRIM_INFO_MODIFY:
- /* ECU for possibly new codec */
- if (lchan->ecu_state)
- osmo_ecu_destroy(lchan->ecu_state);
- if (trx->bts->use_ul_ecu)
- lchan->ecu_state = osmo_ecu_init(trx, lchan2ecu_codec(lchan));
- else
- lchan->ecu_state = NULL;
/* change mode */
trx_sched_set_mode(lchan->ts, chan_nr,
lchan->rsl_cmode, lchan->tch_mode,
@@ -507,11 +492,6 @@
rc = -EPERM;
break;
}
- /* clear ECU state (if any) */
- if (lchan->ecu_state) {
- osmo_ecu_destroy(lchan->ecu_state);
- lchan->ecu_state = NULL;
- }
/* deactivate associated channel */
bts_model_lchan_deactivate_sacch(lchan);
if (!l1sap->u.info.u.act_req.sacch_only) {
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/33470
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: Ic98a2eb26b5a99bc4a89ad07ae87c9a86b921418
Gerrit-Change-Number: 33470
Gerrit-PatchSet: 2
Gerrit-Owner: falconia <falcon(a)freecalypso.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: falconia <falcon(a)freecalypso.org>
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged
falconia has submitted this change. ( https://gerrit.osmocom.org/c/osmo-bts/+/32110 )
Change subject: ECU in UL path: make it optional per vty config
......................................................................
ECU in UL path: make it optional per vty config
Current osmo-bts-trx includes a provision for invoking ECUs from
libosmocodec in the UL path from the channel decoder to the RTP
output. This pre-existing implementation is counter to the spirit
of 3GPP specs (a BTS should merely mark BFI conditions in its UL
output, as opposed to actively modifying the frame stream with an ECU),
inconsistent between different osmo-bts models (only in -trx and no
others), and inconsistent even within osmo-bts-trx itself, where
the link quality check in l1sap will sometimes suppress the output
of the ECU - a quirk which the designers of the current mechanism
most certainly did not intend.
The solution decided upon in OsmoDevCall on 2023-06-21 is to make
this ECU optional per vty config, and move it from the trx model
to the common layer to resolve the inconsistencies. Implement the
first part: make the ECU application optional per vty config.
For backward compatibility with existing deployments, the new
"rtp internal-uplink-ecu" setting is enabled by default on osmo-bts-trx
but not on any other models.
Related: OS#6040
Change-Id: I0acca9c6d7da966a623287563e0789db9e0fae8e
---
M include/osmo-bts/bts.h
M src/common/vty.c
M src/osmo-bts-trx/l1_if.c
M src/osmo-bts-trx/main.c
M tests/osmo-bts.vty
5 files changed, 74 insertions(+), 3 deletions(-)
Approvals:
laforge: Looks good to me, but someone else must approve
fixeria: Looks good to me, but someone else must approve
pespin: Looks good to me, but someone else must approve
falconia: Looks good to me, approved
Jenkins Builder: Verified
diff --git a/include/osmo-bts/bts.h b/include/osmo-bts/bts.h
index 7ca3224..62017d7 100644
--- a/include/osmo-bts/bts.h
+++ b/include/osmo-bts/bts.h
@@ -300,6 +300,7 @@
int rtp_priority;
bool rtp_nogaps_mode; /* emit RTP stream without any gaps */
+ bool use_ul_ecu; /* "rtp internal-uplink-ecu" option */
bool emit_hr_rfc5993;
struct {
diff --git a/src/common/vty.c b/src/common/vty.c
index 9f3c675..0fc9007 100644
--- a/src/common/vty.c
+++ b/src/common/vty.c
@@ -418,6 +418,8 @@
vty_out(vty, " rtp socket-priority %d%s", bts->rtp_priority, VTY_NEWLINE);
if (bts->rtp_nogaps_mode)
vty_out(vty, " rtp continuous-streaming%s", VTY_NEWLINE);
+ vty_out(vty, " %srtp internal-uplink-ecu%s",
+ bts->use_ul_ecu ? "" : "no ", VTY_NEWLINE);
vty_out(vty, " rtp hr-format %s%s",
bts->emit_hr_rfc5993 ? "rfc5993" : "ts101318", VTY_NEWLINE);
vty_out(vty, " paging queue-size %u%s", paging_get_queue_max(bts->paging_state),
@@ -799,6 +801,28 @@
return CMD_SUCCESS;
}
+DEFUN(cfg_bts_rtp_int_ul_ecu,
+ cfg_bts_rtp_int_ul_ecu_cmd,
+ "rtp internal-uplink-ecu",
+ RTP_STR "Apply a BTS-internal ECU to the uplink traffic frame stream\n")
+{
+ struct gsm_bts *bts = vty->index;
+
+ bts->use_ul_ecu = true;
+ return CMD_SUCCESS;
+}
+
+DEFUN(cfg_bts_no_rtp_int_ul_ecu,
+ cfg_bts_no_rtp_int_ul_ecu_cmd,
+ "no rtp internal-uplink-ecu",
+ NO_STR RTP_STR "Apply a BTS-internal ECU to the uplink traffic frame stream\n")
+{
+ struct gsm_bts *bts = vty->index;
+
+ bts->use_ul_ecu = false;
+ return CMD_SUCCESS;
+}
+
DEFUN_ATTR(cfg_bts_rtp_hr_format,
cfg_bts_rtp_hr_format_cmd,
"rtp hr-format (rfc5993|ts101318)",
@@ -2700,6 +2724,8 @@
install_element(BTS_NODE, &cfg_bts_rtp_priority_cmd);
install_element(BTS_NODE, &cfg_bts_rtp_cont_stream_cmd);
install_element(BTS_NODE, &cfg_bts_no_rtp_cont_stream_cmd);
+ install_element(BTS_NODE, &cfg_bts_rtp_int_ul_ecu_cmd);
+ install_element(BTS_NODE, &cfg_bts_no_rtp_int_ul_ecu_cmd);
install_element(BTS_NODE, &cfg_bts_rtp_hr_format_cmd);
install_element(BTS_NODE, &cfg_bts_band_cmd);
install_element(BTS_NODE, &cfg_description_cmd);
diff --git a/src/osmo-bts-trx/l1_if.c b/src/osmo-bts-trx/l1_if.c
index b39c51f..69ee117 100644
--- a/src/osmo-bts-trx/l1_if.c
+++ b/src/osmo-bts-trx/l1_if.c
@@ -439,8 +439,13 @@
break;
}
- /* attempt to allocate an Error Concealment Unit instance, if available */
- lchan->ecu_state = osmo_ecu_init(trx, lchan2ecu_codec(lchan));
+ /* Attempt to allocate an Error Concealment Unit
+ * instance, if available, unless it is disabled
+ * by the vty config. */
+ if (trx->bts->use_ul_ecu)
+ lchan->ecu_state = osmo_ecu_init(trx, lchan2ecu_codec(lchan));
+ else
+ lchan->ecu_state = NULL;
/* activate dedicated channel */
trx_sched_set_lchan(lchan, chan_nr, LID_DEDIC, true);
@@ -473,7 +478,10 @@
/* ECU for possibly new codec */
if (lchan->ecu_state)
osmo_ecu_destroy(lchan->ecu_state);
- lchan->ecu_state = osmo_ecu_init(trx, lchan2ecu_codec(lchan));
+ if (trx->bts->use_ul_ecu)
+ lchan->ecu_state = osmo_ecu_init(trx, lchan2ecu_codec(lchan));
+ else
+ lchan->ecu_state = NULL;
/* change mode */
trx_sched_set_mode(lchan->ts, chan_nr,
lchan->rsl_cmode, lchan->tch_mode,
diff --git a/src/osmo-bts-trx/main.c b/src/osmo-bts-trx/main.c
index f3b8513..ff71b3a 100644
--- a/src/osmo-bts-trx/main.c
+++ b/src/osmo-bts-trx/main.c
@@ -164,6 +164,10 @@
* a surprise functional change upon software update. */
bts->emit_hr_rfc5993 = true;
+ /* For the same reason as the above, rtp internal-uplink-ecu
+ * needs to be enabled by default on osmo-bts-trx model only. */
+ bts->use_ul_ecu = true;
+
return 0;
}
diff --git a/tests/osmo-bts.vty b/tests/osmo-bts.vty
index 356f2aa..c473234 100644
--- a/tests/osmo-bts.vty
+++ b/tests/osmo-bts.vty
@@ -235,6 +235,8 @@
rtp socket-priority <0-255>
rtp continuous-streaming
no rtp continuous-streaming
+ rtp internal-uplink-ecu
+ no rtp internal-uplink-ecu
rtp hr-format (rfc5993|ts101318)
band (450|GSM450|480|GSM480|750|GSM750|810|GSM810|850|GSM850|900|GSM900|1800|DCS1800|1900|PCS1900)
description .TEXT
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/32110
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: I0acca9c6d7da966a623287563e0789db9e0fae8e
Gerrit-Change-Number: 32110
Gerrit-PatchSet: 7
Gerrit-Owner: falconia <falcon(a)freecalypso.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: falconia <falcon(a)freecalypso.org>
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged
falconia has submitted this change. ( https://gerrit.osmocom.org/c/osmo-bts/+/33471 )
Change subject: ECU in UL path: move it from trx model to l1sap
......................................................................
ECU in UL path: move it from trx model to l1sap
With this change the application of ECU in the uplink path becomes
consistent across all OsmoBTS models, enabled or disabled per vty
config setting "rtp internal-uplink-ecu". An additional behavioral
change from the previous trx-model-only implementation is that ECU
insertion is now done after the link quality check in l1sap, thereby
fixing the bug where this quality check would sometimes suppress
ECU output and replace it with BFI markers in RTP.
In the new implementation when the internal ECU is enabled and
available for the selected codec (currently FRv1 only), the RTP output
will gap (standard representation of BFI in RTP) only during DTXu
pauses as indicated by a received SID frame (either valid or invalid),
and the SID frame that triggers the switch from ECU mode into pause
mode is reliably emitted in RTP.
Related: OS#6040
Depends: I3857be84bba12aaca0c2cca91458b7e13c5a642a (libosmocore)
Change-Id: Iac577975c9ab50cb8ebbc035c661c1880e7cecec
---
M src/common/l1sap.c
M src/osmo-bts-trx/sched_lchan_tchf.c
M src/osmo-bts-trx/sched_lchan_tchh.c
3 files changed, 79 insertions(+), 69 deletions(-)
Approvals:
fixeria: Looks good to me, approved
pespin: Looks good to me, but someone else must approve
Jenkins Builder: Verified
diff --git a/src/common/l1sap.c b/src/common/l1sap.c
index 981d3bc..7f61f2c 100644
--- a/src/common/l1sap.c
+++ b/src/common/l1sap.c
@@ -1813,6 +1813,51 @@
send_ul_rtp_packet(lchan, fn, msg->data, msg->len);
}
+/* A helper function for l1sap_tch_ind(): handling BFI
+ *
+ * Please note that we pass the msgb to this function, even though it is
+ * currently not used. This msgb passing is a provision for adding
+ * support for TRAU-UL-like RTP payload formats like TW-TS-001 that allow
+ * indicating BFI along with deemed-bad frame data bits, just like
+ * GSM 08.60 and 08.61 TRAU-UL frames.
+ */
+static void tch_ul_bfi_handler(struct gsm_lchan *lchan,
+ const struct gsm_time *g_time, struct msgb *msg)
+{
+ uint32_t fn = g_time->fn;
+ uint8_t ecu_out[GSM_FR_BYTES];
+ int rc;
+
+ /* Are we applying an ECU to this uplink, and are we in a state
+ * (not DTX pause) where we emit ECU output? */
+ if (lchan->ecu_state && !osmo_ecu_is_dtx_pause(lchan->ecu_state)) {
+ rc = osmo_ecu_frame_out(lchan->ecu_state, ecu_out);
+ /* did it actually give us some output? */
+ if (rc > 0) {
+ /* yes, send it out in RTP */
+ send_ul_rtp_packet(lchan, fn, ecu_out, rc);
+ return;
+ }
+ }
+
+ /* Are we in rtp continuous-streaming special mode? If so, send out
+ * a BFI packet as zero-length RTP payload. */
+ if (lchan->ts->trx->bts->rtp_nogaps_mode) {
+ send_ul_rtp_packet(lchan, fn, NULL, 0);
+ return;
+ }
+
+ /* Most classic form of BFI handling: generate an intentional gap
+ * in the outgoing RTP stream. */
+ LOGPLCGT(lchan, g_time, DRTP, LOGL_DEBUG,
+ "Skipping RTP frame with lost payload\n");
+ if (lchan->abis_ip.osmux.use)
+ lchan_osmux_skipped_frame(lchan, fn_ms_adj(fn, lchan));
+ else if (lchan->abis_ip.rtp_socket)
+ osmo_rtp_skipped_frame(lchan->abis_ip.rtp_socket, fn_ms_adj(fn, lchan));
+ lchan->rtp_tx_marker = true;
+}
+
/* TCH received from bts model */
static int l1sap_tch_ind(struct gsm_bts_trx *trx, struct osmo_phsap_prim *l1sap,
struct ph_tch_param *tch_ind)
@@ -1851,6 +1896,9 @@
* available is expected as empty payload. We also check if quality is
* good enough. */
if (msg->len && tch_ind->lqual_cb >= bts->min_qual_norm) {
+ /* feed the good frame to the ECU, if we are applying one */
+ if (lchan->ecu_state)
+ osmo_ecu_frame_in(lchan->ecu_state, false, msg->data, msg->len);
/* hand msg to RTP code for transmission */
if (bts->emit_hr_rfc5993 && lchan->type == GSM_LCHAN_TCH_H &&
lchan->tch_mode == GSM48_CMODE_SPEECH_V1)
@@ -1865,19 +1913,7 @@
return 1;
}
} else {
- /* Are we in rtp continuous-streaming special mode? If so, send
- * out a BFI packet as zero-length RTP payload. */
- if (bts->rtp_nogaps_mode) {
- send_ul_rtp_packet(lchan, fn, NULL, 0);
- } else {
- LOGPLCGT(lchan, &g_time, DRTP, LOGL_DEBUG,
- "Skipping RTP frame with lost payload (chan_nr=0x%02x)\n", chan_nr);
- if (lchan->abis_ip.osmux.use)
- lchan_osmux_skipped_frame(lchan, fn_ms_adj(fn, lchan));
- else if (lchan->abis_ip.rtp_socket)
- osmo_rtp_skipped_frame(lchan->abis_ip.rtp_socket, fn_ms_adj(fn, lchan));
- lchan->rtp_tx_marker = true;
- }
+ tch_ul_bfi_handler(lchan, &g_time, msg);
}
lchan->tch.last_fn = fn;
diff --git a/src/osmo-bts-trx/sched_lchan_tchf.c b/src/osmo-bts-trx/sched_lchan_tchf.c
index 0b709bc..9acbf31 100644
--- a/src/osmo-bts-trx/sched_lchan_tchf.c
+++ b/src/osmo-bts-trx/sched_lchan_tchf.c
@@ -30,7 +30,6 @@
#include <osmocom/gsm/gsm0502.h>
#include <osmocom/codec/codec.h>
-#include <osmocom/codec/ecu.h>
#include <osmocom/coding/gsm0503_coding.h>
#include <osmocom/coding/gsm0503_amr_dtx.h>
@@ -247,12 +246,9 @@
bfi_flag = true;
}
- if (rc != GSM_MACBLOCK_LEN && lchan->ecu_state)
- osmo_ecu_frame_in(lchan->ecu_state, bfi_flag, tch_data, rc);
-
ber10k = compute_ber10k(n_bits_total, n_errors);
if (bfi_flag)
- goto bfi;
+ rc = 0; /* this is how we signal BFI to l1sap */
/* FACCH */
if (rc == GSM_MACBLOCK_LEN) {
@@ -270,36 +266,13 @@
* the fake (BFI) TCH indication we set meas_avg.rssi to zero.
* Doing so tells l1sap.c to ignore the measurement result. */
meas_avg.rssi = 0;
-
-bfi:
- if (rsl_cmode == RSL_CMOD_SPD_SPEECH) {
- /* indicate bad frame */
- if (lchan->tch.dtx.ul_sid) {
- /* DTXu: pause in progress. Push empty payload to upper layers */
- rc = 0;
- goto compose_l1sap;
- }
-
- /* If there is an ECU active on this channel, use its output */
- if (lchan->ecu_state) {
- rc = osmo_ecu_frame_out(lchan->ecu_state, tch_data);
- if (rc >= 0) /* Otherwise we send a BFI */
- goto compose_l1sap;
- }
-
- /* In order to signal BFI in our UL RTP output, we need
- * to push an empty payload to l1sap. The upper layer
- * will choose the correct RTP representation of this
- * BFI based on model-independent vty config. */
- rc = 0;
- }
+ rc = 0;
}
if (rsl_cmode != RSL_CMOD_SPD_SPEECH)
return 0;
/* TCH or BFI */
-compose_l1sap:
return _sched_compose_tch_ind(l1ts, fn_begin, bi->chan, tch_data, rc,
meas_avg.toa256, ber10k, meas_avg.rssi,
meas_avg.ci_cb, is_sub);
diff --git a/src/osmo-bts-trx/sched_lchan_tchh.c b/src/osmo-bts-trx/sched_lchan_tchh.c
index c91569f..8d1aab3 100644
--- a/src/osmo-bts-trx/sched_lchan_tchh.c
+++ b/src/osmo-bts-trx/sched_lchan_tchh.c
@@ -30,7 +30,6 @@
#include <osmocom/gsm/gsm0502.h>
#include <osmocom/codec/codec.h>
-#include <osmocom/codec/ecu.h>
#include <osmocom/coding/gsm0503_coding.h>
#include <osmocom/coding/gsm0503_amr_dtx.h>
@@ -285,11 +284,8 @@
bfi_flag = true;
}
- if (rc != GSM_MACBLOCK_LEN && lchan->ecu_state)
- osmo_ecu_frame_in(lchan->ecu_state, bfi_flag, tch_data, rc);
-
if (bfi_flag)
- goto bfi;
+ rc = 0; /* this is how we signal BFI to l1sap */
/* FACCH */
if (rc == GSM_MACBLOCK_LEN) {
@@ -307,33 +303,12 @@
bfi:
/* A FACCH/H frame replaces two speech frames, so we need to send two BFIs.
* One is sent here, another will be sent two bursts later (see above). */
- if (rsl_cmode == RSL_CMOD_SPD_SPEECH) {
- /* indicate bad frame */
- if (lchan->tch.dtx.ul_sid) {
- /* DTXu: pause in progress. Push empty payload to upper layers */
- rc = 0;
- goto compose_l1sap;
- }
-
- /* If there is an ECU active on this channel, use its output */
- if (lchan->ecu_state) {
- rc = osmo_ecu_frame_out(lchan->ecu_state, tch_data);
- if (rc >= 0) /* Otherwise we send a BFI */
- goto compose_l1sap;
- }
-
- /* In order to signal BFI in our UL RTP output, we need
- * to push an empty payload to l1sap. The upper layer
- * will choose the correct RTP representation of this
- * BFI based on model-independent vty config. */
- rc = 0;
- }
+ rc = 0;
}
if (rsl_cmode != RSL_CMOD_SPD_SPEECH)
return 0;
-compose_l1sap:
/* TCH or BFI */
return _sched_compose_tch_ind(l1ts, fn_begin, bi->chan, tch_data, rc,
meas_avg.toa256, ber10k, meas_avg.rssi,
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/33471
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: Iac577975c9ab50cb8ebbc035c661c1880e7cecec
Gerrit-Change-Number: 33471
Gerrit-PatchSet: 3
Gerrit-Owner: falconia <falcon(a)freecalypso.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: falconia <falcon(a)freecalypso.org>
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged
fixeria has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/33465 )
Change subject: SGSN_Tests: fix TC_attach_timeout_after_pdp_act
......................................................................
Patch Set 5:
(1 comment)
Commit Message:
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/33465/comment/afc0f9e5_6d19…
PS5, Line 16: osmo-sgsn does not require authentication for the second ATTACH.req
This problem is tracked here: https://osmocom.org/issues/2958.
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/33465
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: Ibaf2134247153471bd45d7a7f91155294c6c6de5
Gerrit-Change-Number: 33465
Gerrit-PatchSet: 5
Gerrit-Owner: arehbein <arehbein(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Wed, 28 Jun 2023 13:19:25 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
osmith has submitted this change. ( https://gerrit.osmocom.org/c/osmo-dev/+/33517 )
Change subject: net/templates/run: let user confirm close of tmux
......................................................................
net/templates/run: let user confirm close of tmux
Don't immediately close tmux on exit. Without this patch the error
messages printed in error code paths are not visible to the user.
Change-Id: I4a98e7eb7691b7b954ee7edd4ed488ae3c1dd835
---
M net/templates/run.sh
1 file changed, 21 insertions(+), 0 deletions(-)
Approvals:
fixeria: Looks good to me, but someone else must approve
osmith: Looks good to me, approved; Verified
diff --git a/net/templates/run.sh b/net/templates/run.sh
index d4edbaa..e9f10de 100755
--- a/net/templates/run.sh
+++ b/net/templates/run.sh
@@ -8,6 +8,15 @@
exec tmux new-session -s "$tmux_session" -n "RUN" "$0" "inside-tmux"
fi
+exit_confirm() {
+ trap - EXIT INT TERM 0
+ if [ "${TERMINAL}" = "tmux" ]; then
+ echo "Hit enter to close tmux"
+ read enter_to_continue
+ fi
+}
+trap exit_confirm EXIT INT TERM 0
+
if ! ../fill_config.py --check-stale; then
echo
echo "WARNING: STALE CONFIGS - your net configs are older than the templates they should be based on!"
--
To view, visit https://gerrit.osmocom.org/c/osmo-dev/+/33517
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-dev
Gerrit-Branch: master
Gerrit-Change-Id: I4a98e7eb7691b7b954ee7edd4ed488ae3c1dd835
Gerrit-Change-Number: 33517
Gerrit-PatchSet: 1
Gerrit-Owner: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-MessageType: merged
osmith has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-dev/+/33517 )
Change subject: net/templates/run: let user confirm close of tmux
......................................................................
Patch Set 1: Verified+1
--
To view, visit https://gerrit.osmocom.org/c/osmo-dev/+/33517
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-dev
Gerrit-Branch: master
Gerrit-Change-Id: I4a98e7eb7691b7b954ee7edd4ed488ae3c1dd835
Gerrit-Change-Number: 33517
Gerrit-PatchSet: 1
Gerrit-Owner: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Comment-Date: Wed, 28 Jun 2023 13:07:32 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
osmith has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-dev/+/33517 )
Change subject: net/templates/run: let user confirm close of tmux
......................................................................
Patch Set 1: Code-Review+2
(1 comment)
Patchset:
PS1:
(Neels said that patches to osmo-dev don't need to go through code review, merging with +1)
--
To view, visit https://gerrit.osmocom.org/c/osmo-dev/+/33517
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-dev
Gerrit-Branch: master
Gerrit-Change-Id: I4a98e7eb7691b7b954ee7edd4ed488ae3c1dd835
Gerrit-Change-Number: 33517
Gerrit-PatchSet: 1
Gerrit-Owner: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Comment-Date: Wed, 28 Jun 2023 13:07:28 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
Attention is currently required from: osmith.
fixeria has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-dev/+/33517 )
Change subject: net/templates/run: let user confirm close of tmux
......................................................................
Patch Set 1: Code-Review+1
--
To view, visit https://gerrit.osmocom.org/c/osmo-dev/+/33517
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-dev
Gerrit-Branch: master
Gerrit-Change-Id: I4a98e7eb7691b7b954ee7edd4ed488ae3c1dd835
Gerrit-Change-Number: 33517
Gerrit-PatchSet: 1
Gerrit-Owner: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Attention: osmith <osmith(a)sysmocom.de>
Gerrit-Comment-Date: Wed, 28 Jun 2023 13:06:01 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
pespin has submitted this change. ( https://gerrit.osmocom.org/c/libosmo-sccp/+/33518 )
Change subject: vty: Improve output of show cs7 instance <0-15> asp
......................................................................
vty: Improve output of show cs7 instance <0-15> asp
Role and SCTP Role are now printed. Several formatting issues are fixed
or improved.
Related: SYS#6488
Change-Id: Id22bd4e74fb6f79950adba58862d379203d36760
---
M src/osmo_ss7_vty.c
M tests/vty/ss7_asp_test.vty
2 files changed, 61 insertions(+), 25 deletions(-)
Approvals:
Jenkins Builder: Verified
osmith: Looks good to me, but someone else must approve
laforge: Looks good to me, but someone else must approve
pespin: Looks good to me, approved
diff --git a/src/osmo_ss7_vty.c b/src/osmo_ss7_vty.c
index ebec5f6..9398bc1 100644
--- a/src/osmo_ss7_vty.c
+++ b/src/osmo_ss7_vty.c
@@ -790,6 +790,24 @@
return CMD_SUCCESS;
}
+static char *as_list_for_asp(const struct osmo_ss7_asp *asp, char *buf, size_t buf_len)
+{
+ struct osmo_strbuf sb = { .buf = buf, .len = buf_len };
+ const struct osmo_ss7_as *as;
+ unsigned int count = 0;
+ llist_for_each_entry(as, &asp->inst->as_list, list) {
+ if (!osmo_ss7_as_has_asp(as, asp))
+ continue;
+ OSMO_STRBUF_PRINTF(sb, "%s%s", count != 0 ? "," : "", as->cfg.name);
+ count++;
+ break;
+ }
+
+ if (count == 0)
+ OSMO_STRBUF_PRINTF(sb, "?");
+ return buf;
+}
+
DEFUN(show_cs7_asp, show_cs7_asp_cmd,
"show cs7 instance <0-15> asp",
SHOW_STR CS7_STR INST_STR INST_STR "Application Server Process (ASP)\n")
@@ -797,6 +815,7 @@
struct osmo_ss7_instance *inst;
struct osmo_ss7_asp *asp;
char buf[512];
+ char as_buf[64];
int id = atoi(argv[0]);
inst = osmo_ss7_instance_find(id);
@@ -805,9 +824,9 @@
return CMD_WARNING;
}
- vty_out(vty, " Effect Primary%s", VTY_NEWLINE);
- vty_out(vty, "ASP Name AS Name State Type Remote IP Addr:Rmt Port SCTP%s", VTY_NEWLINE);
- vty_out(vty, "------------ ------------ ------------- ---- ----------------------- ----------%s", VTY_NEWLINE);
+ vty_out(vty, " Current Primary Link%s", VTY_NEWLINE);
+ vty_out(vty, "ASP Name AS Name State Type Role Remote IPaddr & Port SCTP Role%s", VTY_NEWLINE);
+ vty_out(vty, "------------ ------------ ------------- ---- ---- ----------------------- ---------%s", VTY_NEWLINE);
llist_for_each_entry(asp, &inst->asp_list, list) {
if (asp->cfg.proto == OSMO_SS7_ASP_PROT_IPA && asp->cfg.remote.port == 0 && asp->server) {
@@ -819,11 +838,15 @@
snprintf(buf, sizeof(buf), "%s:%s", hostbuf, portbuf);
} else
osmo_ss7_asp_peer_snprintf(buf, sizeof(buf), &asp->cfg.remote);
- vty_out(vty, "%-12s %-12s %-13s %-4s %-14s %-10s%s",
- asp->cfg.name, "?",
+ vty_out(vty, "%-12s %-12s %-13s %-4s %-4s %-23s %-9s%s",
+ asp->cfg.name,
+ as_list_for_asp(asp, as_buf, sizeof(as_buf)),
asp->fi? osmo_fsm_inst_state_name(asp->fi) : "uninitialized",
get_value_string(osmo_ss7_asp_protocol_vals, asp->cfg.proto),
- buf, "", VTY_NEWLINE);
+ osmo_str_tolower(get_value_string(osmo_ss7_asp_role_names, asp->cfg.role)),
+ buf,
+ asp->cfg.is_server ? "server" : "client",
+ VTY_NEWLINE);
}
return CMD_SUCCESS;
}
diff --git a/tests/vty/ss7_asp_test.vty b/tests/vty/ss7_asp_test.vty
index ffa263f..f7d92bd 100644
--- a/tests/vty/ss7_asp_test.vty
+++ b/tests/vty/ss7_asp_test.vty
@@ -244,10 +244,10 @@
ss7_asp_vty_test(config-cs7-asp)# remote-ip 127.0.0.200
ss7_asp_vty_test(config-cs7-asp)# local-ip 127.0.0.100
ss7_asp_vty_test(config-cs7-asp)# do show cs7 instance 0 asp
- Effect Primary
-ASP Name AS Name State Type Remote IP Addr:Rmt Port SCTP
------------- ------------ ------------- ---- ----------------------- ----------
-my-asp ? uninitialized m3ua 127.0.0.200:12345
+ Current Primary Link
+ASP Name AS Name State Type Role Remote IPaddr & Port SCTP Role
+------------ ------------ ------------- ---- ---- ----------------------- ---------
+my-asp ? uninitialized m3ua sg 127.0.0.200:12345 server
ss7_asp_vty_test(config-cs7-asp)# exit
ss7_asp_vty_test(config-cs7)# as my-ass m3ua
@@ -308,26 +308,26 @@
ss7_asp_vty_test(config-cs7-as)# routing-key 0 3.2.1
ss7_asp_vty_test(config-cs7-as)# do show cs7 instance 0 asp
- Effect Primary
-ASP Name AS Name State Type Remote IP Addr:Rmt Port SCTP
------------- ------------ ------------- ---- ----------------------- ----------
-my-asp ? ASP_DOWN m3ua 127.0.0.200:12345
+ Current Primary Link
+ASP Name AS Name State Type Role Remote IPaddr & Port SCTP Role
+------------ ------------ ------------- ---- ---- ----------------------- ---------
+my-asp my-ass ASP_DOWN m3ua sg 127.0.0.200:12345 server
ss7_asp_vty_test(config-cs7-as)# exit
ss7_asp_vty_test(config-cs7)# do show cs7 instance 0 asp
- Effect Primary
-ASP Name AS Name State Type Remote IP Addr:Rmt Port SCTP
------------- ------------ ------------- ---- ----------------------- ----------
-my-asp ? ASP_DOWN m3ua 127.0.0.200:12345
+ Current Primary Link
+ASP Name AS Name State Type Role Remote IPaddr & Port SCTP Role
+------------ ------------ ------------- ---- ---- ----------------------- ---------
+my-asp my-ass ASP_DOWN m3ua sg 127.0.0.200:12345 server
ss7_asp_vty_test(config-cs7)# exit
ss7_asp_vty_test(config)# do show cs7 instance 0 asp
- Effect Primary
-ASP Name AS Name State Type Remote IP Addr:Rmt Port SCTP
------------- ------------ ------------- ---- ----------------------- ----------
-my-asp ? ASP_DOWN m3ua 127.0.0.200:12345
+ Current Primary Link
+ASP Name AS Name State Type Role Remote IPaddr & Port SCTP Role
+------------ ------------ ------------- ---- ---- ----------------------- ---------
+my-asp my-ass ASP_DOWN m3ua sg 127.0.0.200:12345 server
ss7_asp_vty_test(config)# do show cs7 instance 0 as all
Routing Routing Key Cic Cic Traffic
@@ -368,9 +368,9 @@
ss7_asp_vty_test(config-cs7)# no asp my-asp
ss7_asp_vty_test(config-cs7)# do show cs7 instance 0 asp
- Effect Primary
-ASP Name AS Name State Type Remote IP Addr:Rmt Port SCTP
------------- ------------ ------------- ---- ----------------------- ----------
+ Current Primary Link
+ASP Name AS Name State Type Role Remote IPaddr & Port SCTP Role
+------------ ------------ ------------- ---- ---- ----------------------- ---------
ss7_asp_vty_test(config-cs7)# do show cs7 instance 0 as all
Routing Routing Key Cic Cic Traffic
--
To view, visit https://gerrit.osmocom.org/c/libosmo-sccp/+/33518
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmo-sccp
Gerrit-Branch: master
Gerrit-Change-Id: Id22bd4e74fb6f79950adba58862d379203d36760
Gerrit-Change-Number: 33518
Gerrit-PatchSet: 3
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged