neels has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-hnbgw/+/36540?usp=email )
Change subject: nft_kpi: retrieve counters in a separate thread
......................................................................
Patch Set 3:
(1 comment)
Patchset:
PS3:
Quoting from the "Depends" libosmocore patch discussion:
> For this one, my aim was to say that osmo-trx is doing it that way, not that you > should do it that way.
oh, misunderstanding.
> If you plan on keep the mutex locked while you gather counters from nft
in this patch:
the stats lock is held while updating the rate_ctrs only, locking only *after* the nft command has run and returned the complete response in a char buffer.
I expect running through that buffer to be very fast, so i lock stats reporting once all around the buffer parsing. If it turns out wrong, we can unlock and re-lock the mutex after every N items (or every N ms?), which would remove "all" blocking of stats. (It is important to keep counters for each HNB in sync, but not important to keep HNBs in sync with each other.)
I expect buffer parsing to already be imperceptibly fast; this is O(n) of pure pointer arithmetic, no syscalls.
> most probably blocking the main thread also for the same amount of time.
(I've written this before in different places, but allow me to re-post, to make sure it is mentioned here:)
Blocking of the main thread can happen with this patch, at the times when the main thread wants to run a quick nft command.
This happens only at HNBAP HNB Register and Deregister, i.e. when a hNodeB shows up or disappears; to set up / remove nft counter rules. Here the main thread may have to wait for the second thread querying the counters from nftables. There is an ascii art of it in this patch.
To circumvent this blocking, an inter-thread queue can be introduced to tell the second thread to carry out the nft commands the main thread wants to run.
This is not implemented in this patch on purpose, because:
The HNB Register / Deregister are rare events, and reading counters doesn't really take all that long, either. It may well turn out to be overkill to even have a thread for nftables in the first place. It is slow for large numbers of items, but counters for under 1000 HNB from nft should be fast.
--
To view, visit https://gerrit.osmocom.org/c/osmo-hnbgw/+/36540?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: I9dc54e6bc94c553f45adfa71ae8ad70be4afbc8f
Gerrit-Change-Number: 36540
Gerrit-PatchSet: 3
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Comment-Date: Fri, 12 Apr 2024 23:53:48 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
Attention is currently required from: fixeria, laforge, pespin.
neels has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/36460?usp=email )
Change subject: msc: expand TC_lu_tmsi_noauth_notmsi
......................................................................
Patch Set 2: Code-Review+2
(2 comments)
Patchset:
PS2:
combine votes
File msc/MSC_Tests.ttcn:
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/36460/comment/1f82b37e_a446…
PS1, Line 7324: f_cl3_or_initial_ue(valueof(ts_PAG_RESP(ts_MI_IMSI_LV(pars.imsi))));
> This can turn out pretty substantial effort: when working on ttcn3, I do not want to adjust API ever […]
i agree with the point, but would like to keep it separate from this patch, so resolving in this context here
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/36460?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: I5e596597add7d585efd27c850067b8d7ba34ecc0
Gerrit-Change-Number: 36460
Gerrit-PatchSet: 2
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(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-Comment-Date: Fri, 12 Apr 2024 23:15:31 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
Comment-In-Reply-To: neels <nhofmeyr(a)sysmocom.de>
Comment-In-Reply-To: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: comment
Attention is currently required from: fixeria.
neels has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/36456?usp=email )
Change subject: msc: rework f_expect_paging(): handle mismatch and timeout
......................................................................
Patch Set 2: Code-Review+1
(3 comments)
Commit Message:
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/36456/comment/f63f9f89_71e0…
PS2, Line 13:
you could add
Tweaked-by: fixeria
File msc/BSC_ConnectionHandler.ttcn:
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/36456/comment/27c67875_d1c3…
PS2, Line 1362: [g_pars.ran_is_geran] BSSAP.receive(tr_BSSMAP_Paging(g_pars.imsi, tmsi));
(again the weird mix of g_pars.imsi vs not-g_pars tmsi)
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/36456/comment/c8f8d22d_c3cb…
PS2, Line 1366: function f_expect_paging(template OCT4 tmsi := *, float Tval := 4.0)
it would be very elegant if we could have the mechanism that {expects a message, but fails on a different one, and has a timeout} in a more general function, i.e. not specialized for paging in particluar. Then feed a paging PDU template to that.
Then we can use this generalized function all over MSC_Tests.
We have such in HNBGW_Tests.ttcn, like f_rua_expect() f_bssap_expect()
Would that work here?
AFAICT we need a separate function for each port-type x PDU-type combination, but not for each message type?
my motivation is for a more generalized approach so that the discussions we had in CR don't come up so much...
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/36456?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: I30273e3882e348a2ded88b7b96a5ec1473a56913
Gerrit-Change-Number: 36456
Gerrit-PatchSet: 2
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Comment-Date: Fri, 12 Apr 2024 23:08:44 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
Attention is currently required from: fixeria, laforge.
neels has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/36455?usp=email )
Change subject: msc: f_expect_paging(): fix by_tmsi arg
......................................................................
Patch Set 2: Code-Review+2
(1 comment)
File msc/BSC_ConnectionHandler.ttcn:
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/36455/comment/2d5f24d7_0be1…
PS2, Line 1360: function f_expect_paging(template OCT4 tmsi := *)
oh, i expected that it would need to adjust lots of callers...
Not blocking; But this patch breaks one paradigm of this function: see below how we use g_pars.imsi.
Now this is not using g_pars.tmsi as would be logical, but the caller is passing a TMSI explicitly.
This is the reason why i all the time and still and always will think a boolean is semantically the right choice. To fix it, you'd also have to make the imsi an argument that is passed in and not taken from g_pars.
But since someone spent time to submit the patch and it's good enough, I'll not make their life harder with my fringe opinion on the far corner of a ttcn3 test's helper function's type of an arg, and will accept the patch despite not matching my opinion.
I'd like to see more of that, please, very large wink.
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/36455?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: I9434745b7faeb738caafed8080b9f7b1a6a8079a
Gerrit-Change-Number: 36455
Gerrit-PatchSet: 2
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-CC: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-CC: laforge <laforge(a)osmocom.org>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Comment-Date: Fri, 12 Apr 2024 22:29:48 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/36551?usp=email )
Change subject: README.md: Remove 'multi-slot ul tbf' line from 'Current Limitations'
......................................................................
README.md: Remove 'multi-slot ul tbf' line from 'Current Limitations'
This feature was implemented in commit
ed2afa3bed4c1b7a2bffae6be7df881de4f976e7, ~3 years ago.
Change-Id: I9abe54f280ab4e62c0c5220d010575b912c8c141
---
M README.md
1 file changed, 12 insertions(+), 1 deletion(-)
Approvals:
Jenkins Builder: Verified
fixeria: Looks good to me, approved
diff --git a/README.md b/README.md
index 3d11a78..8467c50 100644
--- a/README.md
+++ b/README.md
@@ -78,7 +78,6 @@
* No fixed allocation support (was removed from 3GPP Rel >= 5 anyway)
* No extended dynamic allocation support
* No unacknowledged mode operation
- * Only single slot assignment on uplink direction
* No half-duplex class support (only semi-duplex)
* No TA loop
* No power loop
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/36551?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: I9abe54f280ab4e62c0c5220d010575b912c8c141
Gerrit-Change-Number: 36551
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged