Attention is currently required from: laforge, pespin.
Hello Jenkins Builder, laforge,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/libosmocore/+/41891?usp=email
to look at the new patch set (#4).
The following approvals got outdated and were removed:
Verified+1 by Jenkins Builder
Change subject: logging: Make struct log_context and struct log_target private
......................................................................
logging: Make struct log_context and struct log_target private
Change-Id: Iecbd07995ccb465a44be0debcc97458b2b240a0e
---
M TODO-RELEASE
M include/osmocom/core/logging.h
M include/osmocom/core/logging_internal.h
M src/core/logging_gsmtap.c
M src/core/logging_syslog.c
M src/core/logging_systemd.c
M src/core/loggingrb.c
7 files changed, 114 insertions(+), 111 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/91/41891/4
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/41891?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newpatchset
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: Iecbd07995ccb465a44be0debcc97458b2b240a0e
Gerrit-Change-Number: 41891
Gerrit-PatchSet: 4
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-CC: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Attention is currently required from: laforge, pespin.
Hello Jenkins Builder, laforge,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/libosmocore/+/41894?usp=email
to look at the new patch set (#4).
The following approvals got outdated and were removed:
Code-Review+1 by laforge, Verified+1 by Jenkins Builder
Change subject: logging: Move log target file to its own file
......................................................................
logging: Move log target file to its own file
We already have all other log_target implementations each on its own
file. Move the file (and stderr, a specific case of file) into its own
file too, properly separating most file-specific logic from general
logging logic.
Change-Id: I8e32e31c75b66ff0649d92c2f469f8895689fbad
---
M include/osmocom/core/logging_internal.h
M src/core/Makefile.am
M src/core/logging.c
A src/core/logging_file.c
4 files changed, 381 insertions(+), 327 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/94/41894/4
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/41894?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newpatchset
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: I8e32e31c75b66ff0649d92c2f469f8895689fbad
Gerrit-Change-Number: 41894
Gerrit-PatchSet: 4
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/libosmocore/+/41927?usp=email )
Change subject: osmo_io.h: Avoid including sys/socket.h
......................................................................
osmo_io.h: Avoid including sys/socket.h
sys/socket.h may not always be available (eg. arm-none-eabi toolchain).
In the header file we only really need the forward declaration of struct
msghdr, so simply do that.
Change-Id: I5bcba8f72a2be6161d7782a3100d25a7025341d0
---
M include/osmocom/core/osmo_io.h
1 file changed, 4 insertions(+), 2 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/27/41927/1
diff --git a/include/osmocom/core/osmo_io.h b/include/osmocom/core/osmo_io.h
index c428191..525c23c 100644
--- a/include/osmocom/core/osmo_io.h
+++ b/include/osmocom/core/osmo_io.h
@@ -4,14 +4,16 @@
#pragma once
-#include <sys/socket.h>
-
#include <osmocom/core/linuxlist.h>
#include <osmocom/core/logging.h>
#include <osmocom/core/msgb.h>
#include <osmocom/core/socket.h>
#include <osmocom/core/utils.h>
+/* struct msghdr is defined in sys/socket.h but that header may not be available.
+ * We only really need a forward declaration here: */
+struct msghdr;
+
/*! \defgroup osmo_io Osmocom I/O interface
* @{
*
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/41927?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: I5bcba8f72a2be6161d7782a3100d25a7025341d0
Gerrit-Change-Number: 41927
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Attention is currently required from: fixeria, pespin.
Hoernchen has posted comments on this change by fixeria. ( https://gerrit.osmocom.org/c/osmo-ccid-firmware/+/41908?usp=email )
Change subject: contrib/jenkins.sh: clean up CFLAGS
......................................................................
Patch Set 4:
(1 comment)
File contrib/jenkins.sh:
https://gerrit.osmocom.org/c/osmo-ccid-firmware/+/41908/comment/b2f72f16_c8… :
PS4, Line 44: CFLAGS="$CFLAGS -Werror -Wno-error=deprecated -Wno-error=deprecated-declarations -Wno-error=cpp -Wno-error=format"
uh, should the lines here not at least be += ?
--
To view, visit https://gerrit.osmocom.org/c/osmo-ccid-firmware/+/41908?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: osmo-ccid-firmware
Gerrit-Branch: master
Gerrit-Change-Id: I4e78d6eb3c6c7b40312072fcf70f4b6d80042959
Gerrit-Change-Number: 41908
Gerrit-PatchSet: 4
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Hoernchen <ewild(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: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Comment-Date: Fri, 23 Jan 2026 12:55:11 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
pespin has submitted this change. ( https://gerrit.osmocom.org/c/libosmo-pfcp/+/41876?usp=email )
Change subject: Avoid marking rx PFCP Assoc Setup Req as duplicate
......................................................................
Avoid marking rx PFCP Assoc Setup Req as duplicate
Newer versions of PFCP spec state that "A PFCP
function shall ignore the Recovery Timestamp
received in the PFCP Association Setup Request message."
Hence, there's no real way to make sure an incoming PFCP ASSOC
SETUP REQ is a duplicate or is simply a new message from a new instance
of the peer node which "decided" to use the same SeqNr as the previous
one. In that case, it's better to be on the safe side and process it to
tear down state rather than ignoring it and keeping old state. If it
turns out to be a duplicate (rare scenario), we'd maybe tear down some
stuff which would have been set up a few seconds ago.
Change-Id: Ia461550e6791aaf00d18e0310bb4f17fdd2a3f65
---
M src/libosmo-pfcp/pfcp_endpoint.c
1 file changed, 24 insertions(+), 14 deletions(-)
Approvals:
Jenkins Builder: Verified
pespin: Looks good to me, approved
osmith: Looks good to me, but someone else must approve
laforge: Looks good to me, but someone else must approve
diff --git a/src/libosmo-pfcp/pfcp_endpoint.c b/src/libosmo-pfcp/pfcp_endpoint.c
index 7c1058f..64ea347 100644
--- a/src/libosmo-pfcp/pfcp_endpoint.c
+++ b/src/libosmo-pfcp/pfcp_endpoint.c
@@ -161,8 +161,13 @@
return osmo_tdef_get(ep->cfg.tdefs, OSMO_PFCP_TIMER_T1, OSMO_TDEF_MS, -1);
}
-static unsigned int ep_keep_resp(struct osmo_pfcp_endpoint *ep)
+static unsigned int ep_keep_resp(const struct osmo_pfcp_endpoint *ep, const struct osmo_pfcp_msg *m)
{
+ /* Don't check for PFCP Assoc Setup Req duplicates: There's no way to
+ * differentiate a duplicate from a new instance of a CP peer which chooses
+ * (willingly or randomly) after restart the same Sequence Number as in previous run. */
+ if (m->h.message_type == OSMO_PFCP_MSGT_ASSOC_SETUP_REQ)
+ return 0;
return osmo_tdef_get(ep->cfg.tdefs, OSMO_PFCP_TIMER_KEEP_RESP, OSMO_TDEF_MS, -1);
}
@@ -271,18 +276,23 @@
static int osmo_pfcp_endpoint_retrans_queue_add(struct osmo_pfcp_endpoint *endpoint, struct osmo_pfcp_msg *m)
{
struct osmo_pfcp_queue_entry *qe;
- unsigned int n1 = ep_n1(endpoint);
- unsigned int t1_ms = ep_t1(endpoint);
- unsigned int keep_resp_ms = ep_keep_resp(endpoint);
- unsigned int timeout = m->is_response ? keep_resp_ms : t1_ms;
+ unsigned int timeout_ms;
+ unsigned int n1 = 0;
- LOGP(DLPFCP, LOGL_DEBUG, "retransmit unanswered Requests %u x %ums; keep sent Responses for %ums\n",
- n1, t1_ms, keep_resp_ms);
- /* If there are no retransmissions or no timeout, it makes no sense to add to the queue. */
- if (!n1 || !t1_ms) {
- if (!m->is_response && m->ctx.resp_cb)
- m->ctx.resp_cb(m, NULL, "PFCP timeout is zero, cannot wait for a response");
- return 0;
+ if (m->is_response) {
+ timeout_ms = ep_keep_resp(endpoint, m);
+ OSMO_LOG_PFCP_MSG(m, LOGL_DEBUG, "keep sent Responses for %ums\n", timeout_ms);
+ } else {
+ timeout_ms = ep_t1(endpoint);
+ n1 = ep_n1(endpoint);
+
+ OSMO_LOG_PFCP_MSG(m, LOGL_DEBUG, "retransmit unanswered Requests %u x %ums\n", n1, timeout_ms);
+ /* If there are no retransmissions or no timeout, it makes no sense to add to the queue. */
+ if (!n1 || !timeout_ms) {
+ if (!m->is_response && m->ctx.resp_cb)
+ m->ctx.resp_cb(m, NULL, "PFCP timeout is zero, cannot wait for a response");
+ return 0;
+ }
}
qe = talloc(endpoint, struct osmo_pfcp_queue_entry);
@@ -290,7 +300,7 @@
*qe = (struct osmo_pfcp_queue_entry){
.ep = endpoint,
.m = m,
- .n1_remaining = m->is_response ? 0 : n1,
+ .n1_remaining = n1,
};
talloc_steal(qe, m);
@@ -308,7 +318,7 @@
}
talloc_set_destructor(qe, osmo_pfcp_queue_destructor);
- osmo_timer_schedule(&qe->t1, timeout/1000, (timeout % 1000) * 1000);
+ osmo_timer_schedule(&qe->t1, timeout_ms/1000, (timeout_ms % 1000) * 1000);
return 0;
}
--
To view, visit https://gerrit.osmocom.org/c/libosmo-pfcp/+/41876?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: merged
Gerrit-Project: libosmo-pfcp
Gerrit-Branch: master
Gerrit-Change-Id: Ia461550e6791aaf00d18e0310bb4f17fdd2a3f65
Gerrit-Change-Number: 41876
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: daniel <dwillmann(a)sysmocom.de>
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>