Attention is currently required from: fixeria.
pespin has posted comments on this change by fixeria. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/38206?usp=email )
Change subject: library: add generic Mutex API for parallel components
......................................................................
Patch Set 2:
(1 comment)
File library/Mutex.ttcn:
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/38206/comment/a508af9d_a43d… :
PS2, Line 19: port MutexPT LOCK; /* port for LOCKing the mutex */
> The point is that multiple parallel components are sending `MUTEX_LOCK` requests and they're getting […]
Ah ok so you are using the port queue based on the the sender to decide/filter whether to operate/wait for the lock operator.
I'd have done that with 1 port and then maintaining a queue of vc_conn lock operations internally in the component, but fine your way too then.
Waiting for feedback to Harald's comment to provide +1.
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/38206?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: Id71f43bd5fc78d4bb4417d6c01fcff8112ea6032
Gerrit-Change-Number: 38206
Gerrit-PatchSet: 2
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: laforge <laforge(a)osmocom.org>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Comment-Date: Fri, 20 Sep 2024 13:37:26 +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>
Attention is currently required from: pespin.
fixeria has posted comments on this change by fixeria. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/38206?usp=email )
Change subject: library: add generic Mutex API for parallel components
......................................................................
Patch Set 2:
(1 comment)
File library/Mutex.ttcn:
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/38206/comment/d67cec94_c356… :
PS2, Line 19: port MutexPT LOCK; /* port for LOCKing the mutex */
> What's the point in having 2 ports instead of 1? Sounds way more complex than it should by doing so, […]
The point is that multiple parallel components are sending `MUTEX_LOCK` requests and they're getting queued. When the `f_MutexDisp_main()` handles one of those requests, it expects to receive `MUTEX_UNLOCK`, which (if we were to use a single port) will end up somewhere in the queue (behind `MUTEX_LOCK` requests from other components). TTCN-3 does not allow to look up inside the queue, so I had to use two ports: one for locking and the other for unlocking.
Below is a mscgen graph visually explaining the problem,
which can be rendered by https://mscgen.js.org/ for instance:
```
msc{
ConnHdlrA,
ConnHdlrB,
ConnHdlrC,
MutexDisp;
ConnHdlrB => MutexDisp [label="MUTEX_LOCK.req"];
ConnHdlrA => MutexDisp [label="MUTEX_LOCK.req"];
ConnHdlrC => MutexDisp [label="MUTEX_LOCK.req"];
ConnHdlrA box MutexDisp [label="ConnHdlrB was quicker, so it gets the mutex first"];
ConnHdlrB <= MutexDisp [label="MUTEX_LOCK.cnf"];
...;
ConnHdlrB => MutexDisp [label="MUTEX_UNLOCK.ind"];
ConnHdlrA box MutexDisp [label="MutexDisp still has two MUTEX_LOCK.req in the queue and the MUTEX_UNLOCK.ind is not on top"];
}
```
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/38206?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: Id71f43bd5fc78d4bb4417d6c01fcff8112ea6032
Gerrit-Change-Number: 38206
Gerrit-PatchSet: 2
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: laforge <laforge(a)osmocom.org>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Fri, 20 Sep 2024 12:58:02 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: pespin <pespin(a)sysmocom.de>
osmith has submitted this change. ( https://gerrit.osmocom.org/c/osmo-ci/+/38226?usp=email )
Change subject: jobs/gerrit: use deps cache from docker image
......................................................................
jobs/gerrit: use deps cache from docker image
Instead of freshly cloning the dependencies each time, use the cache we
already have in the debian-bookworm-titan docker image. This way only
the dependency repositories that were changed in the patch submitted to
gerrit need to be updated.
Related: OS#6572
Change-Id: I895011edf49f612d0df7f4759dc374bab60c32a6
---
M jobs/gerrit-verifications.yml
1 file changed, 6 insertions(+), 0 deletions(-)
Approvals:
pespin: Looks good to me, but someone else must approve
Jenkins Builder: Verified
laforge: Looks good to me, approved
diff --git a/jobs/gerrit-verifications.yml b/jobs/gerrit-verifications.yml
index 58752cd..f98eac9 100644
--- a/jobs/gerrit-verifications.yml
+++ b/jobs/gerrit-verifications.yml
@@ -444,6 +444,12 @@
{timeout_cmd} \
sh -e -x -c '
useradd --uid=1000 build
+ chown -R build:build /osmo-ttcn3-hacks/deps
+ for i in /osmo-ttcn3-hacks/deps/*/; do
+ if ! [ -e /build/deps/"$(basename "$i")" ]; then
+ ln -s "$i" /build/deps/
+ fi
+ done
su build -c "make -C /build compile"
'
pipeline_binpkgs: ""
--
To view, visit https://gerrit.osmocom.org/c/osmo-ci/+/38226?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: merged
Gerrit-Project: osmo-ci
Gerrit-Branch: master
Gerrit-Change-Id: I895011edf49f612d0df7f4759dc374bab60c32a6
Gerrit-Change-Number: 38226
Gerrit-PatchSet: 1
Gerrit-Owner: osmith <osmith(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>
osmith has submitted this change. ( https://gerrit.osmocom.org/c/osmo-ci/+/38225?usp=email )
Change subject: jobs/gerrit: osmo-ttcn3-hacks: tweak make lines
......................................................................
jobs/gerrit: osmo-ttcn3-hacks: tweak make lines
* The "make clean" is not needed, as the osmo-ttcn3-hacks.git repository
is a fresh clone of code that was submitted to gerrit.
* The "make deps" is not needed, as "make compile" depends on the deps
target.
* Combine the cd and make lines.
* Remove ; at the end of lines, as it is not needed
* Switch " and ', so variables can be used with less escaping in future
patches in this block.
Change-Id: Iac179bfb26478ecab51f47e469b4be7b0f9a5a94
---
M jobs/gerrit-verifications.yml
1 file changed, 4 insertions(+), 7 deletions(-)
Approvals:
Jenkins Builder: Verified
pespin: Looks good to me, but someone else must approve
laforge: Looks good to me, approved
diff --git a/jobs/gerrit-verifications.yml b/jobs/gerrit-verifications.yml
index a21e42a..58752cd 100644
--- a/jobs/gerrit-verifications.yml
+++ b/jobs/gerrit-verifications.yml
@@ -442,13 +442,10 @@
-v "$PWD:/build" \
"registry.osmocom.org/osmocom-build/debian-bookworm-titan" \
{timeout_cmd} \
- sh -e -x -c "
- useradd --uid=1000 build;
- cd /build;
- su build -c 'make deps';
- su build -c 'make clean';
- su build -c 'make compile';
- "
+ sh -e -x -c '
+ useradd --uid=1000 build
+ su build -c "make -C /build compile"
+ '
pipeline_binpkgs: ""
- dahdi-tools:
--
To view, visit https://gerrit.osmocom.org/c/osmo-ci/+/38225?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: merged
Gerrit-Project: osmo-ci
Gerrit-Branch: master
Gerrit-Change-Id: Iac179bfb26478ecab51f47e469b4be7b0f9a5a94
Gerrit-Change-Number: 38225
Gerrit-PatchSet: 1
Gerrit-Owner: osmith <osmith(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>
osmith has submitted this change. ( https://gerrit.osmocom.org/c/osmo-ci/+/38228?usp=email )
Change subject: jobs/gerrit: osmo-ttcn3-hacks: drop chown
......................................................................
jobs/gerrit: osmo-ttcn3-hacks: drop chown
The chown takes some time, do it once when building the docker image
instead of doing it for every gerrit verification run.
Depends: docker-playground Id51885d0929f4966b1a4a181b3453c06d7956b53
Change-Id: I4bea336097e8180b19b3afa41c0b984d93c21bd1
---
M jobs/gerrit-verifications.yml
1 file changed, 0 insertions(+), 1 deletion(-)
Approvals:
Jenkins Builder: Verified
pespin: Looks good to me, but someone else must approve
laforge: Looks good to me, approved
diff --git a/jobs/gerrit-verifications.yml b/jobs/gerrit-verifications.yml
index f98eac9..73d66ca 100644
--- a/jobs/gerrit-verifications.yml
+++ b/jobs/gerrit-verifications.yml
@@ -444,7 +444,6 @@
{timeout_cmd} \
sh -e -x -c '
useradd --uid=1000 build
- chown -R build:build /osmo-ttcn3-hacks/deps
for i in /osmo-ttcn3-hacks/deps/*/; do
if ! [ -e /build/deps/"$(basename "$i")" ]; then
ln -s "$i" /build/deps/
--
To view, visit https://gerrit.osmocom.org/c/osmo-ci/+/38228?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: merged
Gerrit-Project: osmo-ci
Gerrit-Branch: master
Gerrit-Change-Id: I4bea336097e8180b19b3afa41c0b984d93c21bd1
Gerrit-Change-Number: 38228
Gerrit-PatchSet: 1
Gerrit-Owner: osmith <osmith(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>
osmith has submitted this change. ( https://gerrit.osmocom.org/c/docker-playground/+/38227?usp=email )
Change subject: debian-bookworm-titan: chown 1000 for deps
......................................................................
debian-bookworm-titan: chown 1000 for deps
Change the ownership of the "deps" directory to a not yet created user
with the ID 1000. This user gets created when the gerrit verifications
use the container for building. Changing the ownership of the deps
directory allows using them and updating them as needed (e.g. if the
patch in review changes a commit of one of the deps).
Chowning here once results in faster jobs, compared to if we did it
every time the gerrit verifications job ran.
Creating the user here would result in conflicts with other containers
depending on debian-bookworm-titan that may create their own user with
the same UID.
Related: osmo-ci I4bea336097e8180b19b3afa41c0b984d93c21bd1
Change-Id: Id51885d0929f4966b1a4a181b3453c06d7956b53
---
M debian-bookworm-titan/Dockerfile
1 file changed, 3 insertions(+), 1 deletion(-)
Approvals:
Jenkins Builder: Verified
osmith: Looks good to me, approved
laforge: Looks good to me, but someone else must approve
diff --git a/debian-bookworm-titan/Dockerfile b/debian-bookworm-titan/Dockerfile
index c4af2ef..0ce6c43 100644
--- a/debian-bookworm-titan/Dockerfile
+++ b/debian-bookworm-titan/Dockerfile
@@ -71,6 +71,7 @@
apt-get clean
# Clone osmo-ttcn3-hacks and deps, invalidate cache if deps change (OS#5017)
+# chown: gerrit-verifications will potentially update the deps as UID=1000
RUN git clone https://gerrit.osmocom.org/osmo-ttcn3-hacks && \
make -j8 -C /osmo-ttcn3-hacks deps
ADD https://gerrit.osmocom.org/plugins/gitiles/osmo-ttcn3-hacks/+/refs/heads/ma… /tmp/deps-Makefile
@@ -78,4 +79,5 @@
cd /osmo-ttcn3-hacks && \
git pull && \
make -j8 deps; \
- fi
+ fi && \
+ chown -R 1000:1000 /osmo-ttcn3-hacks/deps
--
To view, visit https://gerrit.osmocom.org/c/docker-playground/+/38227?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: merged
Gerrit-Project: docker-playground
Gerrit-Branch: master
Gerrit-Change-Id: Id51885d0929f4966b1a4a181b3453c06d7956b53
Gerrit-Change-Number: 38227
Gerrit-PatchSet: 2
Gerrit-Owner: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Attention is currently required from: pespin.
osmith has posted comments on this change by osmith. ( https://gerrit.osmocom.org/c/docker-playground/+/38227?usp=email )
Change subject: debian-bookworm-titan: chown 1000 for deps
......................................................................
Patch Set 2: Code-Review+2
(1 comment)
Patchset:
PS2:
feedback is addressed and this is trivial, giving +2 so I can merge all related patches now
--
To view, visit https://gerrit.osmocom.org/c/docker-playground/+/38227?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: docker-playground
Gerrit-Branch: master
Gerrit-Change-Id: Id51885d0929f4966b1a4a181b3453c06d7956b53
Gerrit-Change-Number: 38227
Gerrit-PatchSet: 2
Gerrit-Owner: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Fri, 20 Sep 2024 12:50:52 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
Attention is currently required from: fixeria.
laforge has posted comments on this change by fixeria. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/38206?usp=email )
Change subject: library: add generic Mutex API for parallel components
......................................................................
Patch Set 2:
(1 comment)
Commit Message:
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/38206/comment/556ed9cc_d6df… :
PS2, Line 14: and there
: is no way for the PFCPEM to correlate which session belongs to which eNB.
If we cannot find a good PFCP IE to include such identity information in, 3GPP TS 29.244 Section 5.9 states we may add vendor-specific IEs anywhere and any implementation not understanding them shall just ignore them:
> Vendor-specific IE may be sent with any PFCP message. Vendor-specific IE may be added directly to a PFCP message, or by embedding it into a grouped IE.
> In a network with Vendor specific enhancements, unrecognized vendor specific IEs shall be handled as unknown optional IEs.
In terms of 3GPP standard IEs, we could include the IMSI of the UE in the "User ID" IE (29.244 Section 8.2.101) for the PFCP session establish request. This would at least allow us to support "one concurrent session establishment per UE". That should be fine for your current use case? With multiple different bearers (like establishing a video call with different voice + video bearers) that may not be sufficient itself...
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/38206?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: Id71f43bd5fc78d4bb4417d6c01fcff8112ea6032
Gerrit-Change-Number: 38206
Gerrit-PatchSet: 2
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: laforge <laforge(a)osmocom.org>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Comment-Date: Fri, 20 Sep 2024 12:31:40 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: laforge <laforge(a)osmocom.org>