From: Stephen Hemminger <stephen@networkplumber.org>
To: dev@dpdk.org
Cc: Stephen Hemminger <stephen@networkplumber.org>,
Reshma Pattan <reshma.pattan@intel.com>
Subject: [PATCH v6 6/8] latencystats: enforce that unused callback function is NULL
Date: Wed, 29 May 2024 15:54:43 -0700 [thread overview]
Message-ID: <20240529225732.442539-7-stephen@networkplumber.org> (raw)
In-Reply-To: <20240529225732.442539-1-stephen@networkplumber.org>
ISO C does not allow casting function pointer to void *.
Resolve by enforcing the reserved argument.
The user_cb argument for rte_latencystats_init() was not
implemented, and had to be NULL anyway.
The log type is local to this function and therefore
can be local to this file.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
---
lib/latencystats/rte_latencystats.c | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/lib/latencystats/rte_latencystats.c b/lib/latencystats/rte_latencystats.c
index bd8fde2f0c..8311adb411 100644
--- a/lib/latencystats/rte_latencystats.c
+++ b/lib/latencystats/rte_latencystats.c
@@ -30,7 +30,7 @@
static double cycles_per_ns;
-RTE_LOG_REGISTER_DEFAULT(latencystat_logtype, INFO);
+static RTE_LOG_REGISTER_DEFAULT(latencystat_logtype, INFO);
#define RTE_LOGTYPE_LATENCY_STATS latencystat_logtype
#define LATENCY_STATS_LOG(level, ...) \
RTE_LOG_LINE(level, LATENCY_STATS, "" __VA_ARGS__)
@@ -246,6 +246,10 @@ rte_latencystats_init(uint64_t app_samp_intvl,
if (rte_memzone_lookup(MZ_RTE_LATENCY_STATS))
return -EEXIST;
+ /** Reserved for possible future use */
+ if (user_cb != NULL)
+ return -ENOTSUP;
+
/** Allocate stats in shared memory fo multi process support */
mz = rte_memzone_reserve(MZ_RTE_LATENCY_STATS, sizeof(*glob_stats),
rte_socket_id(), flags);
@@ -298,7 +302,7 @@ rte_latencystats_init(uint64_t app_samp_intvl,
for (qid = 0; qid < dev_info.nb_rx_queues; qid++) {
cbs = &rx_cbs[pid][qid];
cbs->cb = rte_eth_add_first_rx_callback(pid, qid,
- add_time_stamps, user_cb);
+ add_time_stamps, NULL);
if (!cbs->cb)
LATENCY_STATS_LOG(NOTICE,
"Failed to register Rx callback for pid=%u, qid=%u",
@@ -307,7 +311,7 @@ rte_latencystats_init(uint64_t app_samp_intvl,
for (qid = 0; qid < dev_info.nb_tx_queues; qid++) {
cbs = &tx_cbs[pid][qid];
cbs->cb = rte_eth_add_tx_callback(pid, qid,
- calc_latency, user_cb);
+ calc_latency, NULL);
if (!cbs->cb)
LATENCY_STATS_LOG(NOTICE,
"Failed to register Tx callback for pid=%u, qid=%u",
--
2.43.0
next prev parent reply other threads:[~2024-05-29 22:58 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-04-08 19:50 [RFC] latencystats: performance overhaul Stephen Hemminger
2024-04-08 21:26 ` [PATCH v2] " Stephen Hemminger
2024-04-19 17:28 ` [PATCH v4 0/6] latencystats: cleanup Stephen Hemminger
2024-04-19 17:28 ` [PATCH v4 1/6] latencystats: replace use of VLA Stephen Hemminger
2024-04-19 17:28 ` [PATCH v4 2/6] latencystats: handle fractional cycles per ns Stephen Hemminger
2024-04-19 17:28 ` [PATCH v4 3/6] latencystats: do not use floating point Stephen Hemminger
2024-04-19 18:49 ` Morten Brørup
2024-04-19 22:45 ` Stephen Hemminger
2024-04-20 7:31 ` Morten Brørup
2024-04-19 17:28 ` [PATCH v4 4/6] latencystats: fix log messages Stephen Hemminger
2024-04-19 17:28 ` [PATCH v4 5/6] latencystats: update include files Stephen Hemminger
2024-04-19 17:28 ` [PATCH v4 6/6] latencystats: fix for pedantic warnings Stephen Hemminger
2024-04-22 15:21 ` [PATCH v5 0/9] latencystats: improve algorithms and tests Stephen Hemminger
2024-04-22 15:21 ` [PATCH v5 1/9] latencystats: replace use of VLA Stephen Hemminger
2024-04-22 15:21 ` [PATCH v5 2/9] latencystats: handle fractional cycles per ns Stephen Hemminger
2024-04-22 15:21 ` [PATCH v5 3/9] latencystats: do not use floating point Stephen Hemminger
2024-04-22 15:21 ` [PATCH v5 4/9] latencystats: fix log messages Stephen Hemminger
2024-04-22 15:21 ` [PATCH v5 5/9] latencystats: update include files Stephen Hemminger
2024-04-22 15:21 ` [PATCH v5 6/9] latencystats: enforce that unused callback function is NULL Stephen Hemminger
2024-04-22 15:21 ` [PATCH v5 7/9] latencystats: add metric for number of samples Stephen Hemminger
2024-04-22 15:21 ` [PATCH v5 8/9] test: use initialization in latencystats test Stephen Hemminger
2024-04-22 15:21 ` [PATCH v5 9/9] test: add more latencystats tests Stephen Hemminger
2024-05-29 22:54 ` [PATCH v6 0/8] latencystats: improvements to algorithm and test Stephen Hemminger
2024-05-29 22:54 ` [PATCH v6 1/8] latencystats: replace use of VLA Stephen Hemminger
2024-05-29 22:54 ` [PATCH v6 2/8] latencystats: handle fractional cycles per ns Stephen Hemminger
2024-05-29 22:54 ` [PATCH v6 3/8] latencystats: do not use floating point Stephen Hemminger
2024-05-29 22:54 ` [PATCH v6 4/8] latencystats: fix log messages Stephen Hemminger
2024-05-29 22:54 ` [PATCH v6 5/8] latencystats: update include files Stephen Hemminger
2024-05-29 22:54 ` Stephen Hemminger [this message]
2024-05-29 22:54 ` [PATCH v6 7/8] latencystats: add metric for number of samples Stephen Hemminger
2024-05-29 22:54 ` [PATCH v6 8/8] test: update to latencystats tests Stephen Hemminger
2024-07-04 15:21 ` [PATCH v6 0/8] latencystats: improvements to algorithm and test David Marchand
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=20240529225732.442539-7-stephen@networkplumber.org \
--to=stephen@networkplumber.org \
--cc=dev@dpdk.org \
--cc=reshma.pattan@intel.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.
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 NNTP newsgroup(s).