fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bts/+/38314?usp=email )
Change subject: gsmtap_csd_rlp_process(): fix frame reassembly for TCH/F4.8
......................................................................
gsmtap_csd_rlp_process(): fix frame reassembly for TCH/F4.8
Unfortunately this approach cannot work because bit E7 simply does
not exist in NT mode: that bit position gets replaced by one of
D-prime bits belonging to the RLP frame. Let's use TDMA Fn of the
given TCH.ind to distinguish between the 1st and 2nd halves of an
RLP frame, like we do in csd_v110_rtp_encode().
Related: OS#6578
Change-Id: Ia6b3b03faa066ca7fd828d24ba2559ac69c0362a
---
M include/osmo-bts/csd_v110.h
M src/common/csd_v110.c
M src/common/l1sap.c
3 files changed, 6 insertions(+), 5 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/14/38314/1
diff --git a/include/osmo-bts/csd_v110.h b/include/osmo-bts/csd_v110.h
index b461724..f1c1027 100644
--- a/include/osmo-bts/csd_v110.h
+++ b/include/osmo-bts/csd_v110.h
@@ -17,6 +17,8 @@
extern const struct csd_v110_lchan_desc csd_v110_lchan_desc[256];
+extern const uint8_t csd_v110_tchf48_nt_e2_map[26];
+
int csd_v110_rtp_encode(const struct gsm_lchan *lchan, uint8_t *rtp,
const uint8_t *data, size_t data_len, uint32_t fn);
int csd_v110_rtp_decode(const struct gsm_lchan *lchan, uint8_t *data,
diff --git a/src/common/csd_v110.c b/src/common/csd_v110.c
index d8a8596..d25eb7b 100644
--- a/src/common/csd_v110.c
+++ b/src/common/csd_v110.c
@@ -76,7 +76,7 @@
/* In the case of TCH/F4.8 NT, we have to set bit E2 based on the TDMA
* frame number at which we received the block in question. See
* GSM 05.03 section 3.4.1 and the mapping tables of GSM 05.02. */
-static const uint8_t tchf48_nt_e2_map[26] = {
+const uint8_t csd_v110_tchf48_nt_e2_map[26] = {
[4] = 1, /* B1 position */
[13] = 1, /* B3 position */
[21] = 1, /* B5 position */
@@ -124,7 +124,7 @@
if (desc->num_blocks == 4)
df.e_bits[1] = (i >> 1) & 0x01;
else
- df.e_bits[1] = tchf48_nt_e2_map[fn % 26];
+ df.e_bits[1] = csd_v110_tchf48_nt_e2_map[fn % 26];
/* E3: 0 for Q1/Q3, 1 for Q2/Q4 */
df.e_bits[2] = (i >> 0) & 0x01;
} else {
diff --git a/src/common/l1sap.c b/src/common/l1sap.c
index 83dacbd..381dd2d 100644
--- a/src/common/l1sap.c
+++ b/src/common/l1sap.c
@@ -460,10 +460,9 @@
if (lchan->type == GSM_LCHAN_TCH_F && lchan->tch_mode == GSM48_CMODE_DATA_6k0) {
/* in this mode we have 120bit MAC blocks; two of them need to be concatenated
* to render a 240-bit RLP frame. The fist block is present in B0/B2/B4.
- * The E7 bit is used to indicate the Frame MF0a */
+ * The TDMA Fn is used to distinguish between the 1st and 2nd halves. */
OSMO_ASSERT(data_len == 120);
- ubit_t e7 = data[4*7+3];
- if (e7 == 0) {
+ if (csd_v110_tchf48_nt_e2_map[tch_ind->fn % 26] == 0) {
/* E2=0: this is B0/B2/B4 containing the 1st half */
osmo_ubit2pbit_ext(rlp_buf, 0, data, 0, data_len, 1);
return;
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/38314?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: Ia6b3b03faa066ca7fd828d24ba2559ac69c0362a
Gerrit-Change-Number: 38314
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Attention is currently required from: fixeria, jolly, neels.
Hello Jenkins Builder, fixeria, neels,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-msc/+/38305?usp=email
to look at the new patch set (#3).
The following approvals got outdated and were removed:
Code-Review+1 by fixeria, Verified+1 by Jenkins Builder
Change subject: Release BSS connection when SS message is rejected
......................................................................
Release BSS connection when SS message is rejected
When an initial call-independent supplementary service message is
received, it is checked whether the message is a REGISTER message.
If it is not, the MSC will reject it by sending a RELEASE COMPLETE
message.
This patch ensures that the MSC_A use counter is decremented, so
that the BSS connection is released, if it is not used by any other
transaction.
Without this patch, the msc_a_fsm would wait 5 seconds for an initial
transaction before releasing the BSS connection.
Related: OS#6427
Change-Id: Ic6765e5d480735e67d97f0f560da24653b26d487
---
M src/libmsc/gsm_09_11.c
1 file changed, 6 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-msc refs/changes/05/38305/3
--
To view, visit https://gerrit.osmocom.org/c/osmo-msc/+/38305?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newpatchset
Gerrit-Project: osmo-msc
Gerrit-Branch: master
Gerrit-Change-Id: Ic6765e5d480735e67d97f0f560da24653b26d487
Gerrit-Change-Number: 38305
Gerrit-PatchSet: 3
Gerrit-Owner: jolly <andreas(a)eversberg.eu>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: neels <nhofmeyr(a)sysmocom.de>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: jolly <andreas(a)eversberg.eu>
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Attention is currently required from: jolly, neels.
pespin has posted comments on this change by jolly. ( https://gerrit.osmocom.org/c/osmo-msc/+/38305?usp=email )
Change subject: Release BSSMAP connection when SS message is rejected
......................................................................
Patch Set 2:
(1 comment)
File src/libmsc/gsm_09_11.c:
https://gerrit.osmocom.org/c/osmo-msc/+/38305/comment/9399f52e_d5469d97?usp… :
PS2, Line 145: msc_a_put(msc_a, MSC_A_USE_CM_SERVICE_SS);
I think this definetly requires a comment explaining why is the reference dropped here and probably where was this reference taken.
--
To view, visit https://gerrit.osmocom.org/c/osmo-msc/+/38305?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: osmo-msc
Gerrit-Branch: master
Gerrit-Change-Id: Ic6765e5d480735e67d97f0f560da24653b26d487
Gerrit-Change-Number: 38305
Gerrit-PatchSet: 2
Gerrit-Owner: jolly <andreas(a)eversberg.eu>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: neels <nhofmeyr(a)sysmocom.de>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: jolly <andreas(a)eversberg.eu>
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Comment-Date: Mon, 30 Sep 2024 08:36:50 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Attention is currently required from: fixeria, neels.
jolly has posted comments on this change by jolly. ( https://gerrit.osmocom.org/c/osmo-msc/+/38305?usp=email )
Change subject: Release BSSMAP connection when SS message is rejected
......................................................................
Patch Set 2:
(1 comment)
Commit Message:
https://gerrit.osmocom.org/c/osmo-msc/+/38305/comment/64907c93_ee1e26e0?usp… :
PS1, Line 14: This patch ensures that a transaction is created even if the message
: is not a REGISTER message
> For the record, we had a Jitsi call with @andreas@eversberg. […]
Done
--
To view, visit https://gerrit.osmocom.org/c/osmo-msc/+/38305?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: osmo-msc
Gerrit-Branch: master
Gerrit-Change-Id: Ic6765e5d480735e67d97f0f560da24653b26d487
Gerrit-Change-Number: 38305
Gerrit-PatchSet: 2
Gerrit-Owner: jolly <andreas(a)eversberg.eu>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Comment-Date: Mon, 30 Sep 2024 07:57:15 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: fixeria <vyanitskiy(a)sysmocom.de>
Attention is currently required from: jolly, neels.
Hello Jenkins Builder, fixeria, neels,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-msc/+/38305?usp=email
to look at the new patch set (#2).
The following approvals got outdated and were removed:
Verified+1 by Jenkins Builder
Change subject: Release BSSMAP connection when SS message is rejected
......................................................................
Release BSSMAP connection when SS message is rejected
When an initial call-independent supplementary service message is
received, it is checked whether the message is a REGISTER message.
If it is not, the MSC will reject it by sending a RELEASE COMPLETE
message.
This patch ensures that the MSC_A use counter is decremented, so
that the BSSMAP connection is released, if it is not used by any
other transaction.
Without this patch, the msc_a_fsm would wait 5 seconds for an initial
transaction before releasing the BSSMAP connection.
Related: OS#6427
Change-Id: Ic6765e5d480735e67d97f0f560da24653b26d487
---
M src/libmsc/gsm_09_11.c
1 file changed, 2 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-msc refs/changes/05/38305/2
--
To view, visit https://gerrit.osmocom.org/c/osmo-msc/+/38305?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newpatchset
Gerrit-Project: osmo-msc
Gerrit-Branch: master
Gerrit-Change-Id: Ic6765e5d480735e67d97f0f560da24653b26d487
Gerrit-Change-Number: 38305
Gerrit-PatchSet: 2
Gerrit-Owner: jolly <andreas(a)eversberg.eu>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Attention: jolly <andreas(a)eversberg.eu>
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>