All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stephen Hemminger <stephen@networkplumber.org>
To: dev@dpdk.org
Cc: Stephen Hemminger <stephen@networkplumber.org>
Subject: [dpdk-dev] [PATCH v4 4/4] examples/multi_process/client_server_mp/mp_server: use ether format address
Date: Fri, 26 Jul 2019 09:50:54 -0700	[thread overview]
Message-ID: <20190726165054.24078-5-stephen@networkplumber.org> (raw)
In-Reply-To: <20190726165054.24078-1-stephen@networkplumber.org>

No need to use snprintf to print ethernet address.

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
---
 .../client_server_mp/mp_server/main.c         | 32 ++++++-------------
 1 file changed, 9 insertions(+), 23 deletions(-)

diff --git a/examples/multi_process/client_server_mp/mp_server/main.c b/examples/multi_process/client_server_mp/mp_server/main.c
index bfec0bef3a71..d1339d4be64c 100644
--- a/examples/multi_process/client_server_mp/mp_server/main.c
+++ b/examples/multi_process/client_server_mp/mp_server/main.c
@@ -56,26 +56,6 @@ struct client_rx_buf {
 /* One buffer per client rx queue - dynamically allocate array */
 static struct client_rx_buf *cl_rx_buf;
 
-static const char *
-get_printable_mac_addr(uint16_t port)
-{
-	static const char err_address[] = "00:00:00:00:00:00";
-	static char addresses[RTE_MAX_ETHPORTS][sizeof(err_address)];
-
-	if (unlikely(port >= RTE_MAX_ETHPORTS))
-		return err_address;
-	if (unlikely(addresses[port][0] == '\0')) {
-		struct rte_ether_addr mac;
-
-		rte_eth_macaddr_get(port, &mac);
-		snprintf(addresses[port], sizeof(addresses[port]),
-				"%02x:%02x:%02x:%02x:%02x:%02x\n",
-				mac.addr_bytes[0], mac.addr_bytes[1], mac.addr_bytes[2],
-				mac.addr_bytes[3], mac.addr_bytes[4], mac.addr_bytes[5]);
-	}
-	return addresses[port];
-}
-
 /*
  * This function displays the recorded statistics for each port
  * and for each client. It uses ANSI terminal codes to clear
@@ -118,9 +98,15 @@ do_stats_display(void)
 
 	printf("PORTS\n");
 	printf("-----\n");
-	for (i = 0; i < ports->num_ports; i++)
-		printf("Port %u: '%s'\t", ports->id[i],
-		       get_printable_mac_addr(ports->id[i]));
+	for (i = 0; i < ports->num_ports; i++) {
+		struct rte_ether_addr mac = { };
+		char buf[32];
+
+		rte_eth_macaddr_get(ports->id[i], &mac);
+		rte_ether_format_addr(buf, sizeof(buf), &mac);
+		printf("Port %u: '%s'\t", ports->id[i], buf);
+	}
+
 	printf("\n\n");
 	for (i = 0; i < ports->num_ports; i++) {
 		printf("Port %u - rx: %9"PRIu64"\ttx: %9"PRIu64"\n",
-- 
2.20.1


  parent reply	other threads:[~2019-07-26 16:51 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-07-09 15:09 [dpdk-dev] [PATCH v3 0/2] examples/client_server_mp: fix port issues Stephen Hemminger
2019-07-09 15:09 ` [dpdk-dev] [PATCH v3 1/2] examples/multi_process/client_server_mp: check port validity Stephen Hemminger
2019-07-09 15:09 ` [dpdk-dev] [PATCH v3 2/2] examples/multi_process - fix crash in mp_client with sparse ports Stephen Hemminger
2019-07-26 16:50 ` [dpdk-dev] [PATCH v4 0/4] examples/client_server_mp: fix port issues Stephen Hemminger
2019-07-26 16:50   ` [dpdk-dev] [PATCH v4 1/4] examples/multi_process/client_server_mp: check port validity Stephen Hemminger
2019-07-30  9:21     ` Matan Azrad
2019-07-30 15:56       ` Stephen Hemminger
2019-07-30 16:39         ` Matan Azrad
2019-07-30 16:50           ` Stephen Hemminger
2019-07-26 16:50   ` [dpdk-dev] [PATCH v4 2/4] examples/multi_process/client_server_mp - fix crash in mp_client with sparse ports Stephen Hemminger
2019-07-26 16:50   ` [dpdk-dev] [PATCH v4 3/4] examples/multi_process/client_server_mp/mp_server: fix style Stephen Hemminger
2019-07-26 16:50   ` Stephen Hemminger [this message]
2019-08-02  2:58   ` [dpdk-dev] [PATCH v5 0/4] examples/client_server_mp: port id fixes Stephen Hemminger
2019-08-02  2:58     ` [dpdk-dev] [PATCH v5 1/4] examples/multi_process/client_server_mp: check port validity Stephen Hemminger
2019-08-02  5:33       ` Matan Azrad
2019-08-02 15:53         ` Stephen Hemminger
2019-08-04  8:31           ` Matan Azrad
2019-08-05 16:00             ` Stephen Hemminger
2019-08-06  8:19               ` Matan Azrad
2019-08-06 15:39                 ` Stephen Hemminger
2019-08-06 20:03                   ` Matan Azrad
2019-08-06 23:09                     ` Stephen Hemminger
2019-08-07  5:38                       ` Matan Azrad
2019-08-07  5:53                         ` Stephen Hemminger
2019-08-07  7:02                           ` Matan Azrad
2019-08-07 15:15                             ` Stephen Hemminger
2019-08-02  2:58     ` [dpdk-dev] [PATCH v5 2/4] examples/multi_process/client_server_mp - fix crash in mp_client with sparse ports Stephen Hemminger
2019-08-02  2:58     ` [dpdk-dev] [PATCH v5 3/4] examples/multi_process/client_server_mp/mp_server: fix style Stephen Hemminger
2019-08-02 11:09       ` David Marchand
2019-08-02  2:58     ` [dpdk-dev] [PATCH v5 4/4] examples/multi_process/client_server_mp/mp_server: use ether format address Stephen Hemminger
2019-08-02 23:52   ` [dpdk-dev] [PATCH v6 0/2] examples/client_server_mp: port id (fixes only) Stephen Hemminger
2019-08-02 23:52     ` [dpdk-dev] [PATCH v6 1/2] examples/multi_process/client_server_mp: check port validity Stephen Hemminger
2019-08-02 23:52     ` [dpdk-dev] [PATCH v6 2/2] examples/multi_process/client_server_mp - fix crash in mp_client with sparse ports Stephen Hemminger
2019-08-05 16:38   ` [dpdk-dev] [PATCH v7 0/2] examples/client_server_mp: port id (fixes only) Stephen Hemminger
2019-08-05 16:38     ` [dpdk-dev] [PATCH v7 1/2] examples/multi_process/client_server_mp: check port validity Stephen Hemminger
2019-08-06 12:07       ` Matan Azrad
2019-11-13 18:53         ` Stephen Hemminger
2019-08-05 16:38     ` [dpdk-dev] [PATCH v7 2/2] examples/multi_process/client_server_mp - fix crash in mp_client with sparse ports Stephen Hemminger
2019-08-07  5:40     ` [dpdk-dev] [PATCH v7 0/2] examples/client_server_mp: port id (fixes only) Matan Azrad
2019-11-25 22:51       ` Thomas Monjalon

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=20190726165054.24078-5-stephen@networkplumber.org \
    --to=stephen@networkplumber.org \
    --cc=dev@dpdk.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.