From: Stephen Hemminger <stephen@networkplumber.org>
To: dev@dpdk.org
Cc: Stephen Hemminger <stephen@networkplumber.org>,
Bruce Richardson <bruce.richardson@intel.com>,
Kirill Rybalchenko <kirill.rybalchenko@intel.com>
Subject: [PATCH v2 14/23] examples/ptpclient: resolve shadow variable warnings
Date: Tue, 7 Apr 2026 08:16:10 -0700 [thread overview]
Message-ID: <20260407151732.272195-15-stephen@networkplumber.org> (raw)
In-Reply-To: <20260407151732.272195-1-stephen@networkplumber.org>
Rename function parameters that shadow global variables.
In port_init() rename mbuf_pool to mp, and in print_clock_info(),
delta_eval(), parse_sync(), parse_fup(), and parse_drsp()
rename ptp_data to ptp.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
---
examples/ptpclient/meson.build | 1 -
examples/ptpclient/ptpclient.c | 138 ++++++++++++++++-----------------
2 files changed, 69 insertions(+), 70 deletions(-)
diff --git a/examples/ptpclient/meson.build b/examples/ptpclient/meson.build
index 2e9b7625fc..47d091ea21 100644
--- a/examples/ptpclient/meson.build
+++ b/examples/ptpclient/meson.build
@@ -10,4 +10,3 @@ allow_experimental_apis = true
sources = files(
'ptpclient.c',
)
-cflags += no_shadow_cflag
diff --git a/examples/ptpclient/ptpclient.c b/examples/ptpclient/ptpclient.c
index 174ca5dd70..8e1560a3ac 100644
--- a/examples/ptpclient/ptpclient.c
+++ b/examples/ptpclient/ptpclient.c
@@ -173,7 +173,7 @@ ns_to_timeval(int64_t nsec)
* coming from the mbuf_pool passed as a parameter.
*/
static inline int
-port_init(uint16_t port, struct rte_mempool *mbuf_pool)
+port_init(uint16_t port, struct rte_mempool *mp)
{
struct rte_eth_dev_info dev_info;
struct rte_eth_conf port_conf;
@@ -223,7 +223,7 @@ port_init(uint16_t port, struct rte_mempool *mbuf_pool)
rxconf->offloads = port_conf.rxmode.offloads;
retval = rte_eth_rx_queue_setup(port, q, nb_rxd,
- rte_eth_dev_socket_id(port), rxconf, mbuf_pool);
+ rte_eth_dev_socket_id(port), rxconf, mp);
if (retval < 0)
return retval;
@@ -266,42 +266,42 @@ port_init(uint16_t port, struct rte_mempool *mbuf_pool)
}
static void
-print_clock_info(struct ptpv2_time_receiver_ordinary *ptp_data)
+print_clock_info(struct ptpv2_time_receiver_ordinary *ptp)
{
int64_t nsec;
struct timespec net_time, sys_time;
printf("time transmitter clock id: %02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x",
- ptp_data->transmitter_clock_id.id[0],
- ptp_data->transmitter_clock_id.id[1],
- ptp_data->transmitter_clock_id.id[2],
- ptp_data->transmitter_clock_id.id[3],
- ptp_data->transmitter_clock_id.id[4],
- ptp_data->transmitter_clock_id.id[5],
- ptp_data->transmitter_clock_id.id[6],
- ptp_data->transmitter_clock_id.id[7]);
+ ptp->transmitter_clock_id.id[0],
+ ptp->transmitter_clock_id.id[1],
+ ptp->transmitter_clock_id.id[2],
+ ptp->transmitter_clock_id.id[3],
+ ptp->transmitter_clock_id.id[4],
+ ptp->transmitter_clock_id.id[5],
+ ptp->transmitter_clock_id.id[6],
+ ptp->transmitter_clock_id.id[7]);
printf("\nT2 - time receiver clock. %lds %ldns",
- (ptp_data->tstamp2.tv_sec),
- (ptp_data->tstamp2.tv_nsec));
+ (ptp->tstamp2.tv_sec),
+ (ptp->tstamp2.tv_nsec));
printf("\nT1 - time transmitter clock. %lds %ldns ",
- ptp_data->tstamp1.tv_sec,
- (ptp_data->tstamp1.tv_nsec));
+ ptp->tstamp1.tv_sec,
+ (ptp->tstamp1.tv_nsec));
printf("\nT3 - time receiver clock. %lds %ldns",
- ptp_data->tstamp3.tv_sec,
- (ptp_data->tstamp3.tv_nsec));
+ ptp->tstamp3.tv_sec,
+ (ptp->tstamp3.tv_nsec));
printf("\nT4 - time transmitter clock. %lds %ldns\n",
- ptp_data->tstamp4.tv_sec,
- (ptp_data->tstamp4.tv_nsec));
+ ptp->tstamp4.tv_sec,
+ (ptp->tstamp4.tv_nsec));
printf("\nDelta between transmitter and receiver clocks:%"PRId64"ns\n",
- ptp_data->delta);
+ ptp->delta);
clock_gettime(CLOCK_REALTIME, &sys_time);
- rte_eth_timesync_read_time(ptp_data->current_ptp_port,
+ rte_eth_timesync_read_time(ptp->current_ptp_port,
&net_time);
time_t ts = net_time.tv_sec;
@@ -313,14 +313,14 @@ print_clock_info(struct ptpv2_time_receiver_ordinary *ptp_data)
nsec = (int64_t)timespec64_to_ns(&net_time) -
(int64_t)timespec64_to_ns(&sys_time);
- ptp_data->new_adj = ns_to_timeval(nsec);
+ ptp->new_adj = ns_to_timeval(nsec);
- gettimeofday(&ptp_data->new_adj, NULL);
+ gettimeofday(&ptp->new_adj, NULL);
- time_t tp = ptp_data->new_adj.tv_sec;
+ time_t tp = ptp->new_adj.tv_sec;
printf("\nCurrent SYS Time: %.24s %.6ld ns",
- ctime(&tp), ptp_data->new_adj.tv_usec);
+ ctime(&tp), ptp->new_adj.tv_usec);
printf("\nDelta between PTP and Linux Kernel time:%"PRId64"ns\n",
nsec);
@@ -332,7 +332,7 @@ print_clock_info(struct ptpv2_time_receiver_ordinary *ptp_data)
}
static int64_t
-delta_eval(struct ptpv2_time_receiver_ordinary *ptp_data)
+delta_eval(struct ptpv2_time_receiver_ordinary *ptp)
{
int64_t delta;
uint64_t t1 = 0;
@@ -340,10 +340,10 @@ delta_eval(struct ptpv2_time_receiver_ordinary *ptp_data)
uint64_t t3 = 0;
uint64_t t4 = 0;
- t1 = timespec64_to_ns(&ptp_data->tstamp1);
- t2 = timespec64_to_ns(&ptp_data->tstamp2);
- t3 = timespec64_to_ns(&ptp_data->tstamp3);
- t4 = timespec64_to_ns(&ptp_data->tstamp4);
+ t1 = timespec64_to_ns(&ptp->tstamp1);
+ t2 = timespec64_to_ns(&ptp->tstamp2);
+ t3 = timespec64_to_ns(&ptp->tstamp3);
+ t4 = timespec64_to_ns(&ptp->tstamp4);
delta = -((int64_t)((t2 - t1) - (t4 - t3))) / 2;
@@ -354,26 +354,26 @@ delta_eval(struct ptpv2_time_receiver_ordinary *ptp_data)
* Parse the PTP SYNC message.
*/
static void
-parse_sync(struct ptpv2_time_receiver_ordinary *ptp_data, uint16_t rx_tstamp_idx)
+parse_sync(struct ptpv2_time_receiver_ordinary *ptp, uint16_t rx_tstamp_idx)
{
struct ptp_header *ptp_hdr;
- ptp_hdr = rte_pktmbuf_mtod_offset(ptp_data->m, struct ptp_header *,
+ ptp_hdr = rte_pktmbuf_mtod_offset(ptp->m, struct ptp_header *,
sizeof(struct rte_ether_hdr));
- ptp_data->seqID_SYNC = rte_be_to_cpu_16(ptp_hdr->seq_id);
+ ptp->seqID_SYNC = rte_be_to_cpu_16(ptp_hdr->seq_id);
- if (ptp_data->ptpset == 0) {
- ptp_data->transmitter_clock_id = ptp_hdr->source_port_id.clock_id;
- ptp_data->ptpset = 1;
+ if (ptp->ptpset == 0) {
+ ptp->transmitter_clock_id = ptp_hdr->source_port_id.clock_id;
+ ptp->ptpset = 1;
}
- if (memcmp(&ptp_data->transmitter_clock_id,
+ if (memcmp(&ptp->transmitter_clock_id,
&ptp_hdr->source_port_id.clock_id,
sizeof(struct clock_id)) == 0) {
- if (ptp_data->ptpset == 1)
- rte_eth_timesync_read_rx_timestamp(ptp_data->portid,
- &ptp_data->tstamp2, rx_tstamp_idx);
+ if (ptp->ptpset == 1)
+ rte_eth_timesync_read_rx_timestamp(ptp->portid,
+ &ptp->tstamp2, rx_tstamp_idx);
}
}
@@ -382,7 +382,7 @@ parse_sync(struct ptpv2_time_receiver_ordinary *ptp_data, uint16_t rx_tstamp_idx
* Parse the PTP FOLLOWUP message and send DELAY_REQ to the main clock.
*/
static void
-parse_fup(struct ptpv2_time_receiver_ordinary *ptp_data)
+parse_fup(struct ptpv2_time_receiver_ordinary *ptp)
{
struct rte_ether_hdr *eth_hdr;
struct rte_ether_addr eth_addr;
@@ -395,32 +395,32 @@ parse_fup(struct ptpv2_time_receiver_ordinary *ptp_data)
struct rte_ether_addr eth_multicast = ether_multicast;
size_t pkt_size;
int wait_us;
- struct rte_mbuf *m = ptp_data->m;
+ struct rte_mbuf *m = ptp->m;
int ret;
eth_hdr = rte_pktmbuf_mtod(m, struct rte_ether_hdr *);
ptp_hdr = rte_pktmbuf_mtod_offset(m, struct ptp_header *,
sizeof(struct rte_ether_hdr));
- if (memcmp(&ptp_data->transmitter_clock_id,
+ if (memcmp(&ptp->transmitter_clock_id,
&ptp_hdr->source_port_id.clock_id,
sizeof(struct clock_id)) != 0)
return;
- ptp_data->seqID_FOLLOWUP = rte_be_to_cpu_16(ptp_hdr->seq_id);
+ ptp->seqID_FOLLOWUP = rte_be_to_cpu_16(ptp_hdr->seq_id);
ptp_msg = rte_pktmbuf_mtod_offset(m, struct ptp_message *,
sizeof(struct rte_ether_hdr));
origin_tstamp = &ptp_msg->follow_up.precise_origin_tstamp;
- ptp_data->tstamp1.tv_nsec = ntohl(origin_tstamp->ns);
- ptp_data->tstamp1.tv_sec =
+ ptp->tstamp1.tv_nsec = ntohl(origin_tstamp->ns);
+ ptp->tstamp1.tv_sec =
((uint64_t)ntohl(origin_tstamp->sec_lsb)) |
(((uint64_t)ntohs(origin_tstamp->sec_msb)) << 32);
- if (ptp_data->seqID_FOLLOWUP == ptp_data->seqID_SYNC) {
- ret = rte_eth_macaddr_get(ptp_data->portid, ð_addr);
+ if (ptp->seqID_FOLLOWUP == ptp->seqID_SYNC) {
+ ret = rte_eth_macaddr_get(ptp->portid, ð_addr);
if (ret != 0) {
printf("\nCore %u: port %u failed to get MAC address: %s\n",
- rte_lcore_id(), ptp_data->portid,
+ rte_lcore_id(), ptp->portid,
rte_strerror(-ret));
return;
}
@@ -446,7 +446,7 @@ parse_fup(struct ptpv2_time_receiver_ordinary *ptp_data)
struct delay_req_msg *, sizeof(struct
rte_ether_hdr));
- req_msg->hdr.seq_id = htons(ptp_data->seqID_SYNC);
+ req_msg->hdr.seq_id = htons(ptp->seqID_SYNC);
req_msg->hdr.msg_type = DELAY_REQ;
req_msg->hdr.ver = 2;
req_msg->hdr.control = 1;
@@ -468,25 +468,25 @@ parse_fup(struct ptpv2_time_receiver_ordinary *ptp_data)
client_clkid->id[6] = eth_hdr->src_addr.addr_bytes[4];
client_clkid->id[7] = eth_hdr->src_addr.addr_bytes[5];
- ptp_data->client_clock_id = *client_clkid;
+ ptp->client_clock_id = *client_clkid;
/* Enable flag for hardware timestamping. */
created_pkt->ol_flags |= RTE_MBUF_F_TX_IEEE1588_TMST;
/*Read value from NIC to prevent latching with old value. */
- rte_eth_timesync_read_tx_timestamp(ptp_data->portid,
- &ptp_data->tstamp3);
+ rte_eth_timesync_read_tx_timestamp(ptp->portid,
+ &ptp->tstamp3);
/* Transmit the packet. */
- rte_eth_tx_burst(ptp_data->portid, 0, &created_pkt, 1);
+ rte_eth_tx_burst(ptp->portid, 0, &created_pkt, 1);
wait_us = 0;
- ptp_data->tstamp3.tv_nsec = 0;
- ptp_data->tstamp3.tv_sec = 0;
+ ptp->tstamp3.tv_nsec = 0;
+ ptp->tstamp3.tv_sec = 0;
/* Wait at least 1 us to read TX timestamp. */
- while ((rte_eth_timesync_read_tx_timestamp(ptp_data->portid,
- &ptp_data->tstamp3) < 0) && (wait_us < 1000)) {
+ while ((rte_eth_timesync_read_tx_timestamp(ptp->portid,
+ &ptp->tstamp3) < 0) && (wait_us < 1000)) {
rte_delay_us(1);
wait_us++;
}
@@ -530,9 +530,9 @@ update_kernel_time(void)
* Parse the DELAY_RESP message.
*/
static void
-parse_drsp(struct ptpv2_time_receiver_ordinary *ptp_data)
+parse_drsp(struct ptpv2_time_receiver_ordinary *ptp)
{
- struct rte_mbuf *m = ptp_data->m;
+ struct rte_mbuf *m = ptp->m;
struct ptp_message *ptp_msg;
struct tstamp *rx_tstamp;
uint16_t seq_id;
@@ -540,26 +540,26 @@ parse_drsp(struct ptpv2_time_receiver_ordinary *ptp_data)
ptp_msg = rte_pktmbuf_mtod_offset(m, struct ptp_message *,
sizeof(struct rte_ether_hdr));
seq_id = rte_be_to_cpu_16(ptp_msg->delay_resp.hdr.seq_id);
- if (memcmp(&ptp_data->client_clock_id,
+ if (memcmp(&ptp->client_clock_id,
&ptp_msg->delay_resp.req_port_id.clock_id,
sizeof(struct clock_id)) == 0) {
- if (seq_id == ptp_data->seqID_FOLLOWUP) {
+ if (seq_id == ptp->seqID_FOLLOWUP) {
rx_tstamp = &ptp_msg->delay_resp.rx_tstamp;
- ptp_data->tstamp4.tv_nsec = ntohl(rx_tstamp->ns);
- ptp_data->tstamp4.tv_sec =
+ ptp->tstamp4.tv_nsec = ntohl(rx_tstamp->ns);
+ ptp->tstamp4.tv_sec =
((uint64_t)ntohl(rx_tstamp->sec_lsb)) |
(((uint64_t)ntohs(rx_tstamp->sec_msb)) << 32);
/* Evaluate the delta for adjustment. */
- ptp_data->delta = delta_eval(ptp_data);
+ ptp->delta = delta_eval(ptp);
- rte_eth_timesync_adjust_time(ptp_data->portid,
- ptp_data->delta);
+ rte_eth_timesync_adjust_time(ptp->portid,
+ ptp->delta);
- ptp_data->current_ptp_port = ptp_data->portid;
+ ptp->current_ptp_port = ptp->portid;
/* Update kernel time if enabled in app parameters. */
- if (ptp_data->kernel_time_set == 1)
+ if (ptp->kernel_time_set == 1)
update_kernel_time();
--
2.53.0
next prev parent reply other threads:[~2026-04-07 15:19 UTC|newest]
Thread overview: 51+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-04-07 3:49 [PATCH 00/23] examples: enable -Wshadow across all examples Stephen Hemminger
2026-04-07 3:49 ` [PATCH 01/23] examples/ethtool: fix shadow variable warning Stephen Hemminger
2026-04-07 3:49 ` [PATCH 02/23] examples/eventdev_pipeline: " Stephen Hemminger
2026-04-07 3:49 ` [PATCH 03/23] examples/dma: fix shadow variable warnings Stephen Hemminger
2026-04-07 3:49 ` [PATCH 04/23] examples/packet_ordering: fix shadow variable warning Stephen Hemminger
2026-04-07 3:49 ` [PATCH 05/23] examples/bond: fix shadow variable warnings Stephen Hemminger
2026-04-07 3:49 ` [PATCH 06/23] examples/vmdq: fix shadow variable warning Stephen Hemminger
2026-04-07 3:49 ` [PATCH 07/23] examples/server_node_efd: fix shadowed variable Stephen Hemminger
2026-04-07 3:49 ` [PATCH 08/23] examples/flow_filtering: fix shadowed variables Stephen Hemminger
2026-04-07 3:49 ` [PATCH 09/23] examples/ipsec-secgw: " Stephen Hemminger
2026-04-07 3:49 ` [PATCH 10/23] examples/ip_pipeline: fix shadow variable Stephen Hemminger
2026-04-07 3:49 ` [PATCH 11/23] examples/multi_process: fix shadowed variable Stephen Hemminger
2026-04-07 3:49 ` [PATCH 12/23] examples/vm_power_manage: enable shadow warnings Stephen Hemminger
2026-04-07 3:49 ` [PATCH 13/23] examples/bbdev_app: " Stephen Hemminger
2026-04-07 3:49 ` [PATCH 14/23] examples/ptpclient: fix shadow variable warnings Stephen Hemminger
2026-04-07 3:49 ` [PATCH 15/23] examples/vhost: fix shadow warnings Stephen Hemminger
2026-04-07 3:49 ` [PATCH 16/23] examples/qos_sched: eliminate shadowed variables Stephen Hemminger
2026-04-07 3:49 ` [PATCH 17/23] examples/l2fwd-jobstats: fix shadowed variable Stephen Hemminger
2026-04-07 3:49 ` [PATCH 18/23] examples/l2fwd-crypto: remove no shadow flag Stephen Hemminger
2026-04-07 3:49 ` [PATCH 19/23] examples/l2fwd-event: " Stephen Hemminger
2026-04-07 3:49 ` [PATCH 20/23] examples/l2fwd-keepalive: fix shadow variable warning Stephen Hemminger
2026-04-07 3:49 ` [PATCH 21/23] examples/l3fwd-graph: remove no shadow flag Stephen Hemminger
2026-04-07 3:49 ` [PATCH 22/23] examples/l3fwd: fix shadow variable warnings Stephen Hemminger
2026-04-07 3:49 ` [PATCH 23/23] examples/l3fwd-power: " Stephen Hemminger
2026-04-07 9:22 ` [PATCH 00/23] examples: enable -Wshadow across all examples Bruce Richardson
2026-04-07 15:15 ` [PATCH v2 00/23] examples: fix -Wshadow warnings Stephen Hemminger
2026-04-07 15:15 ` [PATCH v2 01/23] examples/ethtool: resolve shadow variable warnings Stephen Hemminger
2026-04-08 0:32 ` fengchengwen
2026-04-07 15:15 ` [PATCH v2 02/23] examples/eventdev_pipeline: resolve shadow variable warning Stephen Hemminger
2026-04-07 15:15 ` [PATCH v2 03/23] examples/dma: resolve shadow variable warnings Stephen Hemminger
2026-04-08 0:30 ` fengchengwen
2026-04-07 15:16 ` [PATCH v2 04/23] examples/packet_ordering: resolve shadow variable warning Stephen Hemminger
2026-04-07 15:16 ` [PATCH v2 05/23] examples/bond: resolve shadow variable warnings Stephen Hemminger
2026-04-07 15:16 ` [PATCH v2 06/23] examples/vmdq: resolve shadow variable warning Stephen Hemminger
2026-04-07 15:16 ` [PATCH v2 07/23] examples/server_node_efd: " Stephen Hemminger
2026-04-07 15:16 ` [PATCH v2 08/23] examples/flow_filtering: resolve shadowed variable warnings Stephen Hemminger
2026-04-07 15:16 ` [PATCH v2 09/23] examples/ipsec-secgw: " Stephen Hemminger
2026-04-07 15:16 ` [PATCH v2 10/23] examples/ip_pipeline: resolve shadow variable warning Stephen Hemminger
2026-04-07 15:16 ` [PATCH v2 11/23] examples/multi_process: resolve shadowed variable warnings Stephen Hemminger
2026-04-07 15:16 ` [PATCH v2 12/23] examples/vm_power_manage: enable shadow warnings Stephen Hemminger
2026-04-07 15:16 ` [PATCH v2 13/23] examples/bbdev_app: " Stephen Hemminger
2026-04-07 15:16 ` Stephen Hemminger [this message]
2026-04-07 15:16 ` [PATCH v2 15/23] examples/vhost: resolve " Stephen Hemminger
2026-04-07 15:16 ` [PATCH v2 16/23] examples/qos_sched: eliminate shadowed variables Stephen Hemminger
2026-04-07 15:16 ` [PATCH v2 17/23] examples/l2fwd-jobstats: resolve shadowed variable Stephen Hemminger
2026-04-07 15:16 ` [PATCH v2 18/23] examples/l2fwd-crypto: resolve shadow variable Stephen Hemminger
2026-04-07 15:16 ` [PATCH v2 19/23] examples/l2fwd-event: resolve shadowed variable Stephen Hemminger
2026-04-07 15:16 ` [PATCH v2 20/23] examples/l2fwd-keepalive: resolve shadow variable warning Stephen Hemminger
2026-04-07 15:16 ` [PATCH v2 21/23] examples/l3fwd-graph: " Stephen Hemminger
2026-04-07 15:16 ` [PATCH v2 22/23] examples/l3fwd: resolve shadow variable warnings Stephen Hemminger
2026-04-07 15:16 ` [PATCH v2 23/23] examples/l3fwd-power: " Stephen Hemminger
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=20260407151732.272195-15-stephen@networkplumber.org \
--to=stephen@networkplumber.org \
--cc=bruce.richardson@intel.com \
--cc=dev@dpdk.org \
--cc=kirill.rybalchenko@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