Attention is currently required from: fixeria, laforge.
Hello Jenkins Builder, fixeria,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-bts/+/35124?usp=email
to look at the new patch set (#5).
The following approvals got outdated and were removed:
Verified-1 by Jenkins Builder
Change subject: Add GSMTAP encapsulation of RLP frames in CSD NT mode
......................................................................
Add GSMTAP encapsulation of RLP frames in CSD NT mode
In CSD (Circuit Switched Data) NT (Non-Transparent) mode, there
are RLP (Radio Link Protocol) frames inside the modified V.110.
wireshark alrady has a dissector for this, and we've introduced
a GSMTAP type for RLP some time ago. So with this patch, we now
generate such GSMTAP RLP frames.
Change-Id: I6a258458822bcb3fe7290a9b9b3d104beecda219
---
M include/osmo-bts/bts.h
M include/osmo-bts/lchan.h
M src/common/l1sap.c
M src/common/vty.c
M tests/osmo-bts.vty
5 files changed, 123 insertions(+), 4 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/24/35124/5
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/35124?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: I6a258458822bcb3fe7290a9b9b3d104beecda219
Gerrit-Change-Number: 35124
Gerrit-PatchSet: 5
Gerrit-Owner: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: newpatchset
Attention is currently required from: laforge.
Hello Jenkins Builder,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-bts/+/35133?usp=email
to look at the new patch set (#4).
The following approvals got outdated and were removed:
Verified-1 by Jenkins Builder
Change subject: gsmtap-rlp: Add support for skipping generating NULL frames
......................................................................
gsmtap-rlp: Add support for skipping generating NULL frames
If there's nothing to transmit over a CSD NT channel, both ends generate
NULL frames. Let's add an option to suppress GSMTAP output for those,
creating pcap files with less noise.
Change-Id: I85a2159cfaa01bfb4205c1462e3a9dbda68e4bad
---
M TODO-RELEASE
M include/osmo-bts/bts.h
M src/common/l1sap.c
M src/common/vty.c
M tests/osmo-bts.vty
5 files changed, 37 insertions(+), 5 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/33/35133/4
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/35133?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: I85a2159cfaa01bfb4205c1462e3a9dbda68e4bad
Gerrit-Change-Number: 35133
Gerrit-PatchSet: 4
Gerrit-Owner: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-MessageType: newpatchset
Attention is currently required from: fixeria, osmith, pespin.
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/libosmocore/+/35134?usp=email )
Change subject: rlp: Add support for 576bit RLP frames
......................................................................
Patch Set 3:
(2 comments)
File src/gsm/rlp.c:
https://gerrit.osmocom.org/c/libosmocore/+/35134/comment/aafd05b9_812a024d
PS3, Line 74: /* we only support 240 bit so far */
> this is not true anymore?
Done
https://gerrit.osmocom.org/c/libosmocore/+/35134/comment/cb81046a_f26ced39
PS3, Line 88: out->fcs = (data[data_len-1] << 16) | (data[data_len-2]) << 8 | (data[data_len-3] << 0);
> all this could really go into the previous commit.
yes, with the difference that the 240bit is actually tested while the 576 is not. I'd like to merge the 240bit code now and the 576bit later when I found devices and a working setup to actually verify it.
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/35134?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: Idfdcabb19fe8733fb9c5ee76a39b0bf4cdf60c2c
Gerrit-Change-Number: 35134
Gerrit-PatchSet: 3
Gerrit-Owner: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Comment-Date: Tue, 28 Nov 2023 21:56:23 +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: fixeria, laforge, osmith, pespin.
Hello Jenkins Builder, fixeria, osmith, pespin,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/libosmocore/+/35134?usp=email
to look at the new patch set (#4).
The following approvals got outdated and were removed:
Code-Review+1 by pespin, Verified+1 by Jenkins Builder
Change subject: rlp: Add support for 576bit RLP frames
......................................................................
rlp: Add support for 576bit RLP frames
The code so far only supported 240bit RLP frames; Add support for
576bit in this patch. We still only support versions 0+1 and not
version 2.
Change-Id: Idfdcabb19fe8733fb9c5ee76a39b0bf4cdf60c2c
---
M src/gsm/rlp.c
1 file changed, 39 insertions(+), 21 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/34/35134/4
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/35134?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: Idfdcabb19fe8733fb9c5ee76a39b0bf4cdf60c2c
Gerrit-Change-Number: 35134
Gerrit-PatchSet: 4
Gerrit-Owner: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: newpatchset
Attention is currently required from: fixeria, osmith, pespin.
Hello Jenkins Builder, fixeria, osmith, pespin,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/libosmocore/+/35123?usp=email
to look at the new patch set (#8).
The following approvals got outdated and were removed:
Code-Review+1 by pespin, Verified+1 by Jenkins Builder
Change subject: Add a GSM RLP decoder and encoder
......................................................................
Add a GSM RLP decoder and encoder
This code implements a decoder and encoder for the RLP (Radio Link
Protocol) as used in the bearer channel of GSM CSD (Circuit Switched
Data).
Change-Id: I2d9bd8eb4f0cd0f72c436996767b199429596917
---
M include/osmocom/gsm/Makefile.am
A include/osmocom/gsm/rlp.h
M src/gsm/Makefile.am
M src/gsm/libosmogsm.map
A src/gsm/rlp.c
M tests/Makefile.am
A tests/rlp/rlp_test.c
A tests/rlp/rlp_test.ok
M tests/testsuite.at
9 files changed, 608 insertions(+), 2 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/23/35123/8
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/35123?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: I2d9bd8eb4f0cd0f72c436996767b199429596917
Gerrit-Change-Number: 35123
Gerrit-PatchSet: 8
Gerrit-Owner: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: newpatchset
Attention is currently required from: fixeria, osmith, pespin.
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/libosmocore/+/35123?usp=email )
Change subject: Add a GSM RLP decoder and encoder
......................................................................
Patch Set 7:
(5 comments)
File include/osmocom/gsm/rlp.h:
https://gerrit.osmocom.org/c/libosmocore/+/35123/comment/00ac2ee0_727e5ead
PS4, Line 1: /*
> maybe add a line description here pointing to 3GPP TS 24.022.
Done
https://gerrit.osmocom.org/c/libosmocore/+/35123/comment/a05a35af_4a0e4ba0
PS4, Line 24: /*! \defgroup rlp GSM RLP (Radio Link Protocol) as used in CSD
> or add reference to 3GPP TS 24.022 here.
Done
File src/gsm/rlp.c:
https://gerrit.osmocom.org/c/libosmocore/+/35123/comment/c0ed4035_e0af9efa
PS4, Line 85: //out->fcs = (data[240/8-3] << 16) | (data[240/8-2]) << 8 | (data[240/8-1] << 0);
> this line can be dropped?
Done
https://gerrit.osmocom.org/c/libosmocore/+/35123/comment/9eb43577_a1c9b574
PS4, Line 89: if (n_s == 0x3f) {
> switch (n_s)
Done
https://gerrit.osmocom.org/c/libosmocore/+/35123/comment/ea8475af_4940224c
PS4, Line 93: memcpy(out->info, data+2, 240/8 - 5);
> This 240/8 appears a lot of times, it may be worth describing it in a define.
I actually find it easier to understand the way it is. Anyone working on RLP will know the 240 / 576 byte frame size.
#define 240BITS_AS_BYTES (240/8) doesn't really make the code more readable, IMHO.
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/35123?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: I2d9bd8eb4f0cd0f72c436996767b199429596917
Gerrit-Change-Number: 35123
Gerrit-PatchSet: 7
Gerrit-Owner: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Comment-Date: Tue, 28 Nov 2023 21:54:22 +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: pespin.
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-mgw/+/35152?usp=email )
Change subject: mgcp-cli: Transmit remote IP addr in CRCX if known and port=0
......................................................................
Patch Set 1: Code-Review+1
--
To view, visit https://gerrit.osmocom.org/c/osmo-mgw/+/35152?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-mgw
Gerrit-Branch: master
Gerrit-Change-Id: I30165dbac5e484011d0acf46af36f105954a501d
Gerrit-Change-Number: 35152
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: Tue, 28 Nov 2023 21:23:14 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
laforge has submitted this change. ( https://gerrit.osmocom.org/c/libosmocore/+/35155?usp=email )
Change subject: sim/class_tables: Prevent out-of-bounds access
......................................................................
sim/class_tables: Prevent out-of-bounds access
The INS tables always must be declared with 256 elements, even
if they only use some of them. We never know which random INS
code might be used to index them.
This was not discovered until now as the only known user of those
tables is always using the SIM/UICC/USIM table and not the plain
ISO7816 table.
Change-Id: I6739f469f6e84eed9aab403cc481ebff86df0181
---
M src/sim/class_tables.c
1 file changed, 18 insertions(+), 1 deletion(-)
Approvals:
laforge: Looks good to me, approved; Verified
diff --git a/src/sim/class_tables.c b/src/sim/class_tables.c
index 724c077..6d05ede 100644
--- a/src/sim/class_tables.c
+++ b/src/sim/class_tables.c
@@ -19,7 +19,7 @@
#include <osmocom/core/utils.h>
#include <osmocom/sim/class_tables.h>
-static const uint8_t iso7816_ins_tbl[] = {
+static const uint8_t iso7816_ins_tbl[256] = {
[0xB0] = 2, /* READ BIN */
[0xD0] = 3, /* WRITE BIN */
[0xD6] = 3, /* UPDATE BIN */
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/35155?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: I6739f469f6e84eed9aab403cc481ebff86df0181
Gerrit-Change-Number: 35155
Gerrit-PatchSet: 2
Gerrit-Owner: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-MessageType: merged
Attention is currently required from: Hoernchen, dexter.
Hello Hoernchen, Jenkins Builder, dexter,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/libosmocore/+/35154?usp=email
to look at the new patch set (#3).
The following approvals got outdated and were removed:
Verified+1 by Jenkins Builder
Change subject: libosmosim: Support Microsoft smart card discovery process
......................................................................
libosmosim: Support Microsoft smart card discovery process
Our class/instruction tables (used mainly by simtrace cardem host
software) only contain support for those instructions permitted
in the related card specification.
Microsoft blindly tries CLA=0xCA with INS=0x00 which is not somethin
that the GSM SIM, ETSI UICC or 3GPP USIM specs specify, and which
hence results in log output like this:
DLINP DEBUG [0] <= osmo_st2_cardem_request_sw_tx(sw=6a88)
DLGLOBAL INFO => DATA: flags=0x01 (HDR ), 00 ca 7f 68 00
DLGLOBAL ERROR Unknown APDU case 0
DLGLOBAL FATAL Failed to recognize APDU, terminating
Let's adjust to microsoft and *always* support their instructions
no matter which osim_cla_ins_card_profile was used.
Special thanks to Eric Wild for pointing me to this unexpected
behaviour of PC/SC on modern Windows.
Change-Id: I424964c0afab643e6a5d7824d91c2c86b0d3f25b
Related: SYS#6617
---
M src/sim/class_tables.c
1 file changed, 47 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/54/35154/3
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/35154?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: I424964c0afab643e6a5d7824d91c2c86b0d3f25b
Gerrit-Change-Number: 35154
Gerrit-PatchSet: 3
Gerrit-Owner: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: Hoernchen <ewild(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: dexter <pmaier(a)sysmocom.de>
Gerrit-Attention: Hoernchen <ewild(a)sysmocom.de>
Gerrit-Attention: dexter <pmaier(a)sysmocom.de>
Gerrit-MessageType: newpatchset
Attention is currently required from: Hoernchen, dexter.
Hello Hoernchen, dexter,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/libosmocore/+/35154?usp=email
to look at the new patch set (#2).
Change subject: libosmosim: Support Microsoft smart card discovery process
......................................................................
libosmosim: Support Microsoft smart card discovery process
Our class/instruction tables (used mainly by simtrace cardem host
software) only contain support for those instructions permitted
in the related card specification.
Microsoft blindly tries CLA=0xCA with INS=0x00 which is not somethin
that the GSM SIM, ETSI UICC or 3GPP USIM specs specify, and which
hence results in log output like this:
DLINP DEBUG [0] <= osmo_st2_cardem_request_sw_tx(sw=6a88)
DLGLOBAL INFO => DATA: flags=0x01 (HDR ), 00 ca 7f 68 00
DLGLOBAL ERROR Unknown APDU case 0
DLGLOBAL FATAL Failed to recognize APDU, terminating
Let's adjust to microsoft and *always* support their instructions
no matter which osim_cla_ins_card_profile was used.
Special thanks to Eric Wild for pointing me to this unexpected
behaviour of PC/SC on modern Windows.
Change-Id: I424964c0afab643e6a5d7824d91c2c86b0d3f25b
Related: SYS#6617
---
M src/sim/class_tables.c
1 file changed, 45 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/54/35154/2
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/35154?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: I424964c0afab643e6a5d7824d91c2c86b0d3f25b
Gerrit-Change-Number: 35154
Gerrit-PatchSet: 2
Gerrit-Owner: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: Hoernchen <ewild(a)sysmocom.de>
Gerrit-Reviewer: dexter <pmaier(a)sysmocom.de>
Gerrit-CC: Jenkins Builder
Gerrit-Attention: Hoernchen <ewild(a)sysmocom.de>
Gerrit-Attention: dexter <pmaier(a)sysmocom.de>
Gerrit-MessageType: newpatchset
laforge has uploaded this change for review. ( https://gerrit.osmocom.org/c/libosmocore/+/35155?usp=email )
Change subject: sim/class_tables: Prevent out-of-bounds access
......................................................................
sim/class_tables: Prevent out-of-bounds access
The INS tables always must be declared with 256 elements, even
if they only use some of them. We never know which random INS
code might be used to index them.
This was not discovered until now as the only known user of those
tables is always using the SIM/UICC/USIM table and not the plain
ISO7816 table.
Change-Id: I6739f469f6e84eed9aab403cc481ebff86df0181
---
M src/sim/class_tables.c
1 file changed, 18 insertions(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/55/35155/1
diff --git a/src/sim/class_tables.c b/src/sim/class_tables.c
index 7c11f3b..4e0bb60 100644
--- a/src/sim/class_tables.c
+++ b/src/sim/class_tables.c
@@ -19,7 +19,7 @@
#include <osmocom/core/utils.h>
#include <osmocom/sim/class_tables.h>
-static const uint8_t iso7816_ins_tbl[] = {
+static const uint8_t iso7816_ins_tbl[256] = {
[0xB0] = 2, /* READ BIN */
[0xD0] = 3, /* WRITE BIN */
[0xD6] = 3, /* UPDATE BIN */
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/35155?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: I6739f469f6e84eed9aab403cc481ebff86df0181
Gerrit-Change-Number: 35155
Gerrit-PatchSet: 1
Gerrit-Owner: laforge <laforge(a)osmocom.org>
Gerrit-MessageType: newchange
laforge has uploaded this change for review. ( https://gerrit.osmocom.org/c/libosmocore/+/35154?usp=email )
Change subject: libosmsim: Support Microsoft smart card discovery process
......................................................................
libosmsim: Support Microsoft smart card discovery process
Our class/instruction tables (used mainly by simtrace cardem host
software) only contain support for those instructions permitted
in the related card specification.
Microsoft blindly tries CLA=0xCA with INS=0x00 which is not somethin
that the GSM SIM, ETSI UICC or 3GPP USIM specs specify, and which
hence results in log output like this:
DLINP DEBUG [0] <= osmo_st2_cardem_request_sw_tx(sw=6a88)
DLGLOBAL INFO => DATA: flags=0x01 (HDR ), 00 ca 7f 68 00
DLGLOBAL ERROR Unknown APDU case 0
DLGLOBAL FATAL Failed to recognize APDU, terminating
Let's adjust to microsoft and *always* support their instructions
no matter which osim_cla_ins_card_profile was used.
Special thanks to Eric Wild for pointing me to this unexpected
behaviour of PC/SC on modern Windows.
Change-Id: I424964c0afab643e6a5d7824d91c2c86b0d3f25b
Related: SYS#6617
---
M src/sim/class_tables.c
1 file changed, 45 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/54/35154/1
diff --git a/src/sim/class_tables.c b/src/sim/class_tables.c
index 724c077..7c11f3b 100644
--- a/src/sim/class_tables.c
+++ b/src/sim/class_tables.c
@@ -350,6 +350,13 @@
[0x88] = 4, /* AUTHENTICATE */
};
+/* https://learn.microsoft.com/en-us/windows-hardware/drivers/smartcard/discov… */
+static const uint8_t microsoft_discovery_ins_tbl[256] = {
+ [0xA4] = 4, /* SELECT FILE */
+ [0xCA] = 2, /* GET DATA */
+ [0xC0] = 2, /* GET RESPONSE */
+};
+
int osim_determine_apdu_case(const struct osim_cla_ins_card_profile *prof,
const uint8_t *hdr)
{
@@ -374,5 +381,14 @@
return rc;
}
}
+ /* special handling for Microsoft who insists to use INS=0xCA in CLA=0x00 which is not
+ * really part of GSM SIM, ETSI UICC or 3GPP USIM specifications, but only ISO7816. Rather than adding
+ * it to each and every card profile, let's add the instructions listed at
+ * https://learn.microsoft.com/en-us/windows-hardware/drivers/smartcard/discov… explicitly
+ * here. They will only be used in case no more specific match was found in the actual profile above. */
+ rc = microsoft_discovery_ins_tbl[ins];
+ if (rc)
+ return rc;
+
return 0;
}
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/35154?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: I424964c0afab643e6a5d7824d91c2c86b0d3f25b
Gerrit-Change-Number: 35154
Gerrit-PatchSet: 1
Gerrit-Owner: laforge <laforge(a)osmocom.org>
Gerrit-MessageType: newchange
pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-hnbgw/+/35153?usp=email )
Change subject: mgw_fsm: Assume IuUP HNB IP addr = Iuh during MGCP CRCX on RAN side
......................................................................
mgw_fsm: Assume IuUP HNB IP addr = Iuh during MGCP CRCX on RAN side
In general, the HNBs end up binding its IuUP/RTP streams to the same IP
address used for Iuh signalling.
When receiving a RAB-Ass-Req from CN, osmo-hnbgw creates an endpoint in
its co-located MGW and creates 2 MGCP conns on it, one facing the RAN
side and one facing the CN side. At that point, the remote CN IuUP IP address
is known (was include din the received RAB-Ass-Req), but the RAN one is
not yet known. Hence, the CRCX on the RAN-side conn contained no remote
IP address, which means MGW has to blindly guess a good local IP address
if "ip probing" is enabled.
As a result, when RAB-Ass-Resp comes back from the hNodeB containing the
allocated remote IuUP IP address and MGW is updated through MGCP MDCX,
it may happen that MGW rebinds to a better fitting local IP address and
returns it in MDCX. This has several downfalls:
1- We don't yet support updating the hNodeB about the changed IP address
(see mgw_fsm_mdcx_hnb). For that, we'd need to send a RAB-Modify-Req+Resp.
2- Even if we supported it, in the general case we'd be delaying call
establishment because an extra roundtrip is needed to update
RAB-Modify-Req+Resp.
In general, the HNBs end up binding its IuUP/RTP streams to the same IP
address used for the Iuh signalling. Hence, use this assumption to
announce the Iuh IP address as a remote IuUP IP address when
transmitting the MGCP CRCX at the RAN-side conn to the MGW. This way
the MGW can potentially select a proper local IuUP IP address from the
start, so no RAB-Modify-Req is required later on.
The logic to transmit RAB-Modify-Req is left unimplemented in this
commit and is left as a later improvement.
Related: SYS#6657
Change-Id: I87c514204603e0f15a55da9b619c7ce1e14f042e
T#
Change-Id: Icf43e3a1cde809d844f17ef2d0600efe64bc3dfe
---
M src/osmo-hnbgw/mgw_fsm.c
1 file changed, 63 insertions(+), 2 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-hnbgw refs/changes/53/35153/1
diff --git a/src/osmo-hnbgw/mgw_fsm.c b/src/osmo-hnbgw/mgw_fsm.c
index 7b4c811..5251374 100644
--- a/src/osmo-hnbgw/mgw_fsm.c
+++ b/src/osmo-hnbgw/mgw_fsm.c
@@ -26,6 +26,8 @@
#include <osmocom/core/logging.h>
#include <osmocom/core/sockaddr_str.h>
+#include <osmocom/netif/stream.h>
+
#include <osmocom/ranap/ranap_common.h>
#include <osmocom/ranap/ranap_common_cn.h>
#include <osmocom/ranap/ranap_common_ran.h>
@@ -132,6 +134,7 @@
{
struct mgw_fsm_priv *mgw_fsm_priv = fi->priv;
struct hnbgw_context_map *map = mgw_fsm_priv->map;
+ struct hnb_context *hnb_ctx = map->hnb_ctx;
struct osmo_sockaddr addr;
struct osmo_sockaddr_str addr_str;
RANAP_RAB_AssignmentRequestIEs_t *ies;
@@ -168,6 +171,21 @@
mgw_info.codecs[0] = CODEC_IUFP;
mgw_info.codecs_len = 1;
+ /* The HNB IuUP IP address & port is not yet known here (Rx RAB-Ass-Req Tx CRCX (RAN) time):
+ * Assume and announce "remote IuUP IP address" == "remote Iuh signalling IP address" to the MGW
+ * here, so that it can most probably select a proper IuUP local IP address to be used from the
+ * start. In the event we receive a "remote IuUP IP address" != "remote Iuh signalling IP address"
+ * later on during RAB-Ass-Resp, we'll update IP addr at the MGW through MDCX and if MGW decides
+ * to use another IuUP local IP address as a result, it will be updated at the HNB through
+ * RAB-Modify-Req. */
+ if (hnb_ctx && hnb_ctx->conn &&
+ (rc = osmo_stream_srv_get_fd(hnb_ctx->conn)) >= 0) {
+ if (osmo_sock_get_remote_ip(rc, mgw_info.addr, sizeof(mgw_info.addr)) < 0)
+ LOGPFSML(fi, LOGL_ERROR, "Invalid Iuh IP Address\n");
+ }
+ LOGPFSML(fi, LOGL_ERROR, "PESPIN: mgw_info.addr=%s\n", mgw_info.addr);
+ //mgw_info.port = 80;
+
mgw_fsm_priv->mgcpc = mgcp_client_pool_get(g_hnbgw->mgw_pool);
if (!mgw_fsm_priv->mgcpc) {
LOGPFSML(fi, LOGL_ERROR,
@@ -322,8 +340,7 @@
* normally. This is a situation we cannot recover from. */
LOGPFSML(fi, LOGL_ERROR, "Failed to extract RTP IP-address and Port from RAB-AssignmentResponse\n");
osmo_fsm_inst_state_chg(fi, MGW_ST_FAILURE, 0, 0);
- return;
- }
+ return; }
rc = osmo_sockaddr_str_from_sockaddr(&addr_str, &addr.u.sas);
if (rc < 0) {
--
To view, visit https://gerrit.osmocom.org/c/osmo-hnbgw/+/35153?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-hnbgw
Gerrit-Branch: master
Gerrit-Change-Id: Icf43e3a1cde809d844f17ef2d0600efe64bc3dfe
Gerrit-Change-Number: 35153
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: newchange
Attention is currently required from: dexter, fixeria.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/35151?usp=email )
Change subject: gprs_rlcmac_sched: rewrite logic around idle block skip
......................................................................
Patch Set 2:
(1 comment)
File src/gprs_rlcmac_sched.cpp:
https://gerrit.osmocom.org/c/osmo-pcu/+/35151/comment/451abde9_942e3096
PS1, Line 486: * way we help BTS energy saving (on TRX!=C0) by sending nothing
> That makes more sense now, so when we can safely assume that nobody is listening, then we skip the i […]
IIRC you can only decrease a given number of dBm at specific points in time, it's specified somewhere in the specs, we have that implemented in osmo-bts. At least for C0, others may be able to transmit nothing. Hence why it's fine sending nothing in general for TRX!=0 no matter whether the BTS supports it, but for TRX0 we really need to transmit something in time (and that's done by BTS or PCU depending on what the bts supports atPCUIF/lower layer level).
I think it's also meant to avoid/lower radio interference/noise.
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/35151?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: Iadb62748b18605bf158169b317f880352bc0a5a6
Gerrit-Change-Number: 35151
Gerrit-PatchSet: 2
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Attention: dexter <pmaier(a)sysmocom.de>
Gerrit-Comment-Date: Tue, 28 Nov 2023 15:55:21 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: pespin <pespin(a)sysmocom.de>
Comment-In-Reply-To: dexter <pmaier(a)sysmocom.de>
Gerrit-MessageType: comment
laforge has submitted this change. ( https://gerrit.osmocom.org/c/pysim/+/35102?usp=email )
(
1 is the latest approved patch-set.
No files were changed between the latest approved patch-set and the submitted one.
)Change subject: pySim-shell: refuse to execute a startup script on initialization errors
......................................................................
pySim-shell: refuse to execute a startup script on initialization errors
When there is an error on initialization (e.g. card not present), we
should not continue to execute a startup script that was passed with the
pySim-shell commandline. Instead we should print a message that the
startup script was ignored due to errors.
Related: OS#6271
Change-Id: I61329988e0e9021b5b0ef8e0819fb8e23cabf38b
---
M pySim-shell.py
1 file changed, 18 insertions(+), 1 deletion(-)
Approvals:
fixeria: Looks good to me, but someone else must approve
laforge: Looks good to me, approved
Jenkins Builder: Verified
diff --git a/pySim-shell.py b/pySim-shell.py
index 795276a..4e08eb7 100755
--- a/pySim-shell.py
+++ b/pySim-shell.py
@@ -979,7 +979,9 @@
" it should also be noted that some readers may behave strangely when no card")
print(" is inserted.)")
print("")
- app = PysimApp(None, None, sl, ch, opts.script)
+ if opts.script:
+ print("will not execute startup script due to card initialization errors!")
+ app = PysimApp(None, None, sl, ch)
# If the user supplies an ADM PIN at via commandline args authenticate
# immediately so that the user does not have to use the shell commands
--
To view, visit https://gerrit.osmocom.org/c/pysim/+/35102?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: pysim
Gerrit-Branch: master
Gerrit-Change-Id: I61329988e0e9021b5b0ef8e0819fb8e23cabf38b
Gerrit-Change-Number: 35102
Gerrit-PatchSet: 2
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-MessageType: merged
laforge has submitted this change. ( https://gerrit.osmocom.org/c/pysim/+/35101?usp=email )
Change subject: app: do not catch exceptions in init_card
......................................................................
app: do not catch exceptions in init_card
The function init_card catches all exceptions and then returns None
objects for card or rs in case of an error. This does not fit in the
style we pursue in pySim. This is in particular true for library
functions. We want those functions to raise exceptions when something is
wrong, so that we can catch the exception at top level. Let's fix this
for init_card now.
Related: OS#6271
Change-Id: I581125d8273ef024f6dbf3a5db6116be15c5c95d
---
M pySim/app.py
1 file changed, 22 insertions(+), 8 deletions(-)
Approvals:
Jenkins Builder: Verified
laforge: Looks good to me, approved
pespin: Looks good to me, but someone else must approve
fixeria: Looks good to me, but someone else must approve
diff --git a/pySim/app.py b/pySim/app.py
index 1711a1c..b0df85f 100644
--- a/pySim/app.py
+++ b/pySim/app.py
@@ -55,14 +55,7 @@
# Wait up to three seconds for a card in reader and try to detect
# the card type.
print("Waiting for card...")
- try:
- sl.wait_for_card(3)
- except NoCardError:
- print("No card detected!")
- return None, None
- except:
- print("Card not readable!")
- return None, None
+ sl.wait_for_card(3)
generic_card = False
card = card_detect(scc)
@@ -73,6 +66,10 @@
profile = CardProfile.pick(scc)
if profile is None:
+ # It is not an unrecoverable error in case profile detection fails. It
+ # just means that pySim was unable to recognize the card profile. This
+ # may happen in particular with unprovisioned cards that do not have
+ # any files on them yet.
print("Unsupported card type!")
return None, card
--
To view, visit https://gerrit.osmocom.org/c/pysim/+/35101?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: pysim
Gerrit-Branch: master
Gerrit-Change-Id: I581125d8273ef024f6dbf3a5db6116be15c5c95d
Gerrit-Change-Number: 35101
Gerrit-PatchSet: 2
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged
Attention is currently required from: fixeria, pespin.
dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/35151?usp=email )
Change subject: gprs_rlcmac_sched: rewrite logic around idle block skip
......................................................................
Patch Set 2:
(1 comment)
File src/gprs_rlcmac_sched.cpp:
https://gerrit.osmocom.org/c/osmo-pcu/+/35151/comment/01ba615e_60329e37
PS1, Line 486: * way we help BTS energy saving (on TRX!=C0) by sending nothing
> IIRC osmo-bts-trx does something slightly different if it detects no block is to be sent because no […]
That makes more sense now, so when we can safely assume that nobody is listening, then we skip the idle blocks. The TRX then sends idle blocks for us which are reduced in power so that energy is saved. (Why not turning off the TRX completely? Nobody is listening anyway? Or is this forbidden by the spec?)
When I get this right the skipping of idle blocks only refers to the periods where no TBF is allocated. When there is a TBF we still send dummy blocks from the PCU.
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/35151?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: Iadb62748b18605bf158169b317f880352bc0a5a6
Gerrit-Change-Number: 35151
Gerrit-PatchSet: 2
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Comment-Date: Tue, 28 Nov 2023 15:33:43 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: pespin <pespin(a)sysmocom.de>
Comment-In-Reply-To: dexter <pmaier(a)sysmocom.de>
Gerrit-MessageType: comment
Attention is currently required from: fixeria, pespin.
Hello Jenkins Builder, fixeria, pespin,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-pcu/+/35151?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: gprs_rlcmac_sched: rewrite logic around idle block skip
......................................................................
gprs_rlcmac_sched: rewrite logic around idle block skip
The logic that decides whether to generate idle / dummy blocks directly
at the PCU or leave the work to the TRX implementation of that specific
BTS has a confusing appeareance.
(This is a follow up patch to change
I7a08d8cc670fa14f7206ffffdbc22351f3668a17)
Related: OS#6191
Change-Id: Iadb62748b18605bf158169b317f880352bc0a5a6
---
M src/gprs_rlcmac_sched.cpp
1 file changed, 31 insertions(+), 5 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/51/35151/2
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/35151?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: Iadb62748b18605bf158169b317f880352bc0a5a6
Gerrit-Change-Number: 35151
Gerrit-PatchSet: 2
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: newpatchset
Attention is currently required from: neels, osmith.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-bsc/+/35097?usp=email )
Change subject: vty: disallow combination of early-IA and frequency hopping
......................................................................
Patch Set 2:
(1 comment)
File src/osmo-bsc/bts_trx_vty.c:
https://gerrit.osmocom.org/c/osmo-bsc/+/35097/comment/7cfd114b_94b51cc7
PS2, Line 352: ts->hopping.enabled = enabled;
> I would have expected the error + return before actually enabling it. […]
Ack
--
To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/35097?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bsc
Gerrit-Branch: master
Gerrit-Change-Id: I8d375e5155be7b53034d5c0be5566d2f33af5db0
Gerrit-Change-Number: 35097
Gerrit-PatchSet: 2
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-CC: osmith <osmith(a)sysmocom.de>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Comment-Date: Tue, 28 Nov 2023 15:22:02 +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: dexter, fixeria.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/35151?usp=email )
Change subject: gprs_rlcmac_sched: rewrite logic around idle block skip
......................................................................
Patch Set 1:
(2 comments)
Patchset:
PS1:
btw, I think this code change can also be applied to the other place where you removed the #ifdef in the previous commit.
File src/gprs_rlcmac_sched.cpp:
https://gerrit.osmocom.org/c/osmo-pcu/+/35151/comment/c2b472ef_35de08e1
PS1, Line 486: * way we help BTS energy saving (on TRX!=C0) by sending nothing
> I don't get why this is energy saving. The dummy block is sent in any case. […]
IIRC osmo-bts-trx does something slightly different if it detects no block is to be sent because no one is listening, like decreasing the Tx power during that time. If MS are listening on that PDCH, then we still need to transmit at regular Tx power. @vyanitskiy@sysmocom.de probably remembers better.
In any case, I'd rather leave the comment where it was, immedatelly after the parent "else" block, since it refers to the whole case where an RLCMAC Dummy Block would be sent.
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/35151?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: Iadb62748b18605bf158169b317f880352bc0a5a6
Gerrit-Change-Number: 35151
Gerrit-PatchSet: 1
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-CC: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Attention: dexter <pmaier(a)sysmocom.de>
Gerrit-Comment-Date: Tue, 28 Nov 2023 15:06:56 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: dexter <pmaier(a)sysmocom.de>
Gerrit-MessageType: comment
dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/35096?usp=email )
Change subject: gprs_rlcmac_sched: fix condition for generating dummy blocks on idle
......................................................................
Patch Set 2:
(1 comment)
File src/gprs_rlcmac_sched.cpp:
https://gerrit.osmocom.org/c/osmo-pcu/+/35096/comment/15e16302_097cbebb
PS2, Line 492: skip_idle = skip_idle && trx != 0;
> I think now that we don't have the #ifdef, we can really simplify this to: […]
I have created a follow up patch now, so we can discuss there how we simplify this: https://gerrit.osmocom.org/c/osmo-pcu/+/35151
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/35096?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: I7a08d8cc670fa14f7206ffffdbc22351f3668a17
Gerrit-Change-Number: 35096
Gerrit-PatchSet: 2
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Tue, 28 Nov 2023 14:44:21 +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: pespin.
dexter has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/35151?usp=email )
Change subject: gprs_rlcmac_sched: rewrite logic around idle block skip
......................................................................
Patch Set 1:
(1 comment)
File src/gprs_rlcmac_sched.cpp:
https://gerrit.osmocom.org/c/osmo-pcu/+/35151/comment/724b3af7_7e2b6a19
PS1, Line 486: * way we help BTS energy saving (on TRX!=C0) by sending nothing
I don't get why this is energy saving. The dummy block is sent in any case. A dummy block should consume as much energy as a block that has actual data in it.
So all we do here is looking up if there are TBF. If there are none => msg = NULL => TRX will create and send a dummy frame by itself)
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/35151?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: Iadb62748b18605bf158169b317f880352bc0a5a6
Gerrit-Change-Number: 35151
Gerrit-PatchSet: 1
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-CC: Jenkins Builder
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Tue, 28 Nov 2023 14:43:31 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-pcu/+/35151?usp=email )
Change subject: gprs_rlcmac_sched: rewrite logic around idle block skip
......................................................................
gprs_rlcmac_sched: rewrite logic around idle block skip
The logic that decides whether to generate idle / dummy blocks directly
at the PCU or leave the work to the TRX implementation of that specific
BTS has a confusing appeareance.
(This is a follow up patch to change
I7a08d8cc670fa14f7206ffffdbc22351f3668a17)
Related: OS#6191
Change-Id: Iadb62748b18605bf158169b317f880352bc0a5a6
---
M src/gprs_rlcmac_sched.cpp
1 file changed, 36 insertions(+), 15 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/51/35151/1
diff --git a/src/gprs_rlcmac_sched.cpp b/src/gprs_rlcmac_sched.cpp
index 12b9e50..a56fcb3 100644
--- a/src/gprs_rlcmac_sched.cpp
+++ b/src/gprs_rlcmac_sched.cpp
@@ -474,22 +474,26 @@
}
/* Prio 3: send dummy control message if need to poll or USF */
else {
- /* If there's no TBF attached to this PDCH, we can submit an empty
- * data_req since there's nothing to transmit nor to poll/USF. This
- * way we help BTS energy saving (on TRX!=C0) by sending nothing
- * instead of a dummy block. The early return is done here and
- * not at the start of the function because the condition below
- * (num_tbfs==0) may not be enough, because temporary dummy TBFs
- * created to send Imm Ass Rej (see handle_tbf_reject()) don't
- * have a TFI assigned and hence are not attached to the PDCH
- * TS, so they don't show up in the count below.
- */
- const unsigned num_tbfs = pdch->num_tbfs(GPRS_RLCMAC_DL_TBF)
- + pdch->num_tbfs(GPRS_RLCMAC_UL_TBF);
- bool skip_idle = (num_tbfs == 0);
+ bool skip_idle;
- if (bts->gen_idle_blocks)
- skip_idle = skip_idle && trx != 0;
+ if (bts->gen_idle_blocks) {
+ /* Always generate all idle blocks since the TRX of this BTS does
+ * not generate idle blocks by itself. */
+ skip_idle = false;
+ } else {/* Only skip if no one is listening on this PDCH:
+ * If there's no TBF attached to this PDCH, we can submit an empty
+ * data_req since there's nothing to transmit nor to poll/USF. This
+ * way we help BTS energy saving (on TRX!=C0) by sending nothing
+ * instead of a dummy block. The early return is done here and
+ * not at the start of the function because the condition below
+ * (num_tbfs==0) may not be enough, because temporary dummy TBFs
+ * created to send Imm Ass Rej (see handle_tbf_reject()) don't
+ * have a TFI assigned and hence are not attached to the PDCH
+ * TS, so they don't show up in the count below. */
+ const unsigned num_tbfs = pdch->num_tbfs(GPRS_RLCMAC_DL_TBF)
+ + pdch->num_tbfs(GPRS_RLCMAC_UL_TBF);
+ skip_idle = (num_tbfs == 0);
+ }
if (!skip_idle && (msg = sched_dummy())) {
/* increase counter */
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/35151?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: Iadb62748b18605bf158169b317f880352bc0a5a6
Gerrit-Change-Number: 35151
Gerrit-PatchSet: 1
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-MessageType: newchange
Attention is currently required from: daniel.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/libosmocore/+/35078?usp=email )
Change subject: osmo_io: Factor out and use common send function from backend
......................................................................
Patch Set 1:
(1 comment)
File src/core/osmo_io.c:
https://gerrit.osmocom.org/c/libosmocore/+/35078/comment/e07d3106_06f58829
PS1, Line 360:
rc == 0 case seems to be missing here?
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/35078?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: I6da2653d32aedd0e7872be0cf90a841b56462e59
Gerrit-Change-Number: 35078
Gerrit-PatchSet: 1
Gerrit-Owner: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: lynxis lazus <lynxis(a)fe80.eu>
Gerrit-CC: laforge <laforge(a)osmocom.org>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: daniel <dwillmann(a)sysmocom.de>
Gerrit-Comment-Date: Tue, 28 Nov 2023 13:41:58 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
Attention is currently required from: dexter.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/35096?usp=email )
Change subject: gprs_rlcmac_sched: fix condition for generating dummy blocks on idle
......................................................................
Patch Set 2:
(1 comment)
File src/gprs_rlcmac_sched.cpp:
https://gerrit.osmocom.org/c/osmo-pcu/+/35096/comment/bc33e489_dccdf6cf
PS2, Line 492: skip_idle = skip_idle && trx != 0;
I think now that we don't have the #ifdef, we can really simplify this to:
bool skip_dummy;
if (bts->gen_dummy_blk) {
skip_dummy = false;
} else {
const unsigned num_tbfs = pdch->num_tbfs(GPRS_RLCMAC_DL_TBF)
+ pdch->num_tbfs(GPRS_RLCMAC_UL_TBF);
skip_dummy = (num_tbfs == 0);
}
This can again be simplified to:
bool skip_dummy = bts->gen_dummy_blk;
if (skip_dummy) {
/* Only skip if no one is listening on this PDCH: */
const unsigned num_tbfs = pdch->num_tbfs(GPRS_RLCMAC_DL_TBF)
+ pdch->num_tbfs(GPRS_RLCMAC_UL_TBF);
skip_dummy = (num_tbfs == 0);
}
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/35096?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: I7a08d8cc670fa14f7206ffffdbc22351f3668a17
Gerrit-Change-Number: 35096
Gerrit-PatchSet: 2
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: dexter <pmaier(a)sysmocom.de>
Gerrit-Comment-Date: Tue, 28 Nov 2023 13:38:50 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
Attention is currently required from: daniel, neels.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-bts/+/35095?usp=email )
Change subject: early-IA: use the correct TRX
......................................................................
Patch Set 3:
(1 comment)
File src/common/rsl.c:
https://gerrit.osmocom.org/c/osmo-bts/+/35095/comment/3000b245_8e7cd8de
PS3, Line 1403: /* hopping is disabled. */
> What if hopping is enabled? Should we return an rsl_tx_error_report()
Ack
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/35095?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: Id9a930e5c67122812b229dc27ea2bfe246b67611
Gerrit-Change-Number: 35095
Gerrit-PatchSet: 3
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: daniel <dwillmann(a)sysmocom.de>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Attention: daniel <dwillmann(a)sysmocom.de>
Gerrit-Comment-Date: Tue, 28 Nov 2023 13:08:13 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: daniel <dwillmann(a)sysmocom.de>
Gerrit-MessageType: comment
Attention is currently required from: daniel, pespin.
osmith has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ggsn/+/35149?usp=email )
Change subject: Bump version: 1.10.2.1-a625 → 1.11.0
......................................................................
Patch Set 1:
(1 comment)
File gtp/Makefile.am:
https://gerrit.osmocom.org/c/osmo-ggsn/+/35149/comment/f88b7008_cfe8fda8
PS1, Line 5: LIBVERSION=9:1:3
> this is wrong, a new API gtp_cause_successful() has been added. It should be
LIBVERSION=10:0:4.
it's a static inline function, so 9:1:3 is fine as discussed in chat
> And hence not a patch release, but a minor release.
done
--
To view, visit https://gerrit.osmocom.org/c/osmo-ggsn/+/35149?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ggsn
Gerrit-Branch: master
Gerrit-Change-Id: I1f116e1cded135f231f22ebc9b817aebf3736fc2
Gerrit-Change-Number: 35149
Gerrit-PatchSet: 1
Gerrit-Owner: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: daniel <dwillmann(a)sysmocom.de>
Gerrit-Comment-Date: Tue, 28 Nov 2023 12:40:25 +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: daniel, osmith, pespin.
Hello Jenkins Builder, daniel, pespin,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-ggsn/+/35149?usp=email
to look at the new patch set (#2).
The following approvals got outdated and were removed:
Code-Review-1 by pespin, Verified+1 by Jenkins Builder
Change subject: Bump version: 1.10.2.1-a625 → 1.11.0
......................................................................
Bump version: 1.10.2.1-a625 → 1.11.0
Change-Id: I1f116e1cded135f231f22ebc9b817aebf3736fc2
---
M debian/changelog
M gtp/Makefile.am
2 files changed, 17 insertions(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-ggsn refs/changes/49/35149/2
--
To view, visit https://gerrit.osmocom.org/c/osmo-ggsn/+/35149?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ggsn
Gerrit-Branch: master
Gerrit-Change-Id: I1f116e1cded135f231f22ebc9b817aebf3736fc2
Gerrit-Change-Number: 35149
Gerrit-PatchSet: 2
Gerrit-Owner: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: daniel <dwillmann(a)sysmocom.de>
Gerrit-MessageType: newpatchset