Attention is currently required from: daniel.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/libosmocore/+/33536 )
Change subject: osmo_io: Fix write_enable handling in iofd_txqueue
......................................................................
Patch Set 1: Code-Review+1
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/33536
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: I75827491bb9fe0c6d1e4a195ac434f049b1a6ba6
Gerrit-Change-Number: 33536
Gerrit-PatchSet: 1
Gerrit-Owner: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: daniel <dwillmann(a)sysmocom.de>
Gerrit-Comment-Date: Fri, 30 Jun 2023 12:22:20 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
Attention is currently required from: daniel.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/libosmocore/+/33496 )
Change subject: osmo_io: Make the test more deterministic between backends
......................................................................
Patch Set 4: Code-Review+1
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/33496
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: Ibdd26a4aeadfbd6c5039c8a31cc120d3c98be727
Gerrit-Change-Number: 33496
Gerrit-PatchSet: 4
Gerrit-Owner: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: daniel <dwillmann(a)sysmocom.de>
Gerrit-Comment-Date: Fri, 30 Jun 2023 12:22:07 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
Attention is currently required from: laforge, pespin.
daniel has posted comments on this change. ( https://gerrit.osmocom.org/c/libosmocore/+/33497 )
Change subject: osmo_io: Add osmo_iofd_notify_connected()
......................................................................
Patch Set 4:
(2 comments)
Patchset:
PS3:
> commitlog cold indicate the removal of the *{write,read}_{enable,disable} exported symbols.
It's a separate commit now
PS3:
> how are unconnected sockets write_enabled() now?
It already happens through the txqueue which handles en-/disabling write if it's empty/non-empty.
I'm also enabling it now on register() if the txqueue already contains an entry.
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/33497
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: Ieed10bc94c8aad821c0a8f7764db0e05c054c1e3
Gerrit-Change-Number: 33497
Gerrit-PatchSet: 4
Gerrit-Owner: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Fri, 30 Jun 2023 11:59:32 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: laforge <laforge(a)osmocom.org>
Comment-In-Reply-To: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: comment
Attention is currently required from: daniel.
Hello Jenkins Builder, fixeria,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/libosmocore/+/33496
to look at the new patch set (#4).
Change subject: osmo_io: Make the test more deterministic between backends
......................................................................
osmo_io: Make the test more deterministic between backends
Change-Id: Ibdd26a4aeadfbd6c5039c8a31cc120d3c98be727
---
M tests/osmo_io/osmo_io_test.c
M tests/osmo_io/osmo_io_test.ok
2 files changed, 27 insertions(+), 14 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/96/33496/4
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/33496
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: Ibdd26a4aeadfbd6c5039c8a31cc120d3c98be727
Gerrit-Change-Number: 33496
Gerrit-PatchSet: 4
Gerrit-Owner: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Attention: daniel <dwillmann(a)sysmocom.de>
Gerrit-MessageType: newpatchset
Attention is currently required from: laforge, pespin.
Hello Jenkins Builder, laforge, pespin,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/libosmocore/+/33497
to look at the new patch set (#4).
Change subject: osmo_io: Add osmo_iofd_notify_connected()
......................................................................
osmo_io: Add osmo_iofd_notify_connected()
Don't call write_enable() in osmo_iofd_register(). This was used to
detect whether a socket is connected or not, but would always be
enabled, even on unconnected sockets. Instead make this behaviour
explicit by calling osmo_iofd_notify_connected().
Change-Id: Ieed10bc94c8aad821c0a8f7764db0e05c054c1e3
---
M include/osmocom/core/osmo_io.h
M src/core/libosmocore.map
M src/core/osmo_io.c
M tests/osmo_io/osmo_io_test.c
M tests/osmo_io/osmo_io_test.ok
5 files changed, 32 insertions(+), 5 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/97/33497/4
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/33497
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: Ieed10bc94c8aad821c0a8f7764db0e05c054c1e3
Gerrit-Change-Number: 33497
Gerrit-PatchSet: 4
Gerrit-Owner: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: newpatchset
daniel has uploaded this change for review. ( https://gerrit.osmocom.org/c/libosmocore/+/33536 )
Change subject: osmo_io: Fix write_enable handling in iofd_txqueue
......................................................................
osmo_io: Fix write_enable handling in iofd_txqueue
Enable write on first message in both iofd_txqueue_enqueue{,_front}(),
but only if the iofd is not closed.
Change-Id: I75827491bb9fe0c6d1e4a195ac434f049b1a6ba6
---
M src/core/osmo_io.c
1 file changed, 16 insertions(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/36/33536/1
diff --git a/src/core/osmo_io.c b/src/core/osmo_io.c
index 253dfa2..4cef142 100644
--- a/src/core/osmo_io.c
+++ b/src/core/osmo_io.c
@@ -171,7 +171,7 @@
llist_add_tail(&msghdr->list, &iofd->tx_queue.msg_queue);
iofd->tx_queue.current_length++;
- if (iofd->tx_queue.current_length == 1)
+ if (iofd->tx_queue.current_length == 1 && !IOFD_FLAG_ISSET(iofd, IOFD_FLAG_CLOSED))
osmo_iofd_ops.write_enable(iofd);
return 0;
@@ -188,6 +188,9 @@
{
llist_add(&msghdr->list, &iofd->tx_queue.msg_queue);
iofd->tx_queue.current_length++;
+
+ if (iofd->tx_queue.current_length == 1 && !IOFD_FLAG_ISSET(iofd, IOFD_FLAG_CLOSED))
+ osmo_iofd_ops.write_enable(iofd);
}
/*! Dequeue a message from the front
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/33536
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: I75827491bb9fe0c6d1e4a195ac434f049b1a6ba6
Gerrit-Change-Number: 33536
Gerrit-PatchSet: 1
Gerrit-Owner: daniel <dwillmann(a)sysmocom.de>
Gerrit-MessageType: newchange
neels has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-mgw/+/33534 )
Change subject: mgcp: fix "L: a:" header parsing: heed ";" separator
......................................................................
mgcp: fix "L: a:" header parsing: heed ";" separator
In the "L: a:" header, read the first codec name only up to the ";"
separator, and ignore the rest.
According to RFC-2705, the "L: a:" header may include multiple codecs
like "GSM-EFR;GSM" in:
L: p:20, a:GSM-EFR;GSM, nt:IN
osmo-mgw can handle only a single codec here. Since recently, osmo-msc
is our first client that may actually send more than one codec. This
uncovered a bug that leads to failing voice calls:
* osmo-mgw parses the entire list "GSM-EFR;GSM" as a single codec name,
* puts that into the ptmap without scrutiny,
* and even sends it back in the OK response, in the *SDP* part, as a
single "GSM-EFR;GSM" codec entry.
We do not care very much about the "a:" codec list, because we always
establish codecs via SDP later. So all we need to fix this is: parse the
first codec done correctly, and ignore the rest.
Related: OS#6081
Change-Id: I0342e85b32ed89f3a1fdb6131c3c8ded8f47a455
---
M src/libosmo-mgcp/mgcp_protocol.c
1 file changed, 33 insertions(+), 2 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-mgw refs/changes/34/33534/1
diff --git a/src/libosmo-mgcp/mgcp_protocol.c b/src/libosmo-mgcp/mgcp_protocol.c
index 80e0f8a..978af42 100644
--- a/src/libosmo-mgcp/mgcp_protocol.c
+++ b/src/libosmo-mgcp/mgcp_protocol.c
@@ -672,8 +672,8 @@
case 'a':
/* FIXME: LCO also supports the negotiation of more than one codec.
* (e.g. a:PCMU;G726-32) But this implementation only supports a single
- * codec only. */
- if (sscanf(lco_id + 1, ":%16[^,]", codec) == 1) {
+ * codec only. Ignoring all but the first codec. */
+ if (sscanf(lco_id + 1, ":%16[^,;]", codec) == 1) {
talloc_free(lco->codec);
/* MGCP header is case insensive, and we'll need
codec in uppercase when using it later: */
--
To view, visit https://gerrit.osmocom.org/c/osmo-mgw/+/33534
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-mgw
Gerrit-Branch: master
Gerrit-Change-Id: I0342e85b32ed89f3a1fdb6131c3c8ded8f47a455
Gerrit-Change-Number: 33534
Gerrit-PatchSet: 1
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-MessageType: newchange
Attention is currently required from: jolly.
neels has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-msc/+/33498 )
Change subject: ASCI: Use a unique call-id for RTP streams
......................................................................
Patch Set 3: Code-Review+1
(4 comments)
This change is ready for review.
Commit Message:
https://gerrit.osmocom.org/c/osmo-msc/+/33498/comment/36d32225_1d982bfd
PS3, Line 9: The call-id may be used by the MGW to identify which connections belong
( "The MGCP protocol features the 'C' (call-id) to identify which connections belong..." )
https://gerrit.osmocom.org/c/osmo-msc/+/33498/comment/0d52ca22_340d5025
PS3, Line 13: The use of MNCC callref as call-id is replaced by a unique call-id. The
(" So far we sent the MNCC callref as call-id. Instead, add a separate unique call_id number space. Assign a unique call-id to each transaction...")
https://gerrit.osmocom.org/c/osmo-msc/+/33498/comment/259eccc8_26ee3bd8
PS3, Line 16: indipendant
("independent")
https://gerrit.osmocom.org/c/osmo-msc/+/33498/comment/6e7cff4c_b569f184
PS3, Line 20: Related: OS#4854
can we also add
Related: OS#3294
thx
--
To view, visit https://gerrit.osmocom.org/c/osmo-msc/+/33498
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-msc
Gerrit-Branch: master
Gerrit-Change-Id: I36c5f159fa0b54fb576ff8bd279928b895554793
Gerrit-Change-Number: 33498
Gerrit-PatchSet: 3
Gerrit-Owner: jolly <andreas(a)eversberg.eu>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Attention: jolly <andreas(a)eversberg.eu>
Gerrit-Comment-Date: Thu, 29 Jun 2023 23:05:45 +0000
Gerrit-HasComments: Yes
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. […]
double entry, sorry.
--
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 17:44:33 +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: osmith, laforge, fixeria.
Hello osmith, Jenkins Builder, laforge, pespin,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmocom-bb/+/33414
to look at the new patch set (#4).
Change subject: modem: properly handle Dedicated mode or TBF IE
......................................................................
modem: properly handle Dedicated mode or TBF IE
We need to distinguish between Uplink and Downlink TBF assignment in
grr_rx_imm_ass(), because matching the Request Reference IE makes
sense only for the Uplink TBF assignment.
Uplink TBFs are requested by the UEs by sending RACH, while Downlink
TBFs are assigned by the network itself. The Request Reference IE
is only valid for Uplink assignments and shall be ignored in messages
assigning Downlink TBFs.
Change-Id: Idb9b3203147be3b42256c0bcab3ecdabcf2d2fa9
Related: OS#5500
---
M src/host/layer23/src/modem/grr.c
1 file changed, 54 insertions(+), 13 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/14/33414/4
--
To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/33414
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: Idb9b3203147be3b42256c0bcab3ecdabcf2d2fa9
Gerrit-Change-Number: 33414
Gerrit-PatchSet: 4
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
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: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: newpatchset
Attention is currently required from: osmith, laforge, fixeria.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmocom-bb/+/33414 )
Change subject: modem: properly handle Dedicated mode or TBF IE
......................................................................
Patch Set 3:
(1 comment)
File src/host/layer23/src/modem/grr.c:
https://gerrit.osmocom.org/c/osmocom-bb/+/33414/comment/2a51cdda_7d87f8e0
PS3, Line 278: if ((dm_or_tbf & (1 << 1)) == 0) {
> I don't see how this improves readability, sorry. […]
"check Request Reference IE if this is an Uplink TBF assignment." That's a better and clearer comment than the one you have in the current patch.
--
To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/33414
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: Idb9b3203147be3b42256c0bcab3ecdabcf2d2fa9
Gerrit-Change-Number: 33414
Gerrit-PatchSet: 3
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
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: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 29 Jun 2023 16:40:52 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: fixeria <vyanitskiy(a)sysmocom.de>
Comment-In-Reply-To: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: comment
Attention is currently required from: osmith, laforge, pespin.
fixeria has posted comments on this change. ( https://gerrit.osmocom.org/c/osmocom-bb/+/33414 )
Change subject: modem: properly handle Dedicated mode or TBF IE
......................................................................
Patch Set 3:
(1 comment)
File src/host/layer23/src/modem/grr.c:
https://gerrit.osmocom.org/c/osmocom-bb/+/33414/comment/49b2475a_4458d86b
PS3, Line 278: if ((dm_or_tbf & (1 << 1)) == 0) {
> You can use "bool is_ul_ass = (dm_or_tbf & (1 << 1))", or rather in line 277 simply write "Check UL […]
I don't see how this improves readability, sorry. A boolean flag would improve a bit, but it's redundant to add a bool for one-time use in the if statement next line. The comment suggestions... there is already a comment stating that we check Request Reference IE if this is an Uplink TBF assignment.
--
To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/33414
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: Idb9b3203147be3b42256c0bcab3ecdabcf2d2fa9
Gerrit-Change-Number: 33414
Gerrit-PatchSet: 3
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
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-Comment-Date: Thu, 29 Jun 2023 16:39:10 +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: osmith, laforge, pespin.
fixeria has posted comments on this change. ( https://gerrit.osmocom.org/c/osmocom-bb/+/33414 )
Change subject: modem: properly handle Dedicated mode or TBF IE
......................................................................
Patch Set 3:
(1 comment)
File src/host/layer23/src/modem/grr.c:
https://gerrit.osmocom.org/c/osmocom-bb/+/33414/comment/1ce75163_7c817ce1
PS3, Line 278: if ((dm_or_tbf & (1 << 1)) == 0) {
> it may be clear to you, I see references to UL TBF, assignment, request reference IE and then some b […]
Ok, what exactly am I supposed to clarify? How do I make it cleaner?
Copy-paste text/tables from 3GPP TS 44.018, section 10.5.2.25b in a comment?
--
To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/33414
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: Idb9b3203147be3b42256c0bcab3ecdabcf2d2fa9
Gerrit-Change-Number: 33414
Gerrit-PatchSet: 3
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
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-Comment-Date: Thu, 29 Jun 2023 15:59:20 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: pespin <pespin(a)sysmocom.de>
Comment-In-Reply-To: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: comment
Attention is currently required from: osmith, laforge, fixeria.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmocom-bb/+/33414 )
Change subject: modem: properly handle Dedicated mode or TBF IE
......................................................................
Patch Set 3:
(1 comment)
File src/host/layer23/src/modem/grr.c:
https://gerrit.osmocom.org/c/osmocom-bb/+/33414/comment/2b495544_e0faa6c1
PS3, Line 278: if ((dm_or_tbf & (1 << 1)) == 0) {
> The comment clearly states "Uplink TBF", so the if-condition is obviously checking if it's an Uplink […]
it may be clear to you, I see references to UL TBF, assignment, request reference IE and then some bitmask check, so not clear at all for the rest :)
--
To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/33414
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: Idb9b3203147be3b42256c0bcab3ecdabcf2d2fa9
Gerrit-Change-Number: 33414
Gerrit-PatchSet: 3
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
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: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 29 Jun 2023 15:47:21 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: fixeria <vyanitskiy(a)sysmocom.de>
Comment-In-Reply-To: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: comment
Attention is currently required from: laforge, pespin.
fixeria has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-bts/+/33533 )
Change subject: common/Makefile.am: comment out 'libbts_la_LDADD = probes.lo'
......................................................................
Patch Set 1:
(1 comment)
Patchset:
PS1:
> maybe ping whoever added that line? git blame/log.
It was Harald in `430954630`, adding him as a reviewer. I think it's fine to have this line commented out for now because we don't have any probes for `libbts`.
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/33533
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: I829c63988fd51b481cb9f13a81dfaf5e78beb1b8
Gerrit-Change-Number: 33533
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 29 Jun 2023 15:40:18 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: comment
fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bts/+/33533 )
Change subject: common/Makefile.am: comment out 'libbts_la_LDADD = probes.lo'
......................................................................
common/Makefile.am: comment out 'libbts_la_LDADD = probes.lo'
This line makes no sense and triggers the following warnings:
src/common/Makefile.am:83: warning: variable 'libbts_la_LDADD' is defined but no program or
src/common/Makefile.am:83: library has 'libbts_la' as canonical name (possible typo)
The problem is that there is no 'libbts.la' (libtool archive), but
'libbts.a' (normal archive file). There is no way to attach
dependencies to *.a archives, it's only possible for *.la archives.
Either each of the BTS variants needs to add this 'probes.lo' to
their LDADD list manually, or the 'libbts.a' needs to be converted
to a libtool archive 'libbts.la'. For comment out this line.
Change-Id: I829c63988fd51b481cb9f13a81dfaf5e78beb1b8
---
M src/common/Makefile.am
1 file changed, 24 insertions(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/33/33533/1
diff --git a/src/common/Makefile.am b/src/common/Makefile.am
index 32f644c..0da62bb 100644
--- a/src/common/Makefile.am
+++ b/src/common/Makefile.am
@@ -80,5 +80,6 @@
$(LIBTOOL) --mode=compile $(AM_V_lt) --tag=CC env CFLAGS="$(CFLAGS)" $(DTRACE) -C -G -s $< -o $@
BUILT_SOURCES = probes.h probes.lo
-libbts_la_LDADD = probes.lo
+# FIXME: libbts is not a libtool archive (*.la)
+# libbts_la_LIBADD = probes.lo
endif
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/33533
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: I829c63988fd51b481cb9f13a81dfaf5e78beb1b8
Gerrit-Change-Number: 33533
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: newchange
pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/33455 )
Change subject: tbf_dl_fsm: Ignore DL_ACKNACK_MISS events in WAIT_{RELEASE,REUSE_TFI} states
......................................................................
tbf_dl_fsm: Ignore DL_ACKNACK_MISS events in WAIT_{RELEASE,REUSE_TFI} states
If in those states, we already left the FINISHED step which means we
already received a FinalACk previously, hence it means we are missing
requested retransmissions of the last DL ACK/NACK due to fn-advance
(several DL blocks in transit before receiving UL response).
Change-Id: Ib0f23a9cc3c614fe428b682e01502930cd2e478f
---
M src/tbf_dl_fsm.c
1 file changed, 26 insertions(+), 0 deletions(-)
Approvals:
osmith: Looks good to me, approved
Jenkins Builder: Verified
diff --git a/src/tbf_dl_fsm.c b/src/tbf_dl_fsm.c
index 557fb7a..d604f6f 100644
--- a/src/tbf_dl_fsm.c
+++ b/src/tbf_dl_fsm.c
@@ -286,6 +286,11 @@
case TBF_EV_FINAL_ACK_RECVD:
/* ignore, duplicate ACK, we already know about since we left ST_FINISHED */
break;
+ case TBF_EV_DL_ACKNACK_MISS:
+ /* ignore, miss for retransmitted ACK, but a previous one was
+ * already ACKED since we left ST_FINISHED. This happens due to
+ * fn-advance scheduling several DL blocks in advance. */
+ break;
default:
OSMO_ASSERT(0);
}
@@ -320,6 +325,11 @@
case TBF_EV_FINAL_ACK_RECVD:
/* ignore, duplicate ACK, we already know about since we left ST_FINISHED */
break;
+ case TBF_EV_DL_ACKNACK_MISS:
+ /* ignore, miss for retransmitted ACK, but a previous one was
+ * already ACKED since we left ST_FINISHED. This happens due to
+ * fn-advance scheduling several DL blocks in advance. */
+ break;
default:
OSMO_ASSERT(0);
}
@@ -450,6 +460,7 @@
},
[TBF_ST_WAIT_RELEASE] = {
.in_event_mask =
+ X(TBF_EV_DL_ACKNACK_MISS) |
X(TBF_EV_FINAL_ACK_RECVD) |
X(TBF_EV_MAX_N3105),
.out_state_mask =
@@ -461,6 +472,7 @@
},
[TBF_ST_WAIT_REUSE_TFI] = {
.in_event_mask =
+ X(TBF_EV_DL_ACKNACK_MISS) |
X(TBF_EV_FINAL_ACK_RECVD),
.out_state_mask =
X(TBF_ST_RELEASING),
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/33455
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: Ib0f23a9cc3c614fe428b682e01502930cd2e478f
Gerrit-Change-Number: 33455
Gerrit-PatchSet: 4
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
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-MessageType: merged
pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/33454 )
Change subject: Avoid re-assigning DL TBF over PACCH upon duplicate FinalACKs received
......................................................................
Avoid re-assigning DL TBF over PACCH upon duplicate FinalACKs received
Due to the fn-advance feature, we schedule DL blocks in advance, which
may make several retransmitted DL ACK/NACK [RRBP] be in flight, and
hence several of them may be answered by the MS.
When the first one is received, we attempt to initiate a PktDlAss over
PACCH if new DL data was received meanwhile from SGSN.
However, if we receive duplicates of that final PKT CTRL ACK, we don't
want to re-initiate it again, since it is already ongoing.
Related: OS#5471
Change-Id: Idc204aba61ad98f75853dcd46200f5dcc4139203
---
M src/tbf_dl.cpp
M src/tbf_dl_fsm.c
2 files changed, 29 insertions(+), 8 deletions(-)
Approvals:
fixeria: Looks good to me, but someone else must approve
laforge: Looks good to me, but someone else must approve
Jenkins Builder: Verified
pespin: Looks good to me, approved
diff --git a/src/tbf_dl.cpp b/src/tbf_dl.cpp
index 40442c3..f4439d3 100644
--- a/src/tbf_dl.cpp
+++ b/src/tbf_dl.cpp
@@ -1053,9 +1053,7 @@
int gprs_rlcmac_dl_tbf::rcvd_dl_final_ack()
{
uint16_t received;
- int rc = 0;
-
- osmo_fsm_inst_dispatch(this->state_fi, TBF_EV_FINAL_ACK_RECVD, NULL);
+ int rc;
/* range V(A)..V(S)-1 */
received = m_window.count_unacked();
@@ -1064,10 +1062,7 @@
m_tx_counter = 0;
m_window.reset();
- /* check for LLC PDU in the LLC Queue */
- if (llc_queue_size(llc_queue()) > 0)
- /* we have more data so we will re-use this tbf */
- rc = ms_new_dl_tbf_assigned_on_pacch(ms(), dl_tbf_as_tbf(this));
+ rc = osmo_fsm_inst_dispatch(this->state_fi, TBF_EV_FINAL_ACK_RECVD, NULL);
return rc;
}
diff --git a/src/tbf_dl_fsm.c b/src/tbf_dl_fsm.c
index ba7fc5a..557fb7a 100644
--- a/src/tbf_dl_fsm.c
+++ b/src/tbf_dl_fsm.c
@@ -260,8 +260,10 @@
static void st_wait_release_on_enter(struct osmo_fsm_inst *fi, uint32_t prev_state)
{
struct tbf_dl_fsm_ctx *ctx = (struct tbf_dl_fsm_ctx *)fi->priv;
+ struct GprsMs *ms = tbf_ms(ctx->tbf);
- /* T3192 is running on the MS and has also been armed by this FSM now.
+ /* This state was entered because FinalACK was received; now T3192 is
+ * running on the MS and has also been armed by this FSM.
* During that time, it is possible to reach the MS over PACCH to assign
* new DL TBF.
* Upon T3192 expiration, FSM will transition to TBF_ST_WAIT_REUSE_TFI
@@ -270,6 +272,12 @@
*/
mod_ass_type(ctx, GPRS_RLCMAC_FLAG_CCCH, false);
+
+ /* check for LLC PDU in the LLC Queue */
+ if (llc_queue_size(ms_llc_queue(ms)) > 0) {
+ /* we have more data so we will re-use this tbf */
+ ms_new_dl_tbf_assigned_on_pacch(ms, ctx->tbf);
+ }
}
static void st_wait_release(struct osmo_fsm_inst *fi, uint32_t event, void *data)
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/33454
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: Idc204aba61ad98f75853dcd46200f5dcc4139203
Gerrit-Change-Number: 33454
Gerrit-PatchSet: 4
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-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged
pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/33415 )
Change subject: tbf_ul: Avoid processing rx UL blocks for UL TBFs in RELEASING state
......................................................................
tbf_ul: Avoid processing rx UL blocks for UL TBFs in RELEASING state
Change-Id: I1da9b665b9ed83a644ea798008d456d6298b7460
---
M src/tbf_ul.cpp
1 file changed, 22 insertions(+), 0 deletions(-)
Approvals:
Jenkins Builder: Verified
osmith: Looks good to me, approved
diff --git a/src/tbf_ul.cpp b/src/tbf_ul.cpp
index 9a139ba..5ae0d49 100644
--- a/src/tbf_ul.cpp
+++ b/src/tbf_ul.cpp
@@ -258,6 +258,19 @@
"V(R)=%d)\n", rlc->tfi, this->m_window.v_q(),
this->m_window.v_r());
+ if (tbf_state(this) == TBF_ST_RELEASING) {
+ /* This may happen if MAX_N3101 is hit previously, moving the UL
+ * TBF to RELEASING state. Since we have an fn-advance where DL
+ * blocks are scheduled in advance, we may have requested USF for
+ * this UL TBF before triggering and hence we are now receiving a
+ * UL block from it. If this is the case, simply ignore the block.
+ */
+ LOGPTBFUL(this, LOGL_INFO,
+ "UL DATA TFI=%d received (V(Q)=%d .. V(R)=%d) while in RELEASING state, discarding\n",
+ rlc->tfi, this->m_window.v_q(), this->m_window.v_r());
+ return 0;
+ }
+
/* process RSSI */
gprs_rlcmac_rssi(this, rssi);
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/33415
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: I1da9b665b9ed83a644ea798008d456d6298b7460
Gerrit-Change-Number: 33415
Gerrit-PatchSet: 5
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-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged
pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/33524 )
Change subject: ms_need_dl_tbf(): Fix state checks and document function
......................................................................
ms_need_dl_tbf(): Fix state checks and document function
A new state TBF_ST_WAIT_REUSE_TFI was added lately in dl_tbf_fsm, which
allows differentiating the time where the MS is listening on PACCH
after having sent last DL ACK/NACK, and time where it should already be
in idle mode.
In the former, the ms_need_dl_tbf() should return false since the MS is
still ongoing in packet-active mode (and new data incoming from SGSN
will trigger new DL TBF assignment over PACCH as needed), while in the
later we want to start a new PCH assignment.
Fixes: 40a297f3b0c8e1670d46a4974750dd3335bc7885
Change-Id: I96f311480d036859511c6ba825ccd36bdc71190b
---
M src/gprs_ms.h
1 file changed, 41 insertions(+), 3 deletions(-)
Approvals:
Jenkins Builder: Verified
osmith: Looks good to me, approved
diff --git a/src/gprs_ms.h b/src/gprs_ms.h
index ef1cc4e..276733c 100644
--- a/src/gprs_ms.h
+++ b/src/gprs_ms.h
@@ -157,11 +157,30 @@
return &ms->llc_queue;
}
+/* Function used in code where a ul_tbf related event occurs and hence its state
+ * changes, which in turn may change the entire MS state (eg becoming reachable
+ * over PCH or PACCH) and the caller may want to know if it is a good time to
+ * assign a DL TBF (and whether we have DL data to send) */
static inline bool ms_need_dl_tbf(struct GprsMs *ms)
{
- if (ms_dl_tbf(ms) != NULL &&
- tbf_state((const struct gprs_rlcmac_tbf *)ms_dl_tbf(ms)) != TBF_ST_WAIT_RELEASE)
- return false;
+ struct gprs_rlcmac_dl_tbf *dl_tbf = ms_dl_tbf(ms);
+ if (dl_tbf) {
+ switch (tbf_state(dl_tbf_as_tbf(dl_tbf))) {
+ case TBF_ST_NEW:
+ case TBF_ST_ASSIGN:
+ case TBF_ST_FLOW:
+ case TBF_ST_FINISHED:
+ case TBF_ST_WAIT_RELEASE:
+ return false; /* TBF in use, hence no need for new DL TBF */
+ case TBF_ST_WAIT_REUSE_TFI:
+ case TBF_ST_RELEASING:
+ /* TBF cannot be used to send further data, a new one
+ * may be needed, check below */
+ break;
+ default:
+ OSMO_ASSERT(0);
+ }
+ }
return llc_queue_size(ms_llc_queue(ms)) > 0;
}
--
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: 2
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-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged
pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/33416 )
(
2 is the latest approved patch-set.
No files were changed between the latest approved patch-set and the submitted one.
)Change subject: tbf_ul_fsm: Delay moving ul_tbf to FLOW
......................................................................
tbf_ul_fsm: Delay moving ul_tbf to FLOW
Otherwise the scheduler selects the UL TBF for USF during that time, and
of course no one has that USF assigned yet, so no answer and that ends
up triggering MAX_N3101 on the UL TBF.
This is specially important when PCU is connected to the BSC, since the
amount of time for the ImmAss to be scheduled on the BTS and reach the
MS can be bigger.
Change-Id: I48babd70ca44f11110240cbcfbab43d0e3a0fb59
---
M src/tbf_ul_fsm.c
M tests/tbf/TbfTest.cpp
M tests/tbf/TbfTest.err
M tests/types/TypesTest.err
4 files changed, 98 insertions(+), 30 deletions(-)
Approvals:
laforge: Looks good to me, but someone else must approve
fixeria: Looks good to me, approved
Jenkins Builder: Verified
diff --git a/src/tbf_ul_fsm.c b/src/tbf_ul_fsm.c
index a26d161..49849ba 100644
--- a/src/tbf_ul_fsm.c
+++ b/src/tbf_ul_fsm.c
@@ -89,7 +89,7 @@
switch (event) {
case TBF_EV_ASSIGN_ADD_CCCH:
mod_ass_type(ctx, GPRS_RLCMAC_FLAG_CCCH, true);
- tbf_ul_fsm_state_chg(fi, TBF_ST_FLOW);
+ tbf_ul_fsm_state_chg(fi, TBF_ST_ASSIGN);
ul_tbf_contention_resolution_start(ctx->ul_tbf);
break;
case TBF_EV_ASSIGN_ADD_PACCH:
@@ -126,6 +126,22 @@
"Starting timer T3168 [UL TBF Ass (PACCH)] with %u sec. %u microsec\n",
sec, micro);
osmo_timer_schedule(&fi->timer, sec, micro);
+ } else if (ctx->state_flags & (1 << GPRS_RLCMAC_FLAG_CCCH)) {
+ /* Wait a bit for the AGCH ImmAss[PktUlAss] sent BSC->BTS to
+ * arrive at the MS, and for the MS to jump and starting
+ * listening on USFs in the assigned PDCH.
+ * Ideally we would first wait for TBF_EV_ASSIGN_PCUIF_CNF to
+ * account for queueing time, but that's only sent for data on PCH
+ * so far, while ImmAss for UL TBF is sent on AGCH.
+ */
+ fi->T = -2002;
+ val = osmo_tdef_get(the_pcu->T_defs, fi->T, OSMO_TDEF_MS, -1);
+ sec = val / 1000;
+ micro = (val % 1000) * 1000;
+ LOGPTBFUL(ctx->ul_tbf, LOGL_DEBUG,
+ "Starting timer X2002 [assignment (AGCH)] with %u sec. %u microsec\n",
+ sec, micro);
+ osmo_timer_schedule(&fi->timer, sec, micro);
}
}
@@ -152,6 +168,10 @@
}
tbf_ul_fsm_state_chg(fi, TBF_ST_FLOW);
break;
+ case TBF_EV_ASSIGN_READY_CCCH:
+ /* change state to FLOW, so scheduler will start requesting USF */
+ tbf_ul_fsm_state_chg(fi, TBF_ST_FLOW);
+ break;
default:
OSMO_ASSERT(0);
}
@@ -259,6 +279,9 @@
{
struct tbf_ul_fsm_ctx *ctx = (struct tbf_ul_fsm_ctx *)fi->priv;
switch (fi->T) {
+ case -2002:
+ osmo_fsm_inst_dispatch(fi, TBF_EV_ASSIGN_READY_CCCH, NULL);
+ break;
case 3168:
LOGPTBFUL(ctx->ul_tbf, LOGL_NOTICE, "Releasing due to UL TBF PACCH assignment timeout\n");
/* fall-through */
@@ -286,7 +309,8 @@
.in_event_mask =
X(TBF_EV_ASSIGN_ADD_CCCH) |
X(TBF_EV_ASSIGN_ADD_PACCH) |
- X(TBF_EV_ASSIGN_ACK_PACCH),
+ X(TBF_EV_ASSIGN_ACK_PACCH) |
+ X(TBF_EV_ASSIGN_READY_CCCH),
.out_state_mask =
X(TBF_ST_FLOW) |
X(TBF_ST_FINISHED),
diff --git a/tests/tbf/TbfTest.cpp b/tests/tbf/TbfTest.cpp
index bf30891..0205f2b 100644
--- a/tests/tbf/TbfTest.cpp
+++ b/tests/tbf/TbfTest.cpp
@@ -650,10 +650,18 @@
tfi = bts_tfi_find_free(bts, GPRS_RLCMAC_UL_TBF, &pdch->trx->trx_no, -1);
+ /* We set X2002 timeout to 0 here to get immediate trigger through osmo_select_main() below */
+ OSMO_ASSERT(osmo_tdef_set(the_pcu->T_defs, -2002, 0, OSMO_TDEF_MS) == 0);
bts_handle_rach(bts, 0x03, *fn, qta);
ul_tbf = bts_ul_tbf_by_tfi(bts, tfi, pdch->trx->trx_no, pdch->ts_no);
OSMO_ASSERT(ul_tbf != NULL);
+ OSMO_ASSERT(ul_tbf->state_is(TBF_ST_ASSIGN));
+
+ /* ImmAss has been sent PCU=PCUIF=>BTS. This means UL TBF is in state
+ * ASSIGN with X2002 armed. It will move to FLOW once it expires. */
+ osmo_select_main(0);
+ OSMO_ASSERT(ul_tbf->state_is(TBF_ST_FLOW));
OSMO_ASSERT(ul_tbf->ta() == qta / 4);
diff --git a/tests/tbf/TbfTest.err b/tests/tbf/TbfTest.err
index 83bf6db..e582807 100644
--- a/tests/tbf/TbfTest.err
+++ b/tests/tbf/TbfTest.err
@@ -2271,11 +2271,15 @@
MS(TA-220:MSCLS-0-0:UL): + tbf: now used by 2 (bts_rcv_rach,tbf)
UL_TBF(UL:TFI-0-0-0:G){NEW}: Received Event ASSIGN_ADD_CCCH
TBF(UL:TFI-0-0-0:G){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0]
-UL_TBF(UL:TFI-0-0-0:G){NEW}: state_chg to FLOW
-TBF(UL:TFI-0-0-0:G){FLOW} Starting timer T3141 [Contention resolution (UL-TBF, CCCH)] with 10 sec. 0 microsec, cur_fn=2654167
+UL_TBF(UL:TFI-0-0-0:G){NEW}: state_chg to ASSIGN
+TBF(UL:TFI-0-0-0:G){ASSIGN} Starting timer X2002 [assignment (AGCH)] with 0 sec. 0 microsec
+TBF(UL:TFI-0-0-0:G){ASSIGN} Starting timer T3141 [Contention resolution (UL-TBF, CCCH)] with 10 sec. 0 microsec, cur_fn=2654167
MS(TA-220:MSCLS-0-0:UL): - bts_rcv_rach: now used by 1 (tbf)
Modifying MS object, TLLI = 0xffffffff, TA 220 -> 7
Tx Immediate Assignment on AGCH: TRX=0 (ARFCN 0) TS=7 TA=7 TSC=0 TFI=0 USF=0
+UL_TBF(UL:TFI-0-0-0:G){ASSIGN}: Timeout of X2002
+UL_TBF(UL:TFI-0-0-0:G){ASSIGN}: Received Event ASSIGN_READY_CCCH
+UL_TBF(UL:TFI-0-0-0:G){ASSIGN}: state_chg to FLOW
PDCH(bts=0,trx=0,ts=7) Got CS-1 RLC block: R=0, SI=0, TFI=0, CPS=0, RSB=0, rc=184
PDCH(bts=0,trx=0,ts=7) FN=2654167 Rx UL DATA from unexpected TBF(UL:TFI-0-0-0:G){FLOW}
TBF(UL:TFI-0-0-0:G){FLOW} UL DATA TFI=0 received (V(Q)=0 .. V(R)=0)
@@ -2337,11 +2341,15 @@
MS(TA-220:MSCLS-0-0:UL): + tbf: now used by 2 (bts_rcv_rach,tbf)
UL_TBF(UL:TFI-0-0-0:G){NEW}: Received Event ASSIGN_ADD_CCCH
TBF(UL:TFI-0-0-0:G){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0]
-UL_TBF(UL:TFI-0-0-0:G){NEW}: state_chg to FLOW
-TBF(UL:TFI-0-0-0:G){FLOW} Starting timer T3141 [Contention resolution (UL-TBF, CCCH)] with 10 sec. 0 microsec, cur_fn=2654167
+UL_TBF(UL:TFI-0-0-0:G){NEW}: state_chg to ASSIGN
+TBF(UL:TFI-0-0-0:G){ASSIGN} Starting timer X2002 [assignment (AGCH)] with 0 sec. 0 microsec
+TBF(UL:TFI-0-0-0:G){ASSIGN} Starting timer T3141 [Contention resolution (UL-TBF, CCCH)] with 10 sec. 0 microsec, cur_fn=2654167
MS(TA-220:MSCLS-0-0:UL): - bts_rcv_rach: now used by 1 (tbf)
Modifying MS object, TLLI = 0xffffffff, TA 220 -> 7
Tx Immediate Assignment on AGCH: TRX=0 (ARFCN 0) TS=7 TA=7 TSC=0 TFI=0 USF=0
+UL_TBF(UL:TFI-0-0-0:G){ASSIGN}: Timeout of X2002
+UL_TBF(UL:TFI-0-0-0:G){ASSIGN}: Received Event ASSIGN_READY_CCCH
+UL_TBF(UL:TFI-0-0-0:G){ASSIGN}: state_chg to FLOW
PDCH(bts=0,trx=0,ts=7) Got CS-1 RLC block: R=0, SI=0, TFI=0, CPS=0, RSB=0, rc=184
PDCH(bts=0,trx=0,ts=7) FN=2654167 Rx UL DATA from unexpected TBF(UL:TFI-0-0-0:G){FLOW}
TBF(UL:TFI-0-0-0:G){FLOW} UL DATA TFI=0 received (V(Q)=0 .. V(R)=0)
@@ -3225,11 +3233,15 @@
MS(TA-220:MSCLS-0-0:UL): + tbf: now used by 2 (bts_rcv_rach,tbf)
UL_TBF(UL:TFI-0-0-0:G){NEW}: Received Event ASSIGN_ADD_CCCH
TBF(UL:TFI-0-0-0:G){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0]
-UL_TBF(UL:TFI-0-0-0:G){NEW}: state_chg to FLOW
-TBF(UL:TFI-0-0-0:G){FLOW} Starting timer T3141 [Contention resolution (UL-TBF, CCCH)] with 10 sec. 0 microsec, cur_fn=2654283
+UL_TBF(UL:TFI-0-0-0:G){NEW}: state_chg to ASSIGN
+TBF(UL:TFI-0-0-0:G){ASSIGN} Starting timer X2002 [assignment (AGCH)] with 0 sec. 0 microsec
+TBF(UL:TFI-0-0-0:G){ASSIGN} Starting timer T3141 [Contention resolution (UL-TBF, CCCH)] with 10 sec. 0 microsec, cur_fn=2654283
MS(TA-220:MSCLS-0-0:UL): - bts_rcv_rach: now used by 1 (tbf)
Modifying MS object, TLLI = 0xffffffff, TA 220 -> 7
Tx Immediate Assignment on AGCH: TRX=0 (ARFCN 0) TS=7 TA=7 TSC=0 TFI=0 USF=0
+UL_TBF(UL:TFI-0-0-0:G){ASSIGN}: Timeout of X2002
+UL_TBF(UL:TFI-0-0-0:G){ASSIGN}: Received Event ASSIGN_READY_CCCH
+UL_TBF(UL:TFI-0-0-0:G){ASSIGN}: state_chg to FLOW
PDCH(bts=0,trx=0,ts=7) Got CS-1 RLC block: R=0, SI=0, TFI=0, CPS=0, RSB=0, rc=184
PDCH(bts=0,trx=0,ts=7) FN=2654275 Rx UL DATA from unexpected TBF(UL:TFI-0-0-0:G){FLOW}
TBF(UL:TFI-0-0-0:G){FLOW} UL DATA TFI=0 received (V(Q)=0 .. V(R)=0)
@@ -9317,8 +9329,9 @@
MS(TA-220:MSCLS-0-0:UL): + tbf: now used by 2 (bts_rcv_rach,tbf)
UL_TBF(UL:TFI-0-0-0:G){NEW}: Received Event ASSIGN_ADD_CCCH
TBF(UL:TFI-0-0-0:G){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0]
-UL_TBF(UL:TFI-0-0-0:G){NEW}: state_chg to FLOW
-TBF(UL:TFI-0-0-0:G){FLOW} Starting timer T3141 [Contention resolution (UL-TBF, CCCH)] with 10 sec. 0 microsec, cur_fn=2654167
+UL_TBF(UL:TFI-0-0-0:G){NEW}: state_chg to ASSIGN
+TBF(UL:TFI-0-0-0:G){ASSIGN} Starting timer X2002 [assignment (AGCH)] with 0 sec. 200000 microsec
+TBF(UL:TFI-0-0-0:G){ASSIGN} Starting timer T3141 [Contention resolution (UL-TBF, CCCH)] with 10 sec. 0 microsec, cur_fn=2654167
MS(TA-220:MSCLS-0-0:UL): - bts_rcv_rach: now used by 1 (tbf)
Modifying MS object, TLLI = 0xffffffff, TA 220 -> 7
Tx Immediate Assignment on AGCH: TRX=0 (ARFCN 0) TS=7 TA=7 TSC=0 TFI=0 USF=0
@@ -9348,8 +9361,9 @@
MS(TA-220:MSCLS-0-0:UL): + tbf: now used by 2 (bts_rcv_rach,tbf)
UL_TBF(UL:TFI-0-0-1:G){NEW}: Received Event ASSIGN_ADD_CCCH
TBF(UL:TFI-0-0-1:G){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0]
-UL_TBF(UL:TFI-0-0-1:G){NEW}: state_chg to FLOW
-TBF(UL:TFI-0-0-1:G){FLOW} Starting timer T3141 [Contention resolution (UL-TBF, CCCH)] with 10 sec. 0 microsec, cur_fn=2654167
+UL_TBF(UL:TFI-0-0-1:G){NEW}: state_chg to ASSIGN
+TBF(UL:TFI-0-0-1:G){ASSIGN} Starting timer X2002 [assignment (AGCH)] with 0 sec. 200000 microsec
+TBF(UL:TFI-0-0-1:G){ASSIGN} Starting timer T3141 [Contention resolution (UL-TBF, CCCH)] with 10 sec. 0 microsec, cur_fn=2654167
MS(TA-220:MSCLS-0-0:UL): - bts_rcv_rach: now used by 1 (tbf)
Modifying MS object, TLLI = 0xffffffff, TA 220 -> 7
Tx Immediate Assignment on AGCH: TRX=0 (ARFCN 0) TS=7 TA=7 TSC=0 TFI=1 USF=1
@@ -9379,8 +9393,9 @@
MS(TA-220:MSCLS-0-0:UL): + tbf: now used by 2 (bts_rcv_rach,tbf)
UL_TBF(UL:TFI-0-0-2:G){NEW}: Received Event ASSIGN_ADD_CCCH
TBF(UL:TFI-0-0-2:G){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0]
-UL_TBF(UL:TFI-0-0-2:G){NEW}: state_chg to FLOW
-TBF(UL:TFI-0-0-2:G){FLOW} Starting timer T3141 [Contention resolution (UL-TBF, CCCH)] with 10 sec. 0 microsec, cur_fn=2654167
+UL_TBF(UL:TFI-0-0-2:G){NEW}: state_chg to ASSIGN
+TBF(UL:TFI-0-0-2:G){ASSIGN} Starting timer X2002 [assignment (AGCH)] with 0 sec. 200000 microsec
+TBF(UL:TFI-0-0-2:G){ASSIGN} Starting timer T3141 [Contention resolution (UL-TBF, CCCH)] with 10 sec. 0 microsec, cur_fn=2654167
MS(TA-220:MSCLS-0-0:UL): - bts_rcv_rach: now used by 1 (tbf)
Modifying MS object, TLLI = 0xffffffff, TA 220 -> 7
Tx Immediate Assignment on AGCH: TRX=0 (ARFCN 0) TS=7 TA=7 TSC=0 TFI=2 USF=2
@@ -9410,8 +9425,9 @@
MS(TA-220:MSCLS-0-0:UL): + tbf: now used by 2 (bts_rcv_rach,tbf)
UL_TBF(UL:TFI-0-0-3:G){NEW}: Received Event ASSIGN_ADD_CCCH
TBF(UL:TFI-0-0-3:G){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0]
-UL_TBF(UL:TFI-0-0-3:G){NEW}: state_chg to FLOW
-TBF(UL:TFI-0-0-3:G){FLOW} Starting timer T3141 [Contention resolution (UL-TBF, CCCH)] with 10 sec. 0 microsec, cur_fn=2654167
+UL_TBF(UL:TFI-0-0-3:G){NEW}: state_chg to ASSIGN
+TBF(UL:TFI-0-0-3:G){ASSIGN} Starting timer X2002 [assignment (AGCH)] with 0 sec. 200000 microsec
+TBF(UL:TFI-0-0-3:G){ASSIGN} Starting timer T3141 [Contention resolution (UL-TBF, CCCH)] with 10 sec. 0 microsec, cur_fn=2654167
MS(TA-220:MSCLS-0-0:UL): - bts_rcv_rach: now used by 1 (tbf)
Modifying MS object, TLLI = 0xffffffff, TA 220 -> 7
Tx Immediate Assignment on AGCH: TRX=0 (ARFCN 0) TS=7 TA=7 TSC=0 TFI=3 USF=3
@@ -9441,8 +9457,9 @@
MS(TA-220:MSCLS-0-0:UL): + tbf: now used by 2 (bts_rcv_rach,tbf)
UL_TBF(UL:TFI-0-0-4:G){NEW}: Received Event ASSIGN_ADD_CCCH
TBF(UL:TFI-0-0-4:G){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0]
-UL_TBF(UL:TFI-0-0-4:G){NEW}: state_chg to FLOW
-TBF(UL:TFI-0-0-4:G){FLOW} Starting timer T3141 [Contention resolution (UL-TBF, CCCH)] with 10 sec. 0 microsec, cur_fn=2654167
+UL_TBF(UL:TFI-0-0-4:G){NEW}: state_chg to ASSIGN
+TBF(UL:TFI-0-0-4:G){ASSIGN} Starting timer X2002 [assignment (AGCH)] with 0 sec. 200000 microsec
+TBF(UL:TFI-0-0-4:G){ASSIGN} Starting timer T3141 [Contention resolution (UL-TBF, CCCH)] with 10 sec. 0 microsec, cur_fn=2654167
MS(TA-220:MSCLS-0-0:UL): - bts_rcv_rach: now used by 1 (tbf)
Modifying MS object, TLLI = 0xffffffff, TA 220 -> 7
Tx Immediate Assignment on AGCH: TRX=0 (ARFCN 0) TS=7 TA=7 TSC=0 TFI=4 USF=4
@@ -9472,8 +9489,9 @@
MS(TA-220:MSCLS-0-0:UL): + tbf: now used by 2 (bts_rcv_rach,tbf)
UL_TBF(UL:TFI-0-0-5:G){NEW}: Received Event ASSIGN_ADD_CCCH
TBF(UL:TFI-0-0-5:G){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0]
-UL_TBF(UL:TFI-0-0-5:G){NEW}: state_chg to FLOW
-TBF(UL:TFI-0-0-5:G){FLOW} Starting timer T3141 [Contention resolution (UL-TBF, CCCH)] with 10 sec. 0 microsec, cur_fn=2654167
+UL_TBF(UL:TFI-0-0-5:G){NEW}: state_chg to ASSIGN
+TBF(UL:TFI-0-0-5:G){ASSIGN} Starting timer X2002 [assignment (AGCH)] with 0 sec. 200000 microsec
+TBF(UL:TFI-0-0-5:G){ASSIGN} Starting timer T3141 [Contention resolution (UL-TBF, CCCH)] with 10 sec. 0 microsec, cur_fn=2654167
MS(TA-220:MSCLS-0-0:UL): - bts_rcv_rach: now used by 1 (tbf)
Modifying MS object, TLLI = 0xffffffff, TA 220 -> 7
Tx Immediate Assignment on AGCH: TRX=0 (ARFCN 0) TS=7 TA=7 TSC=0 TFI=5 USF=5
@@ -9503,8 +9521,9 @@
MS(TA-220:MSCLS-0-0:UL): + tbf: now used by 2 (bts_rcv_rach,tbf)
UL_TBF(UL:TFI-0-0-6:G){NEW}: Received Event ASSIGN_ADD_CCCH
TBF(UL:TFI-0-0-6:G){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0]
-UL_TBF(UL:TFI-0-0-6:G){NEW}: state_chg to FLOW
-TBF(UL:TFI-0-0-6:G){FLOW} Starting timer T3141 [Contention resolution (UL-TBF, CCCH)] with 10 sec. 0 microsec, cur_fn=2654167
+UL_TBF(UL:TFI-0-0-6:G){NEW}: state_chg to ASSIGN
+TBF(UL:TFI-0-0-6:G){ASSIGN} Starting timer X2002 [assignment (AGCH)] with 0 sec. 200000 microsec
+TBF(UL:TFI-0-0-6:G){ASSIGN} Starting timer T3141 [Contention resolution (UL-TBF, CCCH)] with 10 sec. 0 microsec, cur_fn=2654167
MS(TA-220:MSCLS-0-0:UL): - bts_rcv_rach: now used by 1 (tbf)
Modifying MS object, TLLI = 0xffffffff, TA 220 -> 7
Tx Immediate Assignment on AGCH: TRX=0 (ARFCN 0) TS=7 TA=7 TSC=0 TFI=6 USF=6
@@ -9527,25 +9546,25 @@
MS(TA-220:MSCLS-0-0) Destroying MS object
Tx Immediate Assignment Reject on AGCH
MS(TA-7:MSCLS-0-0:UL) Destroying MS object
-MS(TA-7:MSCLS-0-0:UL) Detaching TBF: TBF(UL:TFI-0-0-6:G){FLOW}
+MS(TA-7:MSCLS-0-0:UL) Detaching TBF: TBF(UL:TFI-0-0-6:G){ASSIGN}
MS(TA-7:MSCLS-0-0): - tbf: now used by 0 (-)
MS(TA-7:MSCLS-0-0:UL) Destroying MS object
-MS(TA-7:MSCLS-0-0:UL) Detaching TBF: TBF(UL:TFI-0-0-5:G){FLOW}
+MS(TA-7:MSCLS-0-0:UL) Detaching TBF: TBF(UL:TFI-0-0-5:G){ASSIGN}
MS(TA-7:MSCLS-0-0): - tbf: now used by 0 (-)
MS(TA-7:MSCLS-0-0:UL) Destroying MS object
-MS(TA-7:MSCLS-0-0:UL) Detaching TBF: TBF(UL:TFI-0-0-4:G){FLOW}
+MS(TA-7:MSCLS-0-0:UL) Detaching TBF: TBF(UL:TFI-0-0-4:G){ASSIGN}
MS(TA-7:MSCLS-0-0): - tbf: now used by 0 (-)
MS(TA-7:MSCLS-0-0:UL) Destroying MS object
-MS(TA-7:MSCLS-0-0:UL) Detaching TBF: TBF(UL:TFI-0-0-3:G){FLOW}
+MS(TA-7:MSCLS-0-0:UL) Detaching TBF: TBF(UL:TFI-0-0-3:G){ASSIGN}
MS(TA-7:MSCLS-0-0): - tbf: now used by 0 (-)
MS(TA-7:MSCLS-0-0:UL) Destroying MS object
-MS(TA-7:MSCLS-0-0:UL) Detaching TBF: TBF(UL:TFI-0-0-2:G){FLOW}
+MS(TA-7:MSCLS-0-0:UL) Detaching TBF: TBF(UL:TFI-0-0-2:G){ASSIGN}
MS(TA-7:MSCLS-0-0): - tbf: now used by 0 (-)
MS(TA-7:MSCLS-0-0:UL) Destroying MS object
-MS(TA-7:MSCLS-0-0:UL) Detaching TBF: TBF(UL:TFI-0-0-1:G){FLOW}
+MS(TA-7:MSCLS-0-0:UL) Detaching TBF: TBF(UL:TFI-0-0-1:G){ASSIGN}
MS(TA-7:MSCLS-0-0): - tbf: now used by 0 (-)
MS(TA-7:MSCLS-0-0:UL) Destroying MS object
-MS(TA-7:MSCLS-0-0:UL) Detaching TBF: TBF(UL:TFI-0-0-0:G){FLOW}
+MS(TA-7:MSCLS-0-0:UL) Detaching TBF: TBF(UL:TFI-0-0-0:G){ASSIGN}
MS(TA-7:MSCLS-0-0): - tbf: now used by 0 (-)
=== end test_immediate_assign_rej_multi_block ===
=== start test_immediate_assign_rej_single_block ===
diff --git a/tests/types/TypesTest.err b/tests/types/TypesTest.err
index 4c20672..55453c9 100644
--- a/tests/types/TypesTest.err
+++ b/tests/types/TypesTest.err
@@ -41,7 +41,7 @@
TBF(UL:TFI-0-0-0:E){NEW} setting EGPRS UL window size to 64, base(64) slots(1) ws_pdch(0)
UL_TBF(UL:TFI-0-0-0:E){NEW}: Received Event ASSIGN_ADD_CCCH
TBF(UL:TFI-0-0-0:E){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0]
-UL_TBF(UL:TFI-0-0-0:E){NEW}: state_chg to FLOW
+UL_TBF(UL:TFI-0-0-0:E){NEW}: state_chg to ASSIGN
************** Test with empty window
************** Test with 1 lost packet
************** Test with compressed window
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/33416
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: I48babd70ca44f11110240cbcfbab43d0e3a0fb59
Gerrit-Change-Number: 33416
Gerrit-PatchSet: 5
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-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged
pespin has submitted 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
......................................................................
Avoid using UL TBF in RELEASE state to assign DL TBF over PACCH
In RELEASE state, the UL TBF is considered not available anymore, and we
are simply waiting in order to be able to reuse the allocated resources
(just in case it was still around). Hence, a UL TBF in that state should
not be selectable to initiate a DL TBF assignment over PACCH.
Related: OS#5472
Change-Id: Ia11f7802779cfeea15a71bddad9f7e0c6c1afb11
---
M src/gprs_ms.c
1 file changed, 17 insertions(+), 1 deletion(-)
Approvals:
fixeria: Looks good to me, but someone else must approve
laforge: Looks good to me, but someone else must approve
Jenkins Builder: Verified
pespin: Looks good to me, approved
diff --git a/src/gprs_ms.c b/src/gprs_ms.c
index dda2f29..06d012c 100644
--- a/src/gprs_ms.c
+++ b/src/gprs_ms.c
@@ -1106,7 +1106,8 @@
if (!ul_tbf)
return true;
if (ul_tbf_contention_resolution_done(ul_tbf) &&
- !tbf_ul_ack_waiting_cnf_final_ack(ul_tbf))
+ !tbf_ul_ack_waiting_cnf_final_ack(ul_tbf) &&
+ tbf_state(ul_tbf_as_tbf(ul_tbf)) != TBF_ST_RELEASING)
return true;
return false;
--
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: 4
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-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged
pespin 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 4: Code-Review+2
--
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: 4
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-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 29 Jun 2023 14:32:02 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
Attention is currently required from: osmith, laforge, pespin.
fixeria has posted comments on this change. ( https://gerrit.osmocom.org/c/osmocom-bb/+/33414 )
Change subject: modem: properly handle Dedicated mode or TBF IE
......................................................................
Patch Set 3:
(1 comment)
File src/host/layer23/src/modem/grr.c:
https://gerrit.osmocom.org/c/osmocom-bb/+/33414/comment/0a026618_78d79b30
PS3, Line 278: if ((dm_or_tbf & (1 << 1)) == 0) {
> it is not clear by looking at this conditon + comment whether the if condition is UL TBF or DL TBF
The comment clearly states "Uplink TBF", so the if-condition is obviously checking if it's an Uplink TBF assignment. The 2nd LSB bit (indicating DL TBF) is expected to be unset.
--
To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/33414
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: Idb9b3203147be3b42256c0bcab3ecdabcf2d2fa9
Gerrit-Change-Number: 33414
Gerrit-PatchSet: 3
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
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-Comment-Date: Thu, 29 Jun 2023 13:42:34 +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, pespin.
osmith has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/33415 )
Change subject: tbf_ul: Avoid processing rx UL blocks for UL TBFs in RELEASING state
......................................................................
Patch Set 5: Code-Review+2
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/33415
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: I1da9b665b9ed83a644ea798008d456d6298b7460
Gerrit-Change-Number: 33415
Gerrit-PatchSet: 5
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-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 29 Jun 2023 12:56:57 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
Attention is currently required from: pespin.
Hello Jenkins Builder, laforge, fixeria,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-pcu/+/33416
to look at the new patch set (#5).
Change subject: tbf_ul_fsm: Delay moving ul_tbf to FLOW
......................................................................
tbf_ul_fsm: Delay moving ul_tbf to FLOW
Otherwise the scheduler selects the UL TBF for USF during that time, and
of course no one has that USF assigned yet, so no answer and that ends
up triggering MAX_N3101 on the UL TBF.
This is specially important when PCU is connected to the BSC, since the
amount of time for the ImmAss to be scheduled on the BTS and reach the
MS can be bigger.
Change-Id: I48babd70ca44f11110240cbcfbab43d0e3a0fb59
---
M src/tbf_ul_fsm.c
M tests/tbf/TbfTest.cpp
M tests/tbf/TbfTest.err
M tests/types/TypesTest.err
4 files changed, 98 insertions(+), 30 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/16/33416/5
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/33416
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: I48babd70ca44f11110240cbcfbab43d0e3a0fb59
Gerrit-Change-Number: 33416
Gerrit-PatchSet: 5
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-MessageType: newpatchset
Attention is currently required from: pespin, fixeria.
Hello osmith, Jenkins Builder, laforge, fixeria,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-pcu/+/33524
to look at the new patch set (#2).
Change subject: ms_need_dl_tbf(): Fix state checks and document function
......................................................................
ms_need_dl_tbf(): Fix state checks and document function
A new state TBF_ST_WAIT_REUSE_TFI was added lately in dl_tbf_fsm, which
allows differentiating the time where the MS is listening on PACCH
after having sent last DL ACK/NACK, and time where it should already be
in idle mode.
In the former, the ms_need_dl_tbf() should return false since the MS is
still ongoing in packet-active mode (and new data incoming from SGSN
will trigger new DL TBF assignment over PACCH as needed), while in the
later we want to start a new PCH assignment.
Fixes: 40a297f3b0c8e1670d46a4974750dd3335bc7885
Change-Id: I96f311480d036859511c6ba825ccd36bdc71190b
---
M src/gprs_ms.h
1 file changed, 41 insertions(+), 3 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/24/33524/2
--
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: 2
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-Reviewer: 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: laforge, pespin.
Hello osmith, Jenkins Builder, laforge, fixeria,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-pcu/+/33415
to look at the new patch set (#5).
Change subject: tbf_ul: Avoid processing rx UL blocks for UL TBFs in RELEASING state
......................................................................
tbf_ul: Avoid processing rx UL blocks for UL TBFs in RELEASING state
Change-Id: I1da9b665b9ed83a644ea798008d456d6298b7460
---
M src/tbf_ul.cpp
1 file changed, 22 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/15/33415/5
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/33415
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: I1da9b665b9ed83a644ea798008d456d6298b7460
Gerrit-Change-Number: 33415
Gerrit-PatchSet: 5
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-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: newpatchset
Attention is currently required from: pespin.
Hello Jenkins Builder, laforge, fixeria,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-pcu/+/33453
to look at the new patch set (#4).
Change subject: Avoid using UL TBF in RELEASE state to assign DL TBF over PACCH
......................................................................
Avoid using UL TBF in RELEASE state to assign DL TBF over PACCH
In RELEASE state, the UL TBF is considered not available anymore, and we
are simply waiting in order to be able to reuse the allocated resources
(just in case it was still around). Hence, a UL TBF in that state should
not be selectable to initiate a DL TBF assignment over PACCH.
Related: OS#5472
Change-Id: Ia11f7802779cfeea15a71bddad9f7e0c6c1afb11
---
M src/gprs_ms.c
1 file changed, 17 insertions(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/53/33453/4
--
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: 4
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-MessageType: newpatchset
Attention is currently required from: pespin.
Hello Jenkins Builder, laforge, fixeria,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-pcu/+/33454
to look at the new patch set (#4).
Change subject: Avoid re-assigning DL TBF over PACCH upon duplicate FinalACKs received
......................................................................
Avoid re-assigning DL TBF over PACCH upon duplicate FinalACKs received
Due to the fn-advance feature, we schedule DL blocks in advance, which
may make several retransmitted DL ACK/NACK [RRBP] be in flight, and
hence several of them may be answered by the MS.
When the first one is received, we attempt to initiate a PktDlAss over
PACCH if new DL data was received meanwhile from SGSN.
However, if we receive duplicates of that final PKT CTRL ACK, we don't
want to re-initiate it again, since it is already ongoing.
Related: OS#5471
Change-Id: Idc204aba61ad98f75853dcd46200f5dcc4139203
---
M src/tbf_dl.cpp
M src/tbf_dl_fsm.c
2 files changed, 29 insertions(+), 8 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/54/33454/4
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/33454
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: Idc204aba61ad98f75853dcd46200f5dcc4139203
Gerrit-Change-Number: 33454
Gerrit-PatchSet: 4
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-MessageType: newpatchset
Attention is currently required from: pespin.
Hello osmith, Jenkins Builder, fixeria,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-pcu/+/33455
to look at the new patch set (#4).
Change subject: tbf_dl_fsm: Ignore DL_ACKNACK_MISS events in WAIT_{RELEASE,REUSE_TFI} states
......................................................................
tbf_dl_fsm: Ignore DL_ACKNACK_MISS events in WAIT_{RELEASE,REUSE_TFI} states
If in those states, we already left the FINISHED step which means we
already received a FinalACk previously, hence it means we are missing
requested retransmissions of the last DL ACK/NACK due to fn-advance
(several DL blocks in transit before receiving UL response).
Change-Id: Ib0f23a9cc3c614fe428b682e01502930cd2e478f
---
M src/tbf_dl_fsm.c
1 file changed, 26 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/55/33455/4
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/33455
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: Ib0f23a9cc3c614fe428b682e01502930cd2e478f
Gerrit-Change-Number: 33455
Gerrit-PatchSet: 4
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: newpatchset