From: David Gibson <david@gibson.dropbear.id.au>
To: passt-dev@passt.top, Stefano Brivio <sbrivio@redhat.com>
Cc: David Gibson <david@gibson.dropbear.id.au>
Subject: [PATCH v2 09/13] flow: Move flow_log_() to near top of flow.c
Date: Wed, 20 Dec 2023 18:09:04 +1100 [thread overview]
Message-ID: <20231220070908.2506277-10-david@gibson.dropbear.id.au> (raw)
In-Reply-To: <20231220070908.2506277-1-david@gibson.dropbear.id.au>
flow_log_() is a very basic widely used function that many other functions
in flow.c will end up needing. At present it's below flow_table_compact()
which happens not to need it, but that's likely to change. Move it to
near the top of flow.c to avoid forward declarations.
Code motion only, no changes.
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
---
flow.c | 36 ++++++++++++++++++------------------
1 file changed, 18 insertions(+), 18 deletions(-)
diff --git a/flow.c b/flow.c
index ef129db..79c6ae6 100644
--- a/flow.c
+++ b/flow.c
@@ -30,6 +30,24 @@ union flow flowtab[FLOW_MAX];
/* Last time the flow timers ran */
static struct timespec flow_timer_run;
+/** flow_log_ - Log flow-related message
+ * @f: flow the message is related to
+ * @pri: Log priority
+ * @fmt: Format string
+ * @...: printf-arguments
+ */
+void flow_log_(const struct flow_common *f, int pri, const char *fmt, ...)
+{
+ char msg[BUFSIZ];
+ va_list args;
+
+ va_start(args, fmt);
+ (void)vsnprintf(msg, sizeof(msg), fmt, args);
+ va_end(args);
+
+ logmsg(pri, "Flow %u (%s): %s", flow_idx(f), FLOW_TYPE(f), msg);
+}
+
/**
* flow_table_compact() - Perform compaction on flow table
* @c: Execution context
@@ -69,24 +87,6 @@ void flow_table_compact(struct ctx *c, union flow *hole)
memset(from, 0, sizeof(*from));
}
-/** flow_log_ - Log flow-related message
- * @f: flow the message is related to
- * @pri: Log priority
- * @fmt: Format string
- * @...: printf-arguments
- */
-void flow_log_(const struct flow_common *f, int pri, const char *fmt, ...)
-{
- char msg[BUFSIZ];
- va_list args;
-
- va_start(args, fmt);
- (void)vsnprintf(msg, sizeof(msg), fmt, args);
- va_end(args);
-
- logmsg(pri, "Flow %u (%s): %s", flow_idx(f), FLOW_TYPE(f), msg);
-}
-
/**
* flow_defer_handler() - Handler for per-flow deferred and timed tasks
* @c: Execution context
--
@@ -30,6 +30,24 @@ union flow flowtab[FLOW_MAX];
/* Last time the flow timers ran */
static struct timespec flow_timer_run;
+/** flow_log_ - Log flow-related message
+ * @f: flow the message is related to
+ * @pri: Log priority
+ * @fmt: Format string
+ * @...: printf-arguments
+ */
+void flow_log_(const struct flow_common *f, int pri, const char *fmt, ...)
+{
+ char msg[BUFSIZ];
+ va_list args;
+
+ va_start(args, fmt);
+ (void)vsnprintf(msg, sizeof(msg), fmt, args);
+ va_end(args);
+
+ logmsg(pri, "Flow %u (%s): %s", flow_idx(f), FLOW_TYPE(f), msg);
+}
+
/**
* flow_table_compact() - Perform compaction on flow table
* @c: Execution context
@@ -69,24 +87,6 @@ void flow_table_compact(struct ctx *c, union flow *hole)
memset(from, 0, sizeof(*from));
}
-/** flow_log_ - Log flow-related message
- * @f: flow the message is related to
- * @pri: Log priority
- * @fmt: Format string
- * @...: printf-arguments
- */
-void flow_log_(const struct flow_common *f, int pri, const char *fmt, ...)
-{
- char msg[BUFSIZ];
- va_list args;
-
- va_start(args, fmt);
- (void)vsnprintf(msg, sizeof(msg), fmt, args);
- va_end(args);
-
- logmsg(pri, "Flow %u (%s): %s", flow_idx(f), FLOW_TYPE(f), msg);
-}
-
/**
* flow_defer_handler() - Handler for per-flow deferred and timed tasks
* @c: Execution context
--
2.43.0
next prev parent reply other threads:[~2023-12-20 7:09 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-12-20 7:08 [PATCH v2 00/13] Manage more flow related things from generic flow code David Gibson
2023-12-20 7:08 ` [PATCH v2 01/13] flow: Make flow_table.h #include the protocol specific headers it needs David Gibson
2023-12-20 7:08 ` [PATCH v2 02/13] treewide: Standardise on 'now' for current timestamp variables David Gibson
2023-12-20 7:08 ` [PATCH v2 03/13] tcp, tcp_splice: Remove redundant handling from tcp_timer() David Gibson
2023-12-20 7:08 ` [PATCH v2 04/13] tcp, tcp_splice: Move per-type cleanup logic into per-type helpers David Gibson
2023-12-20 7:09 ` [PATCH v2 05/13] flow, tcp: Add flow-centric dispatch for deferred flow handling David Gibson
2023-12-20 7:09 ` [PATCH v2 06/13] flow, tcp: Add handling for per-flow timers David Gibson
2023-12-20 7:09 ` [PATCH v2 07/13] epoll: Better handling of number of epoll types David Gibson
2023-12-20 7:09 ` [PATCH v2 08/13] tcp, tcp_splice: Avoid double layered dispatch for connected TCP sockets David Gibson
2023-12-20 7:09 ` David Gibson [this message]
2023-12-20 7:09 ` [PATCH v2 10/13] flow: Move flow_count from context structure to a global David Gibson
2023-12-20 7:09 ` [PATCH v2 11/13] flow: Abstract helpers for allocating new flows David Gibson
2023-12-20 7:09 ` [PATCH v2 12/13] flow: Enforce that freeing of closed flows must happen in deferred handlers David Gibson
2023-12-20 7:09 ` [PATCH v2 13/13] flow: Avoid moving flow entries to compact table David Gibson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20231220070908.2506277-10-david@gibson.dropbear.id.au \
--to=david@gibson.dropbear.id.au \
--cc=passt-dev@passt.top \
--cc=sbrivio@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://passt.top/passt
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for IMAP folder(s).