Attention is currently required from: neels.
Hello Jenkins Builder,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-upf/+/28755
to look at the new patch set (#3).
Change subject: apply refactoring of osmo_pfcp_endpoint API
......................................................................
apply refactoring of osmo_pfcp_endpoint API
libosmo-pfcp If80c35c6a942bf9593781b5a6bc28ba37323ce5e changes the
osmo_pfcp_endpoint API, apply the necessary changes here.
Related: SYS#5599
Depends: If80c35c6a942bf9593781b5a6bc28ba37323ce5e (libosmo-pfcp)
Change-Id: I01deb3f347435c9fa1c49e9a0c5ef70742444ad4
---
M src/osmo-pfcp-tool/osmo_pfcp_tool_main.c
M src/osmo-pfcp-tool/pfcp_tool_vty.c
M src/osmo-upf/up_endpoint.c
M src/osmo-upf/up_peer.c
M src/osmo-upf/up_session.c
5 files changed, 44 insertions(+), 35 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-upf refs/changes/55/28755/3
--
To view, visit https://gerrit.osmocom.org/c/osmo-upf/+/28755
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-upf
Gerrit-Branch: master
Gerrit-Change-Id: I01deb3f347435c9fa1c49e9a0c5ef70742444ad4
Gerrit-Change-Number: 28755
Gerrit-PatchSet: 3
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-MessageType: newpatchset
neels has submitted this change. ( https://gerrit.osmocom.org/c/libosmo-pfcp/+/28812 )
Change subject: pfcp_endpoint: fix final PFCP retrans resp_cb
......................................................................
pfcp_endpoint: fix final PFCP retrans resp_cb
After the final retransmission of a sent request, still keep the message
in the queue for its expiry period, so that a later response is matched
to the request.
The osmo_pfcp_msg.resp_cb() depends on the sent message to remain in the
queue until it times out. That was not the case in an earlier stage of
libosmo-pfcp development.
I noticed this during ttcn3 testing, where osmo-hnbgw continuously
resends PFCP Association Setup Requests, and fails to associate if ttcn3
happens to respond to the final retransmission of a request.
Related: SYS#5599
Change-Id: Iaca396891921f7057015ce6e1e4528b955757809
---
M src/libosmo-pfcp/pfcp_endpoint.c
1 file changed, 10 insertions(+), 9 deletions(-)
Approvals:
Jenkins Builder: Verified
pespin: Looks good to me, but someone else must approve
laforge: Looks good to me, approved
diff --git a/src/libosmo-pfcp/pfcp_endpoint.c b/src/libosmo-pfcp/pfcp_endpoint.c
index 0ee3a9a..68d0a21 100644
--- a/src/libosmo-pfcp/pfcp_endpoint.c
+++ b/src/libosmo-pfcp/pfcp_endpoint.c
@@ -181,18 +181,19 @@
struct osmo_pfcp_msg *m = qe->m;
int rc;
- /* re-transmit */
- if (qe->n1_remaining)
- qe->n1_remaining--;
- OSMO_LOG_PFCP_MSG(m, LOGL_INFO, "re-sending (%u attempts remaining)\n", qe->n1_remaining);
-
- rc = osmo_pfcp_endpoint_tx_data_no_logging(endpoint, m);
- /* If encoding failed, it cannot ever succeed. Drop the queue entry. */
- if (rc)
- return false;
/* if no more attempts remaining, drop from queue */
if (!qe->n1_remaining)
return false;
+
+ /* re-transmit */
+ qe->n1_remaining--;
+ OSMO_LOG_PFCP_MSG(m, LOGL_INFO, "re-sending (%u attempts remaining after this)\n", qe->n1_remaining);
+
+ rc = osmo_pfcp_endpoint_tx_data_no_logging(endpoint, m);
+ /* If encoding failed, it cannot ever succeed. Drop the queue entry. (Error logging already taken care of in
+ * osmo_pfcp_endpoint_tx_data_no_logging().) */
+ if (rc)
+ return false;
/* re-schedule timer, keep in queue */
osmo_timer_schedule(&qe->t1, t1_ms/1000, (t1_ms % 1000) * 1000);
return true;
1 is the latest approved patch-set.
No files were changed between the latest approved patch-set and the submitted one.
--
To view, visit https://gerrit.osmocom.org/c/libosmo-pfcp/+/28812
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmo-pfcp
Gerrit-Branch: master
Gerrit-Change-Id: Iaca396891921f7057015ce6e1e4528b955757809
Gerrit-Change-Number: 28812
Gerrit-PatchSet: 2
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged
neels has submitted this change. ( https://gerrit.osmocom.org/c/libosmo-pfcp/+/28754 )
Change subject: apply code review: refactor pfcp_endpoint API
......................................................................
apply code review: refactor pfcp_endpoint API
Code review requested that the API should use functions instead of
direct access to a struct.
I have moved all user provided config to a separate struct
osmo_pfcp_endpoint_cfg, to be passed to osmo_pfcp_endpoint_create().
Halfway through those changes, I am not so certain whether that is what
reviewers had in mind. It makes sense from the point of view to keep nr
of arguments passed to osmo_pfcp_endpoint_create() small, and to allow
changing the user provided config without requiring a new
osmo_pfcp_endpoint_create2() API function. Though that again has ABI
compat problems, and makes no sense from the point of view that all
access should be done via API functions.
Personally I don't really agree with this change, which is probably the
reason why this patch ended up this way.
Related: SYS#5599
Change-Id: If80c35c6a942bf9593781b5a6bc28ba37323ce5e
---
M include/osmocom/pfcp/pfcp_endpoint.h
M src/libosmo-pfcp/pfcp_cp_peer.c
M src/libosmo-pfcp/pfcp_endpoint.c
3 files changed, 116 insertions(+), 55 deletions(-)
Approvals:
neels: Looks good to me, approved
Jenkins Builder: Verified
diff --git a/include/osmocom/pfcp/pfcp_endpoint.h b/include/osmocom/pfcp/pfcp_endpoint.h
index acc878e..d0ed113 100644
--- a/include/osmocom/pfcp/pfcp_endpoint.h
+++ b/include/osmocom/pfcp/pfcp_endpoint.h
@@ -32,13 +32,15 @@
struct osmo_pfcp_endpoint;
struct osmo_fsm_inst;
-#define OSMO_PFCP_TIMER_HEARTBEAT_REQ -19
-#define OSMO_PFCP_TIMER_HEARTBEAT_RESP -20
-#define OSMO_PFCP_TIMER_GRACEFUL_REL -21
-#define OSMO_PFCP_TIMER_T1 -22
-#define OSMO_PFCP_TIMER_N1 -23
-#define OSMO_PFCP_TIMER_KEEP_RESP -24
-#define OSMO_PFCP_TIMER_ASSOC_RETRY -26
+enum osmo_pfcp_timers {
+ OSMO_PFCP_TIMER_HEARTBEAT_REQ = -19,
+ OSMO_PFCP_TIMER_HEARTBEAT_RESP = -20,
+ OSMO_PFCP_TIMER_GRACEFUL_REL = -21,
+ OSMO_PFCP_TIMER_T1 = -22,
+ OSMO_PFCP_TIMER_N1 = -23,
+ OSMO_PFCP_TIMER_KEEP_RESP = -24,
+ OSMO_PFCP_TIMER_ASSOC_RETRY = -26,
+};
extern struct osmo_tdef osmo_pfcp_tdefs[];
@@ -51,51 +53,41 @@
struct osmo_pfcp_msg *req);
/* Send/receive PFCP messages to/from remote PFCP endpoints. */
-struct osmo_pfcp_endpoint {
- struct {
- /* Local address */
- struct osmo_sockaddr local_addr;
- /* Local PFCP Node ID, as sent in outgoing messages' Node ID IE */
- struct osmo_pfcp_ie_node_id local_node_id;
+struct osmo_pfcp_endpoint;
- /* Timer definitions to use, if any. See t1_ms, keep_resp_ms. Use osmo_pfcp_tdefs by default. It is
- * convenient to add osmo_pfcp_tdefs as one of your program's osmo_tdef_group entries and call
- * osmo_tdef_vty_init() to expose PFCP timers on the VTY. */
- const struct osmo_tdef *tdefs;
- } cfg;
+struct osmo_pfcp_endpoint_cfg {
+ /* Local address */
+ struct osmo_sockaddr local_addr;
+ /* Local PFCP Node ID, as sent in outgoing messages' Node ID IE */
+ struct osmo_pfcp_ie_node_id local_node_id;
- /* PFCP socket */
- struct osmo_fd pfcp_fd;
+ /* If non-NULL, this function is called just after decoding and before handling the osmo_pfcp_msg passed as
+ * argument m.
+ * The caller (you) usually implements this to set m->ctx.peer_fi and m->ctx.session_fi as appropriate,
+ * so that these are used for logging context during message handling. The caller may also use m->ctx.peer_fi
+ * and m->ctx.session_fi pointers to reduce lookup iterations in e.g. rx_msg(). */
+ osmo_pfcp_endpoint_cb set_msg_ctx_cb;
- /* The time at which this endpoint last restarted, as seconds since unix epoch. */
- uint32_t recovery_time_stamp;
+ /* Callback to receive a single incoming PFCP message from a remote peer, already decoded. See also the doc for
+ * osmo_pfcp_endpoint_cb. */
+ osmo_pfcp_endpoint_cb rx_msg_cb;
- /* State for determining the next sequence number for transmitting a request message */
- uint32_t seq_nr_state;
-
- /* This function is called just after decoding and before handling the message.
- * This function may set ctx.peer_fi and ctx.session_fi, used for logging context during message decoding.
- * The caller may also use these fi pointers to reduce lookup iterations in rx_msg().
- */
- osmo_pfcp_endpoint_cb set_msg_ctx;
-
- /* Callback to receive single incoming PFCP messages from a remote peer, already decoded. */
- osmo_pfcp_endpoint_cb rx_msg;
+ /* Custom timer definitions to use, if any. Relevant timers are: OSMO_PFCP_TIMER_N1, OSMO_PFCP_TIMER_T1,
+ * OSMO_PFCP_TIMER_KEEP_RESP. These are used for the PFCP message retransmission queue.
+ * If passed NULL, use the timer definitions from the global osmo_pfcp_tdefs.
+ * To expose retransmission timers on the VTY configuration, it is convenient to add osmo_pfcp_tdefs as one of
+ * your program's osmo_tdef_group entries and call osmo_tdef_vty_init(). */
+ const struct osmo_tdef *tdefs;
/* application-private data */
void *priv;
- /* All transmitted PFCP Request messages, list of osmo_pfcp_queue_entry.
- * For a transmitted Request message, wait for a matching Response from a remote peer; if none arrives,
- * retransmit (see n1 and t1_ms). */
- struct llist_head sent_requests;
- /* All transmitted PFCP Response messages, list of osmo_pfcp_queue_entry.
- * For a transmitted Response message, keep it in the queue for a fixed amount of time. If the peer retransmits
- * the original Request, do not dispatch the Request, but respond with the queued message directly. */
- struct llist_head sent_responses;
+ /* Always false in this API version. When adding new members to this struct in the future, they shall be added
+ * after this 'more_items' flag, and such members shall be accessed only when more_items == true. */
+ bool more_items;
};
-struct osmo_pfcp_endpoint *osmo_pfcp_endpoint_create(void *ctx, void *priv);
+struct osmo_pfcp_endpoint *osmo_pfcp_endpoint_create(void *ctx, const struct osmo_pfcp_endpoint_cfg *cfg);
int osmo_pfcp_endpoint_bind(struct osmo_pfcp_endpoint *ep);
void osmo_pfcp_endpoint_close(struct osmo_pfcp_endpoint *ep);
void osmo_pfcp_endpoint_free(struct osmo_pfcp_endpoint **ep);
@@ -105,3 +97,11 @@
int osmo_pfcp_endpoint_tx_heartbeat_req(struct osmo_pfcp_endpoint *ep, const struct osmo_sockaddr *remote_addr);
void osmo_pfcp_endpoint_invalidate_ctx(struct osmo_pfcp_endpoint *ep, struct osmo_fsm_inst *deleted_fi);
+
+const struct osmo_pfcp_endpoint_cfg *osmo_pfcp_endpoint_get_cfg(const struct osmo_pfcp_endpoint *ep);
+void *osmo_pfcp_endpoint_get_priv(const struct osmo_pfcp_endpoint *ep);
+uint32_t osmo_pfcp_endpoint_get_recovery_timestamp(const struct osmo_pfcp_endpoint *ep);
+const struct osmo_sockaddr *osmo_pfcp_endpoint_get_local_addr(const struct osmo_pfcp_endpoint *ep);
+void osmo_pfcp_endpoint_set_seq_nr_state(struct osmo_pfcp_endpoint *ep, uint32_t seq_nr_state);
+
+bool osmo_pfcp_endpoint_retrans_queue_is_busy(const struct osmo_pfcp_endpoint *ep);
diff --git a/src/libosmo-pfcp/pfcp_cp_peer.c b/src/libosmo-pfcp/pfcp_cp_peer.c
index e1dd9ac..959206a 100644
--- a/src/libosmo-pfcp/pfcp_cp_peer.c
+++ b/src/libosmo-pfcp/pfcp_cp_peer.c
@@ -161,7 +161,7 @@
struct osmo_pfcp_msg *m;
m = osmo_pfcp_cp_peer_new_req(cp_peer, OSMO_PFCP_MSGT_ASSOC_SETUP_REQ);
- m->ies.assoc_setup_req.recovery_time_stamp = cp_peer->ep->recovery_time_stamp;
+ m->ies.assoc_setup_req.recovery_time_stamp = osmo_pfcp_endpoint_get_recovery_timestamp(cp_peer->ep);
m->ies.assoc_setup_req.cp_function_features_present = true;
osmo_pfcp_bits_set(m->ies.assoc_setup_req.cp_function_features.bits, OSMO_PFCP_CP_FEAT_BUNDL, true);
diff --git a/src/libosmo-pfcp/pfcp_endpoint.c b/src/libosmo-pfcp/pfcp_endpoint.c
index 6162086..0ee3a9a 100644
--- a/src/libosmo-pfcp/pfcp_endpoint.c
+++ b/src/libosmo-pfcp/pfcp_endpoint.c
@@ -32,6 +32,29 @@
#include <osmocom/pfcp/pfcp_endpoint.h>
#include <osmocom/pfcp/pfcp_msg.h>
+/* Send/receive PFCP messages to/from remote PFCP endpoints. */
+struct osmo_pfcp_endpoint {
+ struct osmo_pfcp_endpoint_cfg cfg;
+
+ /* PFCP socket */
+ struct osmo_fd pfcp_fd;
+
+ /* The time at which this endpoint last restarted, as seconds since unix epoch. */
+ uint32_t recovery_time_stamp;
+
+ /* State for determining the next sequence number for transmitting a request message */
+ uint32_t seq_nr_state;
+
+ /* All transmitted PFCP Request messages, list of osmo_pfcp_queue_entry.
+ * For a transmitted Request message, wait for a matching Response from a remote peer; if none arrives,
+ * retransmit (see n1 and t1_ms). */
+ struct llist_head sent_requests;
+ /* All transmitted PFCP Response messages, list of osmo_pfcp_queue_entry.
+ * For a transmitted Response message, keep it in the queue for a fixed amount of time. If the peer retransmits
+ * the original Request, do not dispatch the Request, but respond with the queued message directly. */
+ struct llist_head sent_responses;
+};
+
/*! Entry of pfcp_endpoint message queue of PFCP messages, for re-transsions. */
struct osmo_pfcp_queue_entry {
/* entry in per-peer list of messages waiting for a response */
@@ -103,18 +126,22 @@
{}
};
-struct osmo_pfcp_endpoint *osmo_pfcp_endpoint_create(void *ctx, void *priv)
+/* Allocate a PFCP endpoint. Copy cfg's content to the allocated endpoint struct. Set the recovery_time_stamp to the
+ * current time. */
+struct osmo_pfcp_endpoint *osmo_pfcp_endpoint_create(void *ctx, const struct osmo_pfcp_endpoint_cfg *cfg)
{
struct osmo_pfcp_endpoint *ep = talloc_zero(ctx, struct osmo_pfcp_endpoint);
uint32_t unix_time;
if (!ep)
return NULL;
+ ep->cfg = *cfg;
+ if (!ep->cfg.tdefs)
+ ep->cfg.tdefs = osmo_pfcp_tdefs;
+
INIT_LLIST_HEAD(&ep->sent_requests);
INIT_LLIST_HEAD(&ep->sent_responses);
- ep->cfg.tdefs = osmo_pfcp_tdefs;
- ep->priv = priv;
ep->pfcp_fd.fd = -1;
/* time() returns seconds since 1970 (UNIX epoch), but the recovery_time_stamp is coded in the NTP format, which is
@@ -343,8 +370,8 @@
/* Populate message context to point at peer and session, if applicable.
* With that context applied, log message rx. */
- if (ep->set_msg_ctx)
- ep->set_msg_ctx(ep, m, NULL);
+ if (ep->cfg.set_msg_ctx_cb)
+ ep->cfg.set_msg_ctx_cb(ep, m, NULL);
OSMO_LOG_PFCP_MSG(m, LOGL_INFO, "received retransmission of earlier request\n");
/* Also log on the earlier PFCP msg that it is resent */
@@ -362,8 +389,8 @@
/* Populate message context to point at peer and session, if applicable.
* With that context applied, log message rx. */
- if (ep->set_msg_ctx)
- ep->set_msg_ctx(ep, m, req);
+ if (ep->cfg.set_msg_ctx_cb)
+ ep->cfg.set_msg_ctx_cb(ep, m, req);
OSMO_LOG_PFCP_MSG(m, LOGL_INFO, "received\n");
if (req && req->ctx.resp_cb) {
@@ -373,12 +400,12 @@
if (rc != 1) {
dispatch_rx = false;
OSMO_LOG_PFCP_MSG(m, LOGL_DEBUG,
- "response handled by m->resp_cb(), not dispatching to rx_msg()\n");
+ "response handled by m->resp_cb(), not dispatching to rx_msg_cb()\n");
}
}
if (dispatch_rx)
- ep->rx_msg(ep, m, req);
+ ep->cfg.rx_msg_cb(ep, m, req);
if (req)
osmo_pfcp_queue_del(prev_msg);
}
@@ -402,7 +429,7 @@
return -EIO;
msgb_put(msg, rc);
- OSMO_ASSERT(ep->rx_msg);
+ OSMO_ASSERT(ep->cfg.rx_msg_cb);
/* This may be a bundle of PFCP messages. Parse and receive each message received, by shifting l4h
* through the message bundle. */
@@ -436,8 +463,8 @@
/* close the existing socket, if any */
osmo_pfcp_endpoint_close(ep);
- if (!ep->rx_msg) {
- LOGP(DLPFCP, LOGL_ERROR, "missing rx_msg cb at osmo_pfcp_endpoint\n");
+ if (!ep->cfg.rx_msg_cb) {
+ LOGP(DLPFCP, LOGL_ERROR, "missing cfg.rx_msg_cb at osmo_pfcp_endpoint\n");
return -EINVAL;
}
@@ -483,3 +510,37 @@
llist_for_each_entry(qe, &ep->sent_responses, entry)
osmo_pfcp_msg_invalidate_ctx(qe->m, deleted_fi);
}
+
+/* Return the cfg for an endpoint, guaranteed to return non-NULL for a valid ep. */
+const struct osmo_pfcp_endpoint_cfg *osmo_pfcp_endpoint_get_cfg(const struct osmo_pfcp_endpoint *ep)
+{
+ return &ep->cfg;
+}
+
+/* Shorthand for &osmo_pfcp_endpoint_get_cfg(ep)->priv */
+void *osmo_pfcp_endpoint_get_priv(const struct osmo_pfcp_endpoint *ep)
+{
+ return ep->cfg.priv;
+}
+
+uint32_t osmo_pfcp_endpoint_get_recovery_timestamp(const struct osmo_pfcp_endpoint *ep)
+{
+ return ep->recovery_time_stamp;
+}
+
+/* Shorthand for &osmo_pfcp_endpoint_get_cfg(ep)->local_addr */
+const struct osmo_sockaddr *osmo_pfcp_endpoint_get_local_addr(const struct osmo_pfcp_endpoint *ep)
+{
+ return &ep->cfg.local_addr;
+}
+
+void osmo_pfcp_endpoint_set_seq_nr_state(struct osmo_pfcp_endpoint *ep, uint32_t seq_nr_state)
+{
+ ep->seq_nr_state = seq_nr_state;
+}
+
+/* Return true when the retransmission queues contain any PFCP messages, false when the queues are empty. */
+bool osmo_pfcp_endpoint_retrans_queue_is_busy(const struct osmo_pfcp_endpoint *ep)
+{
+ return !(llist_empty(&ep->sent_requests) && llist_empty(&ep->sent_responses));
+}
--
To view, visit https://gerrit.osmocom.org/c/libosmo-pfcp/+/28754
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmo-pfcp
Gerrit-Branch: master
Gerrit-Change-Id: If80c35c6a942bf9593781b5a6bc28ba37323ce5e
Gerrit-Change-Number: 28754
Gerrit-PatchSet: 3
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: neels <nhofmeyr(a)sysmocom.de>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged
Attention is currently required from: neels, laforge.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816 )
Change subject: add ps_rab_ass FSM to map GTP via UPF
......................................................................
Patch Set 2:
(1 comment)
File include/osmocom/hnbgw/hnbgw.h:
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/6f1e3d4a_970dc740
PS2, Line 193: /* Return true when the user configured GTP mapping to be enabled, by configuring a PFCP link to a UPF.
> I'm not following you, pau. […]
I we should not allow running osmo-hnbgw without proxying GTP through it (in detail, through its associated UPF).
I am referring to the problem described for the need of a GTP-u proxy in the SGSN in OS#5154 and SYS#5389, SYS#5435. You also referenced a need for it in osmo-hnbgw in the decription of the task this commit is about (OS#5153).
I think the main issue in this case would be what's described in SYS#5435 case "B]": "SGSN sending to nano3G GGSN's TEI which is changing after UpdatePDPCtxResp" but this time applied to HNBGW and hNodeB.
--
To view, visit https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-hnbgw
Gerrit-Branch: master
Gerrit-Change-Id: Ic9bc30f322c4c6c6e82462d1da50cb15b336c63a
Gerrit-Change-Number: 28816
Gerrit-PatchSet: 2
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: laforge <laforge(a)osmocom.org>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Comment-Date: Thu, 28 Jul 2022 12:25:49 +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: neels, pespin.
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/28818 )
Change subject: hnbgw: test PS RAB GTP mapping
......................................................................
Patch Set 3:
(3 comments)
File hnbgw/HNBGW_Tests.ttcn:
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/28818/comment/dda6e1b9_d561…
PS1, Line 285: pfcp_remote_ip := "127.0.0.2",
> technically the ttcn3 virt UPF should respond back to whichever IP sends PFCP requests, i think i le […]
agreed (mp_...)
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/28818/comment/1e555f67_e5d5…
PS1, Line 1308: f_sleep(2.0);
> i guess i wanted to "simulate" that the RAB remains in use for a bit of time. […]
Ack
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/28818/comment/59adaacb_383d…
PS1, Line 1308: f_sleep(2.0);
> i guess i wanted to "simulate" that the RAB remains in use for a bit of time. […]
Ack
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/28818
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: I93c4689ddc016eb4eb25f8cbdd0142936c6f972b
Gerrit-Change-Number: 28818
Gerrit-PatchSet: 3
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: laforge <laforge(a)osmocom.org>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 28 Jul 2022 11:56:59 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
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: neels.
Hello Jenkins Builder,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-upf/+/28755
to look at the new patch set (#2).
Change subject: apply refactoring of osmo_pfcp_endpoint API
......................................................................
apply refactoring of osmo_pfcp_endpoint API
libosmo-pfcp If80c35c6a942bf9593781b5a6bc28ba37323ce5e changes the
osmo_pfcp_endpoint API, apply the necessary changes here.
Related: SYS#5599
Depends: If80c35c6a942bf9593781b5a6bc28ba37323ce5e (libosmo-pfcp)
Change-Id: I01deb3f347435c9fa1c49e9a0c5ef70742444ad4
---
M src/osmo-pfcp-tool/osmo_pfcp_tool_main.c
M src/osmo-pfcp-tool/pfcp_tool_vty.c
M src/osmo-upf/up_endpoint.c
M src/osmo-upf/up_peer.c
M src/osmo-upf/up_session.c
5 files changed, 44 insertions(+), 34 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-upf refs/changes/55/28755/2
--
To view, visit https://gerrit.osmocom.org/c/osmo-upf/+/28755
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-upf
Gerrit-Branch: master
Gerrit-Change-Id: I01deb3f347435c9fa1c49e9a0c5ef70742444ad4
Gerrit-Change-Number: 28755
Gerrit-PatchSet: 2
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-MessageType: newpatchset
Attention is currently required from: neels.
Hello Jenkins Builder, laforge,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/libosmo-pfcp/+/28754
to look at the new patch set (#3).
Change subject: apply code review: refactor pfcp_endpoint API
......................................................................
apply code review: refactor pfcp_endpoint API
Code review requested that the API should use functions instead of
direct access to a struct.
I have moved all user provided config to a separate struct
osmo_pfcp_endpoint_cfg, to be passed to osmo_pfcp_endpoint_create().
Halfway through those changes, I am not so certain whether that is what
reviewers had in mind. It makes sense from the point of view to keep nr
of arguments passed to osmo_pfcp_endpoint_create() small, and to allow
changing the user provided config without requiring a new
osmo_pfcp_endpoint_create2() API function. Though that again has ABI
compat problems, and makes no sense from the point of view that all
access should be done via API functions.
Personally I don't really agree with this change, which is probably the
reason why this patch ended up this way.
Related: SYS#5599
Change-Id: If80c35c6a942bf9593781b5a6bc28ba37323ce5e
---
M include/osmocom/pfcp/pfcp_endpoint.h
M src/libosmo-pfcp/pfcp_cp_peer.c
M src/libosmo-pfcp/pfcp_endpoint.c
3 files changed, 116 insertions(+), 55 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmo-pfcp refs/changes/54/28754/3
--
To view, visit https://gerrit.osmocom.org/c/libosmo-pfcp/+/28754
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmo-pfcp
Gerrit-Branch: master
Gerrit-Change-Id: If80c35c6a942bf9593781b5a6bc28ba37323ce5e
Gerrit-Change-Number: 28754
Gerrit-PatchSet: 3
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-MessageType: newpatchset
Attention is currently required from: neels, pespin.
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816 )
Change subject: add ps_rab_ass FSM to map GTP via UPF
......................................................................
Patch Set 2:
(15 comments)
File include/osmocom/hnbgw/hnbgw.h:
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/44dd4d64_06a87c46
PS2, Line 193: /* Return true when the user configured GTP mapping to be enabled, by configuring a PFCP link to a UPF.
> I'm not sure we really want to disable this feature. […]
I'm not following you, pau. Which feature do you want ot disable? The feature to use the external UPF for gtp-mapping? Or the feature to bypass that external UPF? I think there are valid use cases in both scenrarios.
Paging should not really be something the HNBGW has to decide upon, but the SGSN. The SGSN knows if there's an Iu connection or not, and it should know if it has to buffer packets and page, or if it can send them to the RNC/HNBGW. Am I missing something?
File include/osmocom/hnbgw/ps_rab_fsm.h:
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/ef534e74_248fe3dd
PS1, Line 8: struct addr_teid {
> Maybe add a one line documenttion. […]
Done
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/1ca2bfaf_e50eb34a
PS1, Line 14: /* Two of this make up a GTP mapping, one for the Access (HNB) side, one for the Core (CN) side.
> what does "this" mean here?
Done
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/838fba43_cc60c991
PS1, Line 24: struct half_gtp_map {
> gtp_tunnel would be accurate, except that the FAR (Forwarding Action Rule) is closely related to the […]
Done
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/fd7653c5_5c0ab9f5
PS1, Line 36: /* Whether the RANAP message this RAB's remote address was obtained from encoded the address in x213_nsap */
> it is accurate but i'll rephrase to less ambiguous grammar
Done
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/bdd01c72_9849f2dd
PS1, Line 41: struct osmo_fsm_inst *fi;
> document the type of fsm? because I see 2 more "fi" below.
Done
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/e779e32e_720d5540
PS1, Line 54: /* Backpointer to the ps_rab_ass_fsm for the RAB Assignment Request from Core that created this RAB. */
> commenting in code...
Done
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/e4a5f17e_840e6ad6
PS1, Line 79: bool ps_rab_is_established(struct ps_rab *rab);
> constify param
Done
File src/osmo-hnbgw/hnbgw_cn.c:
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/458a0325_19cfeaeb
PS1, Line 373: if (!map->is_ps) {
> we (i?) usually list CS above PS ... […]
Done
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/d872ba4a_9e2f1532
PS1, Line 396: rc = ranap_ran_rx_co_decode(map, message, msgb_l2(oph->msg), msgb_l2len(oph->msg));
> i think i even considered that when writing the patch, but left it like this to show that the CS cod […]
Done
File src/osmo-hnbgw/hnbgw_pfcp.c:
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/30fc8785_d653f75b
PS1, Line 77: if (!hnb_gw_is_gtp_mapping_enabled(hnb_gw)) {
> that's a matter of taste ... […]
agrering with neels.
File src/osmo-hnbgw/hnbgw_rua.c:
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/5eb6d23e_cfd6d3a0
PS1, Line 284: if (!map->is_ps) {
> idk i like CS above PS better, also before this patch there was "!is_ps" above
Ack
File src/osmo-hnbgw/hnbgw_vty.c:
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/26f2a5ee_7f01c55b
PS1, Line 474: if (g_hnb_gw->config.pfcp.local_addr)
> same order here as where the cmds are added to vty, but ok whatever
not aware of any specific ordering requirement.
File src/osmo-hnbgw/ps_rab_ass_fsm.c:
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/24881181_99e8e8ef
PS1, Line 490: /* See whether all RABs are done establishing, and replace RTP info in the RAB Assignment Response message, so that we
> lol thx
Done
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/9bf989a9_b05c7779
PS1, Line 625: void hnbgw_gtpmap_release(struct hnbgw_context_map *map)
> I'm reading "gsmtap" all the time ;)
Done
--
To view, visit https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-hnbgw
Gerrit-Branch: master
Gerrit-Change-Id: Ic9bc30f322c4c6c6e82462d1da50cb15b336c63a
Gerrit-Change-Number: 28816
Gerrit-PatchSet: 2
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: laforge <laforge(a)osmocom.org>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 28 Jul 2022 11:45:14 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
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: neels.
Hello Jenkins Builder,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/28817
to look at the new patch set (#3).
Change subject: add library/PFCP_*, deps/PFCP
......................................................................
add library/PFCP_*, deps/PFCP
Will soon be used by new subdir 'upf' (test osmo-upf),
and by 'hnbgw' (test GTP mapping via UPF).
Related: SYS#5599
Change-Id: I0723b931b3f755ea291bffa2f27c34ba446c2f2f
---
M deps/Makefile
M library/General_Types.ttcn
A library/PFCP_CodecPort.ttcn
A library/PFCP_CodecPort_CtrlFunct.ttcn
A library/PFCP_CodecPort_CtrlFunctDef.cc
A library/PFCP_Emulation.ttcn
A library/PFCP_Templates.ttcn
7 files changed, 919 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/17/28817/3
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/28817
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: I0723b931b3f755ea291bffa2f27c34ba446c2f2f
Gerrit-Change-Number: 28817
Gerrit-PatchSet: 3
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-MessageType: newpatchset
Attention is currently required from: pespin.
Hello Jenkins Builder,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/28818
to look at the new patch set (#3).
Change subject: hnbgw: test PS RAB GTP mapping
......................................................................
hnbgw: test PS RAB GTP mapping
Related: SYS#5895
Change-Id: I93c4689ddc016eb4eb25f8cbdd0142936c6f972b
---
M hnbgw/HNBGW_Tests.ttcn
M hnbgw/gen_links.sh
M hnbgw/osmo-hnbgw.cfg
M hnbgw/regen_makefile.sh
M library/ranap/RANAP_Templates.ttcn
5 files changed, 294 insertions(+), 3 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/18/28818/3
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/28818
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: I93c4689ddc016eb4eb25f8cbdd0142936c6f972b
Gerrit-Change-Number: 28818
Gerrit-PatchSet: 3
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: newpatchset
Attention is currently required from: pespin.
neels has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/28818 )
Change subject: hnbgw: test PS RAB GTP mapping
......................................................................
Patch Set 2:
(2 comments)
File hnbgw/HNBGW_Tests.ttcn:
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/28818/comment/536cb845_9ed7…
PS1, Line 285: pfcp_remote_ip := "127.0.0.2",
> this probably needs to be moved to a mp_pfcp_ip_remote
technically the ttcn3 virt UPF should respond back to whichever IP sends PFCP requests, i think i left it like this because it felt not properly thought through yet.
does it make sense to set a fixed mp_pfcp_ip_remote? makes the PFCP emulation code simpler. we always have one fixed SUT. so i guess it makes sense.
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/28818/comment/94029f0d_1fd9…
PS1, Line 1308: f_sleep(2.0);
> is this sleep needed?
i guess i wanted to "simulate" that the RAB remains in use for a bit of time. sometimes nicer to have a time delay at such places to help reading logs / traces
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/28818
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: I93c4689ddc016eb4eb25f8cbdd0142936c6f972b
Gerrit-Change-Number: 28818
Gerrit-PatchSet: 2
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 28 Jul 2022 11:43:46 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: comment
pespin has removed a vote from this change. ( https://gerrit.osmocom.org/c/osmo-cbc/+/28828 )
Change subject: Split smscb_peer_fsm into CBSP and SBcAP specific FSMs
......................................................................
Removed Verified-1 by Jenkins Builder (1000002)
--
To view, visit https://gerrit.osmocom.org/c/osmo-cbc/+/28828
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-cbc
Gerrit-Branch: master
Gerrit-Change-Id: I0fd00b60cdc6bc6a088be1336d849548ca89c847
Gerrit-Change-Number: 28828
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: deleteVote
Attention is currently required from: neels.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/28817 )
Change subject: add library/PFCP_*, deps/PFCP
......................................................................
Patch Set 2:
(1 comment)
File library/PFCP_Templates.ttcn:
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/28817/comment/8f11044c_bc3d…
PS1, Line 18: type enumerated e_PFCP_Cause {
> You could move some of these into PFCP_Types. […]
Not resolved (any of my comments in this file).
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/28817
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: I0723b931b3f755ea291bffa2f27c34ba446c2f2f
Gerrit-Change-Number: 28817
Gerrit-PatchSet: 2
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 28 Jul 2022 11:31:32 +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: neels.
Hello Jenkins Builder,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/28817
to look at the new patch set (#2).
Change subject: add library/PFCP_*, deps/PFCP
......................................................................
add library/PFCP_*, deps/PFCP
Will soon be used by new subdir 'upf' (test osmo-upf),
and by 'hnbgw' (test GTP mapping via UPF).
Related: SYS#5599
Change-Id: I0723b931b3f755ea291bffa2f27c34ba446c2f2f
---
M deps/Makefile
M library/General_Types.ttcn
A library/PFCP_CodecPort.ttcn
A library/PFCP_CodecPort_CtrlFunct.ttcn
A library/PFCP_CodecPort_CtrlFunctDef.cc
A library/PFCP_Emulation.ttcn
A library/PFCP_Templates.ttcn
7 files changed, 910 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/17/28817/2
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/28817
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: I0723b931b3f755ea291bffa2f27c34ba446c2f2f
Gerrit-Change-Number: 28817
Gerrit-PatchSet: 2
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-MessageType: newpatchset
Attention is currently required from: neels.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-hnbgw/+/28827 )
Change subject: reduce code dup in handle_cn_data_ind()
......................................................................
Patch Set 1: Code-Review+1
(2 comments)
File src/osmo-hnbgw/hnbgw_cn.c:
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28827/comment/33534f40_2cd21330
PS1, Line 376: if (!map->is_ps) {
I'd personally first check for the type of procedure ("switch (message->procedureCode)") and then inside each message do whatever, to follow a kind of "decode" path, but fine anyway.
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28827/comment/d287c9ab_26112e4b
PS1, Line 414: talloc_free(message);
if rc==0, then these 2 get called:
ranap_ran_rx_co_free(message)
talloc_free(message)
are you sure this is not doublefreeing?
--
To view, visit https://gerrit.osmocom.org/c/osmo-hnbgw/+/28827
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-hnbgw
Gerrit-Branch: master
Gerrit-Change-Id: I4bca25d1643693cf3a9d3c49f35b29ff1dce0859
Gerrit-Change-Number: 28827
Gerrit-PatchSet: 1
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 28 Jul 2022 10:34:33 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
Attention is currently required from: neels.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816 )
Change subject: add ps_rab_ass FSM to map GTP via UPF
......................................................................
Patch Set 2:
(4 comments)
File include/osmocom/hnbgw/hnbgw.h:
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/29d202b0_07e98082
PS2, Line 193: /* Return true when the user configured GTP mapping to be enabled, by configuring a PFCP link to a UPF.
I'm not sure we really want to disable this feature. It was noticed in some customer's tickets that some regular scenarios will fail if the HNBGW is not in thge middle of the GTP path.
For instance IIRC if the UE conn is closed and some DL data arrives and the HNBGW needs to page the UE.
I'm fine leaving it for now until the feature is completed, but we should drop this mode at some point.
File src/osmo-hnbgw/hnbgw.c:
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/75a9e9ff_87e9338c
PS1, Line 230: LOGP(DHNBAP, LOGL_INFO, "deallocating UE context: id 0x%x, imsi %s, tmsi 0x%x\n",
> missed this one, i think i needed it for debugging, could just drop it
AFAICT this was not resolved.
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/0fd07e41_fd46c938
PS1, Line 354: LOGP(DMAIN, LOGL_INFO, "Deallocating hnb_context\n");
> this can probably go on a different commit.
Same, not resolved.
File src/osmo-hnbgw/ps_rab_fsm.c:
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/bbb8fd8d_dbf2f7da
PS1, Line 797: .name = "PS_RAB_ST_WAIT_USE_COUNT",
> WAIT_USE_COUNT
Not resolved.
--
To view, visit https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-hnbgw
Gerrit-Branch: master
Gerrit-Change-Id: Ic9bc30f322c4c6c6e82462d1da50cb15b336c63a
Gerrit-Change-Number: 28816
Gerrit-PatchSet: 2
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 28 Jul 2022 10:29:58 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
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: pespin.
neels has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-hnbgw/+/28815 )
Change subject: ranap_rab_ass_req_encode(): return msgb
......................................................................
Patch Set 1:
(1 comment)
Patchset:
PS1:
> It would even probably make more sense to allocate the msgb at the caller and pass it to the encode […]
that would be good, but can't: the function is calling ranap_generate_initiating_message() from osmo-iuh.git, which returns the msgb
--
To view, visit https://gerrit.osmocom.org/c/osmo-hnbgw/+/28815
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-hnbgw
Gerrit-Branch: master
Gerrit-Change-Id: I85e715326e1d8f4f301f82f78da109f1a7a92f30
Gerrit-Change-Number: 28815
Gerrit-PatchSet: 1
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 28 Jul 2022 10:23:14 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: comment
Attention is currently required from: pespin.
Hello Jenkins Builder,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816
to look at the new patch set (#2).
Change subject: add ps_rab_ass FSM to map GTP via UPF
......................................................................
add ps_rab_ass FSM to map GTP via UPF
Related: SYS#5895
Depends: If80c35c6a942bf9593781b5a6bc28ba37323ce5e (libosmo-pfcp)
Change-Id: Ic9bc30f322c4c6c6e82462d1da50cb15b336c63a
---
M configure.ac
M contrib/jenkins.sh
M include/osmocom/hnbgw/Makefile.am
M include/osmocom/hnbgw/context_map.h
M include/osmocom/hnbgw/hnbgw.h
A include/osmocom/hnbgw/hnbgw_pfcp.h
A include/osmocom/hnbgw/ps_rab_ass_fsm.h
A include/osmocom/hnbgw/ps_rab_fsm.h
M include/osmocom/hnbgw/tdefs.h
M include/osmocom/hnbgw/vty.h
M src/osmo-hnbgw/Makefile.am
M src/osmo-hnbgw/context_map.c
M src/osmo-hnbgw/hnbgw.c
M src/osmo-hnbgw/hnbgw_cn.c
A src/osmo-hnbgw/hnbgw_pfcp.c
M src/osmo-hnbgw/hnbgw_rua.c
M src/osmo-hnbgw/hnbgw_vty.c
A src/osmo-hnbgw/ps_rab_ass_fsm.c
A src/osmo-hnbgw/ps_rab_fsm.c
M src/osmo-hnbgw/tdefs.c
20 files changed, 1,965 insertions(+), 7 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-hnbgw refs/changes/16/28816/2
--
To view, visit https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-hnbgw
Gerrit-Branch: master
Gerrit-Change-Id: Ic9bc30f322c4c6c6e82462d1da50cb15b336c63a
Gerrit-Change-Number: 28816
Gerrit-PatchSet: 2
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: newpatchset
Attention is currently required from: pespin.
neels has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816 )
Change subject: add ps_rab_ass FSM to map GTP via UPF
......................................................................
Patch Set 1:
(11 comments)
File include/osmocom/hnbgw/context_map.h:
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/5f3a5fe8_9670b6ad
PS1, Line 56: * and each Response gets one ps_rab_ass FSM. Each such message can contain any number and any combination of
> you mean each req+response pair has a ps_rab_ass? or one for each?
one each. tried to think of an ascii art way to draw the relations because it is strugglesome to explain in words ...
first i tried to have one FSM for req + resp + PFCP for all RABs, then gradually noticed that each RAB needs a separate PFCP FSM, and then that i also need to have separate FSMs for RANAP req and resp.
File include/osmocom/hnbgw/ps_rab_fsm.h:
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/49c62d11_8063c541
PS1, Line 24: struct half_gtp_map {
> gtp_map_leg? to use some term more "usual".
gtp_tunnel would be accurate, except that the FAR (Forwarding Action Rule) is closely related to the *other* GTP tunnel. I'll expand the comment.
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/8ec7ec53_37a06b83
PS1, Line 36: /* Whether the RANAP message this RAB's remote address was obtained from encoded the address in x213_nsap */
> "from encoded the address" looks wrongly written?
it is accurate but i'll rephrase to less ambiguous grammar
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/80c397c7_60c89080
PS1, Line 54: /* Backpointer to the ps_rab_ass_fsm for the RAB Assignment Request from Core that created this RAB. */
> (I wonder why do we need 2 different FSMs here, looks like the same followup procedure to me, req + […]
commenting in code...
File src/osmo-hnbgw/hnbgw.c:
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/2bc0f340_b5d5eb4d
PS1, Line 230: LOGP(DHNBAP, LOGL_INFO, "deallocating UE context: id 0x%x, imsi %s, tmsi 0x%x\n",
> this can probably go on a different commit.
missed this one, i think i needed it for debugging, could just drop it
File src/osmo-hnbgw/hnbgw_cn.c:
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/0b5c7053_b1792c48
PS1, Line 373: if (!map->is_ps) {
> not super important, but probably makes it easier to read if you do "if (map->is_ps)" now, and move […]
we (i?) usually list CS above PS ... so the is_ps maybe should have been named is_cs instead; i agree that it is slightly annoying, but i've made peace with that over the years
(this line is unchanged from before this patch despite gerrit rendering on green background, I'm only adding an 'else')
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/6c9af076_7cd2ecf3
PS1, Line 396: rc = ranap_ran_rx_co_decode(map, message, msgb_l2(oph->msg), msgb_l2len(oph->msg));
> You are actually duplicating these 2 lines now. They can be moved outside the if/else condition. […]
i think i even considered that when writing the patch, but left it like this to show that the CS code is completely unchanged... but true.
i'll remove the code dup in a separate patch
File src/osmo-hnbgw/hnbgw_pfcp.c:
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/6254cfaf_7516e07d
PS1, Line 77: if (!hnb_gw_is_gtp_mapping_enabled(hnb_gw)) {
> I'd move this to the main function, to avoid calling hnbgw_pfcp_init(). […]
that's a matter of taste ... personally i like it very much when things are completely contained in a single file, with the parts appearing in main() as minimal as possible.
but i see the LOGP above seems at the wrong place
File src/osmo-hnbgw/hnbgw_rua.c:
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/3b1f3a66_383eaeb2
PS1, Line 284: if (!map->is_ps) {
> same, probably easier to read with "if (map->is_ps)"
idk i like CS above PS better, also before this patch there was "!is_ps" above
File src/osmo-hnbgw/hnbgw_vty.c:
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/975c18f5_a6158113
PS1, Line 474: if (g_hnb_gw->config.pfcp.local_addr)
> I think we usually print first local addresses, then remote addresses.
same order here as where the cmds are added to vty, but ok whatever
File src/osmo-hnbgw/ps_rab_ass_fsm.c:
https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816/comment/4eec37a5_8a12da06
PS1, Line 490: /* See whether all RABs are done establishing, and replace RTP info in the RAB Assignment Response message, so that we
> s/RTP/GTP/
lol thx
--
To view, visit https://gerrit.osmocom.org/c/osmo-hnbgw/+/28816
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-hnbgw
Gerrit-Branch: master
Gerrit-Change-Id: Ic9bc30f322c4c6c6e82462d1da50cb15b336c63a
Gerrit-Change-Number: 28816
Gerrit-PatchSet: 1
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 28 Jul 2022 10:03:42 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: comment
Hello Jenkins Builder,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-cbc/+/28826
to look at the new patch set (#2).
Change subject: Split event list for smscb_message_fsm and smscb_peer_fsm
......................................................................
Split event list for smscb_message_fsm and smscb_peer_fsm
It really doesn't make sense to share the event list betwen those for
several reasons.
First, because ech of those FSM relate to different things:
* smscb_message_fsm: Handling/scheduling of 1 smscb towards all peers
* smscb_peer_fsm: Handling/scheduling of 1 smscb towards 1 peer.
The former has higher level interface used by the REST
API, plus some mid level interface used by smscb_peer_fsm.
The later has a mid level interface used by smscb_message_fsm to
interact, and a lower level interface used by the SBcAP/CBSP links to
talk to.
Furthermore, this makes it a lot easier understanding which events are
sent from one to another FSM.
Change-Id: I909474d1ff4ec7ed20aff0981da47074397df6cb
---
M include/osmocom/cbc/Makefile.am
M include/osmocom/cbc/smscb_message_fsm.h
A include/osmocom/cbc/smscb_peer_fsm.h
M src/cbc_message.c
M src/cbsp_link_fsm.c
M src/sbcap_link_fsm.c
M src/smscb_message_fsm.c
M src/smscb_peer_fsm.c
8 files changed, 197 insertions(+), 179 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-cbc refs/changes/26/28826/2
--
To view, visit https://gerrit.osmocom.org/c/osmo-cbc/+/28826
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-cbc
Gerrit-Branch: master
Gerrit-Change-Id: I909474d1ff4ec7ed20aff0981da47074397df6cb
Gerrit-Change-Number: 28826
Gerrit-PatchSet: 2
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-MessageType: newpatchset
Attention is currently required from: pespin.
pespin has removed a vote from this change. ( https://gerrit.osmocom.org/c/osmo-cbc/+/28823 )
Change subject: sbcap: Store reported failed TAIs from WriteReplaceResponse in cbc_message_peer
......................................................................
Removed Verified-1 by Jenkins Builder (1000002)
--
To view, visit https://gerrit.osmocom.org/c/osmo-cbc/+/28823
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-cbc
Gerrit-Branch: master
Gerrit-Change-Id: I37b08aa374c1097d2871bf69a7bb7893f32bccd3
Gerrit-Change-Number: 28823
Gerrit-PatchSet: 3
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-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: deleteVote
Attention is currently required from: fixeria.
Hello Jenkins Builder, fixeria,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-cbc/+/28819
to look at the new patch set (#2).
Change subject: sbcap: Log info about messages received and trasmitted
......................................................................
sbcap: Log info about messages received and trasmitted
Change-Id: Ifd1eca79bf4fac63de8066cd6a18004138d51d04
---
M include/osmocom/sbcap/sbcap_common.h
M src/sbcap/sbcap_common.c
M src/sbcap_link.c
M src/sbcap_link_fsm.c
4 files changed, 65 insertions(+), 20 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-cbc refs/changes/19/28819/2
--
To view, visit https://gerrit.osmocom.org/c/osmo-cbc/+/28819
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-cbc
Gerrit-Branch: master
Gerrit-Change-Id: Ifd1eca79bf4fac63de8066cd6a18004138d51d04
Gerrit-Change-Number: 28819
Gerrit-PatchSet: 2
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: newpatchset
Attention is currently required from: fixeria.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-cbc/+/28819 )
Change subject: sbcap: Log info about messages received and trasmitted
......................................................................
Patch Set 1:
(2 comments)
File src/sbcap_link.c:
https://gerrit.osmocom.org/c/osmo-cbc/+/28819/comment/de5bc368_4127b1c9
PS1, Line 397: Transmitting
> Given that you're changing "Received" to "Rx", I suggest to use "Tx" here for consistency.
Ack
https://gerrit.osmocom.org/c/osmo-cbc/+/28819/comment/88b42868_4a92312f
PS1, Line 403: LOGPSBCAPC(link, LOGL_DEBUG, "Encoded message %s: %s\n",
> Isn't it redundant to print PDU name here? […]
Yes, I'm printing it as debug after encoding it, this is helpful to find out that it was encoded successfuly.
--
To view, visit https://gerrit.osmocom.org/c/osmo-cbc/+/28819
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-cbc
Gerrit-Branch: master
Gerrit-Change-Id: Ifd1eca79bf4fac63de8066cd6a18004138d51d04
Gerrit-Change-Number: 28819
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Comment-Date: Wed, 27 Jul 2022 18:44:03 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: comment
Attention is currently required from: pespin.
fixeria has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-cbc/+/28823 )
Change subject: sbcap: Store reported failed TAIs from WriteReplaceResponse in cbc_message_peer
......................................................................
Patch Set 2: Code-Review+1
--
To view, visit https://gerrit.osmocom.org/c/osmo-cbc/+/28823
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-cbc
Gerrit-Branch: master
Gerrit-Change-Id: I37b08aa374c1097d2871bf69a7bb7893f32bccd3
Gerrit-Change-Number: 28823
Gerrit-PatchSet: 2
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-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Wed, 27 Jul 2022 18:40:44 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
Attention is currently required from: pespin.
fixeria has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-cbc/+/28820 )
Change subject: Move cbc_cell_id2str() and make it public
......................................................................
Patch Set 1: Code-Review+2
--
To view, visit https://gerrit.osmocom.org/c/osmo-cbc/+/28820
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-cbc
Gerrit-Branch: master
Gerrit-Change-Id: I74ccbbc810a2fa76fb2999a7588b3f67d4d21e03
Gerrit-Change-Number: 28820
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Wed, 27 Jul 2022 18:37:26 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
Attention is currently required from: pespin.
fixeria has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-cbc/+/28819 )
Change subject: sbcap: Log info about messages received and trasmitted
......................................................................
Patch Set 1: Code-Review+1
(2 comments)
File src/sbcap_link.c:
https://gerrit.osmocom.org/c/osmo-cbc/+/28819/comment/a41dd2dc_8b53bba9
PS1, Line 397: Transmitting
Given that you're changing "Received" to "Rx", I suggest to use "Tx" here for consistency.
https://gerrit.osmocom.org/c/osmo-cbc/+/28819/comment/3727e0f3_78007760
PS1, Line 403: LOGPSBCAPC(link, LOGL_DEBUG, "Encoded message %s: %s\n",
Isn't it redundant to print PDU name here?
You're already printing it on line 398 ("Transmitting msg %s").
--
To view, visit https://gerrit.osmocom.org/c/osmo-cbc/+/28819
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-cbc
Gerrit-Branch: master
Gerrit-Change-Id: Ifd1eca79bf4fac63de8066cd6a18004138d51d04
Gerrit-Change-Number: 28819
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Wed, 27 Jul 2022 18:36:56 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
Gerrit-MessageType: comment
Attention is currently required from: pespin.
pespin has removed a vote from this change. ( https://gerrit.osmocom.org/c/osmo-cbc/+/28823 )
Change subject: sbcap: Store reported failed TAIs from WriteReplaceResponse in cbc_message_peer
......................................................................
Removed Verified-1 by Jenkins Builder (1000002)
--
To view, visit https://gerrit.osmocom.org/c/osmo-cbc/+/28823
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-cbc
Gerrit-Branch: master
Gerrit-Change-Id: I37b08aa374c1097d2871bf69a7bb7893f32bccd3
Gerrit-Change-Number: 28823
Gerrit-PatchSet: 2
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: deleteVote
Hello Jenkins Builder,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-cbc/+/28821
to look at the new patch set (#2).
Change subject: Move ASN1C enc/dec logging to its own category
......................................................................
Move ASN1C enc/dec logging to its own category
ASN1C encoding/decoding can get really verbose. Furthermore, it should
only be enabled under really specific conditions, so it makes sense to
have it under its own category.
Change-Id: Ia4cbae2395532d9b5b7b9177a7d0f31bf777d751
---
M doc/examples/osmo-cbc/osmo-cbc.cfg
M include/osmocom/cbc/debug.h
M include/osmocom/sbcap/sbcap_common.h
M include/osmocom/sbcap/sbcap_internal.h
M src/cbc_main.c
M src/sbcap/sbcap_common.c
M tests/sbcap/sbcap_test.c
7 files changed, 29 insertions(+), 12 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-cbc refs/changes/21/28821/2
--
To view, visit https://gerrit.osmocom.org/c/osmo-cbc/+/28821
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-cbc
Gerrit-Branch: master
Gerrit-Change-Id: Ia4cbae2395532d9b5b7b9177a7d0f31bf777d751
Gerrit-Change-Number: 28821
Gerrit-PatchSet: 2
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-MessageType: newpatchset
Attention is currently required from: pespin.
Hello Jenkins Builder,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-cbc/+/28823
to look at the new patch set (#2).
Change subject: sbcap: Store reported failed TAIs from WriteReplaceResponse in cbc_message_peer
......................................................................
sbcap: Store reported failed TAIs from WriteReplaceResponse in cbc_message_peer
Change-Id: I37b08aa374c1097d2871bf69a7bb7893f32bccd3
---
M include/osmocom/cbc/cbc_data.h
M include/osmocom/cbc/sbcap_msg.h
M src/cbc_data.c
M src/sbcap_msg.c
M src/smscb_peer_fsm.c
5 files changed, 52 insertions(+), 3 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-cbc refs/changes/23/28823/2
--
To view, visit https://gerrit.osmocom.org/c/osmo-cbc/+/28823
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-cbc
Gerrit-Branch: master
Gerrit-Change-Id: I37b08aa374c1097d2871bf69a7bb7893f32bccd3
Gerrit-Change-Number: 28823
Gerrit-PatchSet: 2
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: newpatchset
Attention is currently required from: pespin.
Hello Jenkins Builder,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-cbc/+/28822
to look at the new patch set (#2).
Change subject: sbcap: Request and handle Write Replace Warning Indication
......................................................................
sbcap: Request and handle Write Replace Warning Indication
Change-Id: I563e7d1c999f14b8197bb41e85b7bcf6262fe2a0
---
M include/osmocom/cbc/cbc_data.h
M include/osmocom/cbc/sbcap_msg.h
M include/osmocom/cbc/smscb_message_fsm.h
M src/cbc_data.c
M src/sbcap_link_fsm.c
M src/sbcap_msg.c
M src/smscb_peer_fsm.c
7 files changed, 81 insertions(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-cbc refs/changes/22/28822/2
--
To view, visit https://gerrit.osmocom.org/c/osmo-cbc/+/28822
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-cbc
Gerrit-Branch: master
Gerrit-Change-Id: I563e7d1c999f14b8197bb41e85b7bcf6262fe2a0
Gerrit-Change-Number: 28822
Gerrit-PatchSet: 2
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: newpatchset
pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-cbc/+/28824 )
Change subject: sbcap: Improve handling of WriteReplaceWarnResponse
......................................................................
sbcap: Improve handling of WriteReplaceWarnResponse
If cause != accepted, submit a NACK to the upper layers.
In that case, in the upper layers we don't want to parse the PDU IE
"Unknown Tracking Area List" since it shouldn't be there. 3GPP TS
29.168 4.3.4.3.6 states:
"""
This IE shall only be included if the Cause IE indicates Message accepted, which means the MME will proceed with the
request for Tracking Areas that are known to the MME. The Cause IE indicating Tracking area not valid is used when
all Tracking Areas in the Request are invalid.
"""
Change-Id: I0a4d5bdbb6c4fd3870a4f4ebf226668b70fea06a
---
M src/sbcap_link_fsm.c
1 file changed, 29 insertions(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-cbc refs/changes/24/28824/1
diff --git a/src/sbcap_link_fsm.c b/src/sbcap_link_fsm.c
index 6a50e91..f2cbe82 100644
--- a/src/sbcap_link_fsm.c
+++ b/src/sbcap_link_fsm.c
@@ -241,6 +241,34 @@
return 0;
}
+/* Rx Write Replace Warning Response from peer */
+static int cbc_sbcap_link_rx_write_replace_warn_resp(struct cbc_sbcap_link *link,
+ struct cbc_message_peer *mp,
+ SBcAP_SBC_AP_PDU_t *pdu)
+{
+ A_SEQUENCE_OF(void) *as_pdu;
+ SBcAP_Write_Replace_Warning_Response_IEs_t *ie;
+ SBcAP_SBC_AP_PDU_t *err_ind_pdu;
+ int ev = SMSCB_E_SBCAP_WRITE_ACK;
+
+ as_pdu = (void *)&pdu->choice.successfulOutcome.value.choice.Write_Replace_Warning_Response.protocolIEs.list;
+
+ /* static const long asn_VAL_19_SBcAP_id_Cause = 1; */
+ ie = sbcap_as_find_ie(as_pdu, 1);
+ if (ie) {
+ if (ie->value.choice.Cause != SBcAP_Cause_message_accepted)
+ ev = SMSCB_E_SBCAP_WRITE_NACK;
+ } else { /* This shouldn't happen, the IE is Mandatory... */
+ ev = SMSCB_E_SBCAP_WRITE_NACK;
+ err_ind_pdu = sbcap_gen_error_ind(link,
+ SBcAP_Cause_missing_mandatory_element, pdu);
+ if (err_ind_pdu)
+ cbc_sbcap_link_tx(link, err_ind_pdu);
+ }
+
+ return osmo_fsm_inst_dispatch(mp->fi, ev, pdu);
+}
+
/* message was received from remote SBc-AP peer (MME) */
int cbc_sbcap_link_rx_cb(struct cbc_sbcap_link *link, SBcAP_SBC_AP_PDU_t *pdu)
{
@@ -345,7 +373,7 @@
//if (dec->u.write_replace_compl.old_serial_nr)
// return osmo_fsm_inst_dispatch(mp->fi, SMSCB_E_SBcAP_REPLACE_ACK, dec);
//else
- return osmo_fsm_inst_dispatch(mp->fi, SMSCB_E_SBCAP_WRITE_ACK, pdu);
+ return cbc_sbcap_link_rx_write_replace_warn_resp(link, mp, pdu);
case SBcAP_ProcedureId_Stop_Warning:
return osmo_fsm_inst_dispatch(mp->fi, SMSCB_E_SBCAP_DELETE_ACK, pdu);
default:
--
To view, visit https://gerrit.osmocom.org/c/osmo-cbc/+/28824
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-cbc
Gerrit-Branch: master
Gerrit-Change-Id: I0a4d5bdbb6c4fd3870a4f4ebf226668b70fea06a
Gerrit-Change-Number: 28824
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: newchange