From: Igor Romanov <igor.roma...@oktetlabs.ru>

The return value of rte_eth_macaddr_get() was changed from void to int.
Update the usage of the functions according to the new return type.

Signed-off-by: Igor Romanov <igor.roma...@oktetlabs.ru>
Signed-off-by: Andrew Rybchenko <arybche...@solarflare.com>
---
 examples/bbdev_app/main.c                      |  8 +++++++-
 examples/distributor/main.c                    |  8 +++++++-
 examples/ethtool/ethtool-app/main.c            | 18 ++++++++++++++++--
 examples/ethtool/lib/rte_ethtool.c             |  7 ++++++-
 examples/eventdev_pipeline/main.c              |  8 +++++++-
 examples/flow_classify/flow_classify.c         |  5 ++++-
 examples/ip_fragmentation/main.c               |  9 ++++++++-
 examples/ip_pipeline/cli.c                     |  8 +++++++-
 examples/ip_reassembly/main.c                  |  9 ++++++++-
 examples/ipsec-secgw/ipsec-secgw.c             |  7 ++++++-
 examples/ipv4_multicast/main.c                 |  7 ++++++-
 examples/kni/main.c                            |  6 +++++-
 examples/l2fwd-cat/l2fwd-cat.c                 |  5 ++++-
 examples/l2fwd-crypto/main.c                   |  8 +++++++-
 examples/l2fwd-jobstats/main.c                 |  7 ++++++-
 examples/l2fwd-keepalive/main.c                |  7 ++++++-
 examples/l2fwd/main.c                          |  7 ++++++-
 examples/l3fwd-acl/main.c                      |  7 ++++++-
 examples/l3fwd-power/main.c                    |  7 ++++++-
 examples/l3fwd-vf/main.c                       |  7 ++++++-
 examples/l3fwd/main.c                          |  7 ++++++-
 examples/link_status_interrupt/main.c          |  6 +++++-
 .../client_server_mp/mp_server/main.c          |  8 +++++++-
 examples/packet_ordering/main.c                |  8 +++++++-
 .../performance-thread/l3fwd-thread/main.c     |  7 ++++++-
 examples/ptpclient/ptpclient.c                 | 11 ++++++++++-
 examples/quota_watermark/qw/main.c             | 10 +++++++++-
 examples/rxtx_callbacks/main.c                 |  7 ++++++-
 examples/server_node_efd/server/main.c         |  9 ++++++++-
 examples/skeleton/basicfwd.c                   |  5 ++++-
 examples/tep_termination/vxlan_setup.c         |  5 ++++-
 examples/vhost/main.c                          |  9 ++++++++-
 examples/vm_power_manager/guest_cli/main.c     | 11 +++++++++--
 .../guest_cli/vm_power_cli_guest.c             | 17 ++++++++++++++---
 .../guest_cli/vm_power_cli_guest.h             |  2 +-
 examples/vm_power_manager/main.c               |  8 +++++++-
 examples/vmdq/main.c                           |  7 ++++++-
 examples/vmdq_dcb/main.c                       |  7 ++++++-
 38 files changed, 257 insertions(+), 42 deletions(-)

diff --git a/examples/bbdev_app/main.c b/examples/bbdev_app/main.c
index 349876589..fb38dc3a7 100644
--- a/examples/bbdev_app/main.c
+++ b/examples/bbdev_app/main.c
@@ -490,7 +490,13 @@ initialize_ports(struct app_config_params *app_params,
                return ret;
        }
 
-       rte_eth_macaddr_get(port_id, &bbdev_port_eth_addr);
+       ret = rte_eth_macaddr_get(port_id, &bbdev_port_eth_addr);
+       if (ret < 0) {
+               printf("rte_eth_macaddr_get: err=%d, queue=%u\n",
+                       ret, q);
+               return -1;
+       }
+
        print_mac(port_id, &bbdev_port_eth_addr);
 
        return 0;
diff --git a/examples/distributor/main.c b/examples/distributor/main.c
index 49b4e611f..567c5e989 100644
--- a/examples/distributor/main.c
+++ b/examples/distributor/main.c
@@ -192,7 +192,13 @@ port_init(uint16_t port, struct rte_mempool *mbuf_pool)
        }
 
        struct rte_ether_addr addr;
-       rte_eth_macaddr_get(port, &addr);
+       retval = rte_eth_macaddr_get(port, &addr);
+       if (retval < 0) {
+               printf("Failed to get MAC address (port %u): %s\n",
+                               port, rte_strerror(-retval));
+               return retval;
+       }
+
        printf("Port %u MAC: %02"PRIx8" %02"PRIx8" %02"PRIx8
                        " %02"PRIx8" %02"PRIx8" %02"PRIx8"\n",
                        port,
diff --git a/examples/ethtool/ethtool-app/main.c 
b/examples/ethtool/ethtool-app/main.c
index 774df7eb1..29891012a 100644
--- a/examples/ethtool/ethtool-app/main.c
+++ b/examples/ethtool/ethtool-app/main.c
@@ -156,7 +156,12 @@ static void setup_ports(struct app_config *app_cfg, int 
cnt_ports)
                                 "%s:%i: rte_eth_dev_start failed",
                                 __FILE__, __LINE__
                                );
-               rte_eth_macaddr_get(idx_port, &ptr_port->mac_addr);
+               ret = rte_eth_macaddr_get(idx_port, &ptr_port->mac_addr);
+               if (ret != 0)
+                       rte_exit(EXIT_FAILURE,
+                               "rte_eth_macaddr_get failed (port %u): %s\n",
+                               idx_port, rte_strerror(-ret));
+
                rte_spinlock_init(&ptr_port->lock);
        }
 }
@@ -182,6 +187,7 @@ static int slave_main(__attribute__((unused)) void 
*ptr_data)
        uint16_t cnt_sent;
        uint16_t idx_port;
        uint16_t lock_result;
+       int ret;
 
        while (app_cfg.exit_now == 0) {
                for (idx_port = 0; idx_port < app_cfg.cnt_ports; idx_port++) {
@@ -198,8 +204,16 @@ static int slave_main(__attribute__((unused)) void 
*ptr_data)
 
                        /* MAC address was updated */
                        if (ptr_port->port_dirty == 1) {
-                               rte_eth_macaddr_get(ptr_port->idx_port,
+                               ret = rte_eth_macaddr_get(ptr_port->idx_port,
                                        &ptr_port->mac_addr);
+                               if (ret != 0) {
+                                       rte_spinlock_unlock(&ptr_port->lock);
+                                       printf("Failed to get MAC address (port 
%u): %s",
+                                              ptr_port->idx_port,
+                                              rte_strerror(-ret));
+                                       return ret;
+                               }
+
                                ptr_port->port_dirty = 0;
                        }
 
diff --git a/examples/ethtool/lib/rte_ethtool.c 
b/examples/ethtool/lib/rte_ethtool.c
index 8393b0d60..667d7eaf2 100644
--- a/examples/ethtool/lib/rte_ethtool.c
+++ b/examples/ethtool/lib/rte_ethtool.c
@@ -314,10 +314,15 @@ rte_ethtool_net_stop(uint16_t port_id)
 int
 rte_ethtool_net_get_mac_addr(uint16_t port_id, struct rte_ether_addr *addr)
 {
+       int ret;
+
        RTE_ETH_VALID_PORTID_OR_ERR_RET(port_id, -ENODEV);
        if (addr == NULL)
                return -EINVAL;
-       rte_eth_macaddr_get(port_id, addr);
+
+       ret = rte_eth_macaddr_get(port_id, addr);
+       if (ret != 0)
+               return ret;
 
        return 0;
 }
diff --git a/examples/eventdev_pipeline/main.c 
b/examples/eventdev_pipeline/main.c
index c734c7750..f77830282 100644
--- a/examples/eventdev_pipeline/main.c
+++ b/examples/eventdev_pipeline/main.c
@@ -324,7 +324,13 @@ port_init(uint8_t port, struct rte_mempool *mbuf_pool)
 
        /* Display the port MAC address. */
        struct rte_ether_addr addr;
-       rte_eth_macaddr_get(port, &addr);
+       retval = rte_eth_macaddr_get(port, &addr);
+       if (retval != 0) {
+               printf("Failed to get MAC address (port %u): %s\n",
+                               port, rte_strerror(-retval));
+               return retval;
+       }
+
        printf("Port %u MAC: %02" PRIx8 " %02" PRIx8 " %02" PRIx8
                           " %02" PRIx8 " %02" PRIx8 " %02" PRIx8 "\n",
                        (unsigned int)port,
diff --git a/examples/flow_classify/flow_classify.c 
b/examples/flow_classify/flow_classify.c
index ae0faf621..1c12bbb2f 100644
--- a/examples/flow_classify/flow_classify.c
+++ b/examples/flow_classify/flow_classify.c
@@ -242,7 +242,10 @@ port_init(uint8_t port, struct rte_mempool *mbuf_pool)
                return retval;
 
        /* Display the port MAC address. */
-       rte_eth_macaddr_get(port, &addr);
+       retval = rte_eth_macaddr_get(port, &addr);
+       if (retval != 0)
+               return retval;
+
        printf("Port %u MAC: %02" PRIx8 " %02" PRIx8 " %02" PRIx8
                           " %02" PRIx8 " %02" PRIx8 " %02" PRIx8 "\n",
                        port,
diff --git a/examples/ip_fragmentation/main.c b/examples/ip_fragmentation/main.c
index f90edc5a2..104612339 100644
--- a/examples/ip_fragmentation/main.c
+++ b/examples/ip_fragmentation/main.c
@@ -992,7 +992,14 @@ main(int argc, char **argv)
                                ret, portid);
                }
 
-               rte_eth_macaddr_get(portid, &ports_eth_addr[portid]);
+               ret = rte_eth_macaddr_get(portid, &ports_eth_addr[portid]);
+               if (ret < 0) {
+                       printf("\n");
+                       rte_exit(EXIT_FAILURE,
+                               "rte_eth_macaddr_get: err=%d, port=%d\n",
+                               ret, portid);
+               }
+
                print_ethaddr(" Address:", &ports_eth_addr[portid]);
                printf("\n");
 
diff --git a/examples/ip_pipeline/cli.c b/examples/ip_pipeline/cli.c
index 4930310cc..02dc11495 100644
--- a/examples/ip_pipeline/cli.c
+++ b/examples/ip_pipeline/cli.c
@@ -253,7 +253,13 @@ print_link_info(struct link *link, char *out, size_t 
out_size)
        memset(&stats, 0, sizeof(stats));
        rte_eth_stats_get(link->port_id, &stats);
 
-       rte_eth_macaddr_get(link->port_id, &mac_addr);
+       ret = rte_eth_macaddr_get(link->port_id, &mac_addr);
+       if (ret != 0) {
+               snprintf(out, out_size, "\n%s: MAC address get failed: %s",
+                        link->name, rte_strerror(-ret));
+               return;
+       }
+
        ret = rte_eth_link_get(link->port_id, &eth_link);
        if (ret < 0) {
                snprintf(out, out_size, "\n%s: link get failed: %s",
diff --git a/examples/ip_reassembly/main.c b/examples/ip_reassembly/main.c
index c822c8c58..d59e6d02f 100644
--- a/examples/ip_reassembly/main.c
+++ b/examples/ip_reassembly/main.c
@@ -1132,7 +1132,14 @@ main(int argc, char **argv)
                                ret, portid);
                }
 
-               rte_eth_macaddr_get(portid, &ports_eth_addr[portid]);
+               ret = rte_eth_macaddr_get(portid, &ports_eth_addr[portid]);
+               if (ret < 0) {
+                       printf("\n");
+                       rte_exit(EXIT_FAILURE,
+                               "rte_eth_macaddr_get: err=%d, port=%d\n",
+                               ret, portid);
+               }
+
                print_ethaddr(" Address:", &ports_eth_addr[portid]);
                printf("\n");
 
diff --git a/examples/ipsec-secgw/ipsec-secgw.c 
b/examples/ipsec-secgw/ipsec-secgw.c
index 2520e5108..5514f4ba5 100644
--- a/examples/ipsec-secgw/ipsec-secgw.c
+++ b/examples/ipsec-secgw/ipsec-secgw.c
@@ -1931,7 +1931,12 @@ port_init(uint16_t portid, uint64_t req_rx_offloads, 
uint64_t req_tx_offloads)
 
        printf("Configuring device port %u:\n", portid);
 
-       rte_eth_macaddr_get(portid, &ethaddr);
+       ret = rte_eth_macaddr_get(portid, &ethaddr);
+       if (ret != 0)
+               rte_exit(EXIT_FAILURE,
+                       "Error getting MAC address (port %u): %s\n",
+                       portid, rte_strerror(-ret));
+
        ethaddr_tbl[portid].src = ETHADDR_TO_UINT64(&ethaddr);
        print_ethaddr("Address: ", &ethaddr);
        printf("\n");
diff --git a/examples/ipv4_multicast/main.c b/examples/ipv4_multicast/main.c
index 6b165f2f0..63333b5b6 100644
--- a/examples/ipv4_multicast/main.c
+++ b/examples/ipv4_multicast/main.c
@@ -739,7 +739,12 @@ main(int argc, char **argv)
                                 "Cannot adjust number of descriptors: err=%d, 
port=%d\n",
                                 ret, portid);
 
-               rte_eth_macaddr_get(portid, &ports_eth_addr[portid]);
+               ret = rte_eth_macaddr_get(portid, &ports_eth_addr[portid]);
+               if (ret < 0)
+                       rte_exit(EXIT_FAILURE,
+                                "Cannot get MAC address: err=%d, port=%d\n",
+                                ret, portid);
+
                print_ethaddr(" Address:", &ports_eth_addr[portid]);
                printf(", ");
 
diff --git a/examples/kni/main.c b/examples/kni/main.c
index 8eb5b610e..c576fc767 100644
--- a/examples/kni/main.c
+++ b/examples/kni/main.c
@@ -940,8 +940,12 @@ kni_alloc(uint16_t port_id)
                                        port_id, strerror(-ret));
 
                        /* Get the interface default mac address */
-                       rte_eth_macaddr_get(port_id,
+                       ret = rte_eth_macaddr_get(port_id,
                                (struct rte_ether_addr *)&conf.mac_addr);
+                       if (ret != 0)
+                               rte_exit(EXIT_FAILURE,
+                                       "Failed to get MAC address (port %u): 
%s\n",
+                                       port_id, rte_strerror(-ret));
 
                        rte_eth_dev_get_mtu(port_id, &conf.mtu);
 
diff --git a/examples/l2fwd-cat/l2fwd-cat.c b/examples/l2fwd-cat/l2fwd-cat.c
index b15f0330b..6838f288c 100644
--- a/examples/l2fwd-cat/l2fwd-cat.c
+++ b/examples/l2fwd-cat/l2fwd-cat.c
@@ -74,7 +74,10 @@ port_init(uint16_t port, struct rte_mempool *mbuf_pool)
 
        /* Display the port MAC address. */
        struct rte_ether_addr addr;
-       rte_eth_macaddr_get(port, &addr);
+       retval = rte_eth_macaddr_get(port, &addr);
+       if (retval < 0)
+               return retval;
+
        printf("Port %u MAC: %02" PRIx8 " %02" PRIx8 " %02" PRIx8
                           " %02" PRIx8 " %02" PRIx8 " %02" PRIx8 "\n",
                        port,
diff --git a/examples/l2fwd-crypto/main.c b/examples/l2fwd-crypto/main.c
index 7c84b40ff..61d78295d 100644
--- a/examples/l2fwd-crypto/main.c
+++ b/examples/l2fwd-crypto/main.c
@@ -2589,7 +2589,13 @@ initialize_ports(struct l2fwd_crypto_options *options)
                        return -1;
                }
 
-               rte_eth_macaddr_get(portid, &l2fwd_ports_eth_addr[portid]);
+               retval = rte_eth_macaddr_get(portid,
+                                            &l2fwd_ports_eth_addr[portid]);
+               if (retval < 0) {
+                       printf("rte_eth_macaddr_get :err=%d, port=%u\n",
+                                       retval, portid);
+                       return -1;
+               }
 
                printf("Port %u, MAC address: 
%02X:%02X:%02X:%02X:%02X:%02X\n\n",
                                portid,
diff --git a/examples/l2fwd-jobstats/main.c b/examples/l2fwd-jobstats/main.c
index 4f930d097..f975aa12d 100644
--- a/examples/l2fwd-jobstats/main.c
+++ b/examples/l2fwd-jobstats/main.c
@@ -872,7 +872,12 @@ main(int argc, char **argv)
                                 "Cannot adjust number of descriptors: err=%d, 
port=%u\n",
                                 ret, portid);
 
-               rte_eth_macaddr_get(portid, &l2fwd_ports_eth_addr[portid]);
+               ret = rte_eth_macaddr_get(portid,
+                                         &l2fwd_ports_eth_addr[portid]);
+               if (ret < 0)
+                       rte_exit(EXIT_FAILURE,
+                                "Cannot get MAC address: err=%d, port=%u\n",
+                                ret, portid);
 
                /* init one RX queue */
                fflush(stdout);
diff --git a/examples/l2fwd-keepalive/main.c b/examples/l2fwd-keepalive/main.c
index 21278eed7..b36834974 100644
--- a/examples/l2fwd-keepalive/main.c
+++ b/examples/l2fwd-keepalive/main.c
@@ -665,7 +665,12 @@ main(int argc, char **argv)
                                "Cannot adjust number of descriptors: err=%d, 
port=%u\n",
                                ret, portid);
 
-               rte_eth_macaddr_get(portid, &l2fwd_ports_eth_addr[portid]);
+               ret = rte_eth_macaddr_get(portid,
+                                         &l2fwd_ports_eth_addr[portid]);
+               if (ret < 0)
+                       rte_exit(EXIT_FAILURE,
+                               "Cannot mac address: err=%d, port=%u\n",
+                               ret, portid);
 
                /* init one RX queue */
                fflush(stdout);
diff --git a/examples/l2fwd/main.c b/examples/l2fwd/main.c
index 6b9f09a4d..d7bcbfae7 100644
--- a/examples/l2fwd/main.c
+++ b/examples/l2fwd/main.c
@@ -665,7 +665,12 @@ main(int argc, char **argv)
                                 "Cannot adjust number of descriptors: err=%d, 
port=%u\n",
                                 ret, portid);
 
-               rte_eth_macaddr_get(portid,&l2fwd_ports_eth_addr[portid]);
+               ret = rte_eth_macaddr_get(portid,
+                                         &l2fwd_ports_eth_addr[portid]);
+               if (ret < 0)
+                       rte_exit(EXIT_FAILURE,
+                                "Cannot get MAC address: err=%d, port=%u\n",
+                                ret, portid);
 
                /* init one RX queue */
                fflush(stdout);
diff --git a/examples/l3fwd-acl/main.c b/examples/l3fwd-acl/main.c
index 0abb8cb5e..fa92a2829 100644
--- a/examples/l3fwd-acl/main.c
+++ b/examples/l3fwd-acl/main.c
@@ -1968,7 +1968,12 @@ main(int argc, char **argv)
                                "rte_eth_dev_adjust_nb_rx_tx_desc: err=%d, 
port=%d\n",
                                ret, portid);
 
-               rte_eth_macaddr_get(portid, &ports_eth_addr[portid]);
+               ret = rte_eth_macaddr_get(portid, &ports_eth_addr[portid]);
+               if (ret < 0)
+                       rte_exit(EXIT_FAILURE,
+                               "rte_eth_macaddr_get: err=%d, port=%d\n",
+                               ret, portid);
+
                print_ethaddr(" Address:", &ports_eth_addr[portid]);
                printf(", ");
 
diff --git a/examples/l3fwd-power/main.c b/examples/l3fwd-power/main.c
index 2e3b1d3c6..a03f64a1a 100644
--- a/examples/l3fwd-power/main.c
+++ b/examples/l3fwd-power/main.c
@@ -2323,7 +2323,12 @@ main(int argc, char **argv)
                                 "Cannot adjust number of descriptors: err=%d, 
port=%d\n",
                                 ret, portid);
 
-               rte_eth_macaddr_get(portid, &ports_eth_addr[portid]);
+               ret = rte_eth_macaddr_get(portid, &ports_eth_addr[portid]);
+               if (ret < 0)
+                       rte_exit(EXIT_FAILURE,
+                                "Cannot get MAC address: err=%d, port=%d\n",
+                                ret, portid);
+
                print_ethaddr(" Address:", &ports_eth_addr[portid]);
                printf(", ");
 
diff --git a/examples/l3fwd-vf/main.c b/examples/l3fwd-vf/main.c
index 572e74cf5..ff6c9e2f1 100644
--- a/examples/l3fwd-vf/main.c
+++ b/examples/l3fwd-vf/main.c
@@ -985,7 +985,12 @@ main(int argc, char **argv)
                                 "Cannot adjust number of descriptors: err=%d, 
port=%d\n",
                                 ret, portid);
 
-               rte_eth_macaddr_get(portid, &ports_eth_addr[portid]);
+               ret = rte_eth_macaddr_get(portid, &ports_eth_addr[portid]);
+               if (ret < 0)
+                       rte_exit(EXIT_FAILURE,
+                                "Cannot get MAC address: err=%d, port=%d\n",
+                                ret, portid);
+
                print_ethaddr(" Address:", &ports_eth_addr[portid]);
                printf(", ");
 
diff --git a/examples/l3fwd/main.c b/examples/l3fwd/main.c
index 7253acac4..4dea12a65 100644
--- a/examples/l3fwd/main.c
+++ b/examples/l3fwd/main.c
@@ -917,7 +917,12 @@ main(int argc, char **argv)
                                 "Cannot adjust number of descriptors: err=%d, "
                                 "port=%d\n", ret, portid);
 
-               rte_eth_macaddr_get(portid, &ports_eth_addr[portid]);
+               ret = rte_eth_macaddr_get(portid, &ports_eth_addr[portid]);
+               if (ret < 0)
+                       rte_exit(EXIT_FAILURE,
+                                "Cannot get MAC address: err=%d, port=%d\n",
+                                ret, portid);
+
                print_ethaddr(" Address:", &ports_eth_addr[portid]);
                printf(", ");
                print_ethaddr("Destination:",
diff --git a/examples/link_status_interrupt/main.c 
b/examples/link_status_interrupt/main.c
index a0b75d9f6..a924aa231 100644
--- a/examples/link_status_interrupt/main.c
+++ b/examples/link_status_interrupt/main.c
@@ -657,8 +657,12 @@ main(int argc, char **argv)
                rte_eth_dev_callback_register(portid,
                        RTE_ETH_EVENT_INTR_LSC, lsi_event_callback, NULL);
 
-               rte_eth_macaddr_get(portid,
+               ret = rte_eth_macaddr_get(portid,
                                    &lsi_ports_eth_addr[portid]);
+               if (ret < 0)
+                       rte_exit(EXIT_FAILURE,
+                                "rte_eth_macaddr_get: err=%d, port=%u\n",
+                                ret, (unsigned int)portid);
 
                /* init one RX queue */
                fflush(stdout);
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 015053370..802e29d10 100644
--- a/examples/multi_process/client_server_mp/mp_server/main.c
+++ b/examples/multi_process/client_server_mp/mp_server/main.c
@@ -61,12 +61,18 @@ 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)];
+       int ret;
 
        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);
+               ret = rte_eth_macaddr_get(port, &mac);
+               if (ret != 0) {
+                       printf("Failed to get MAC address (port %u): %s\n",
+                              port, rte_strerror(-ret));
+                       return err_address;
+               }
                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],
diff --git a/examples/packet_ordering/main.c b/examples/packet_ordering/main.c
index 132f582a9..b397b318e 100644
--- a/examples/packet_ordering/main.c
+++ b/examples/packet_ordering/main.c
@@ -322,7 +322,13 @@ configure_eth_port(uint16_t port_id)
        if (ret < 0)
                return ret;
 
-       rte_eth_macaddr_get(port_id, &addr);
+       ret = rte_eth_macaddr_get(port_id, &addr);
+       if (ret != 0) {
+               printf("Failed to get MAC address (port %u): %s\n",
+                               port_id, rte_strerror(-ret));
+               return ret;
+       }
+
        printf("Port %u MAC: %02"PRIx8" %02"PRIx8" %02"PRIx8
                        " %02"PRIx8" %02"PRIx8" %02"PRIx8"\n",
                        port_id,
diff --git a/examples/performance-thread/l3fwd-thread/main.c 
b/examples/performance-thread/l3fwd-thread/main.c
index de0521922..122c63244 100644
--- a/examples/performance-thread/l3fwd-thread/main.c
+++ b/examples/performance-thread/l3fwd-thread/main.c
@@ -3602,7 +3602,12 @@ main(int argc, char **argv)
                                 "rte_eth_dev_adjust_nb_rx_tx_desc: err=%d, 
port=%d\n",
                                 ret, portid);
 
-               rte_eth_macaddr_get(portid, &ports_eth_addr[portid]);
+               ret = rte_eth_macaddr_get(portid, &ports_eth_addr[portid]);
+               if (ret < 0)
+                       rte_exit(EXIT_FAILURE,
+                                "rte_eth_macaddr_get: err=%d, port=%d\n",
+                                ret, portid);
+
                print_ethaddr(" Address:", &ports_eth_addr[portid]);
                printf(", ");
                print_ethaddr("Destination:",
diff --git a/examples/ptpclient/ptpclient.c b/examples/ptpclient/ptpclient.c
index 6e273f644..a1a7ae699 100644
--- a/examples/ptpclient/ptpclient.c
+++ b/examples/ptpclient/ptpclient.c
@@ -378,6 +378,7 @@ static void
 parse_fup(struct ptpv2_data_slave_ordinary *ptp_data)
 {
        struct rte_ether_hdr *eth_hdr;
+       struct rte_ether_addr eth_addr;
        struct ptp_header *ptp_hdr;
        struct clock_id *client_clkid;
        struct ptp_message *ptp_msg;
@@ -387,6 +388,7 @@ parse_fup(struct ptpv2_data_slave_ordinary *ptp_data)
        size_t pkt_size;
        int wait_us;
        struct rte_mbuf *m = ptp_data->m;
+       int ret;
 
        eth_hdr = rte_pktmbuf_mtod(m, struct rte_ether_hdr *);
        ptp_hdr = (struct ptp_header *)(rte_pktmbuf_mtod(m, char *)
@@ -407,6 +409,13 @@ parse_fup(struct ptpv2_data_slave_ordinary *ptp_data)
                (((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, &eth_addr);
+               if (ret != 0) {
+                       printf("\nCore %u: port %u failed to get MAC address: 
%s\n",
+                               rte_lcore_id(), ptp_data->portid,
+                               rte_strerror(-ret));
+                       return;
+               }
 
                created_pkt = rte_pktmbuf_alloc(mbuf_pool);
                pkt_size = sizeof(struct rte_ether_hdr) +
@@ -414,7 +423,7 @@ parse_fup(struct ptpv2_data_slave_ordinary *ptp_data)
                created_pkt->data_len = pkt_size;
                created_pkt->pkt_len = pkt_size;
                eth_hdr = rte_pktmbuf_mtod(created_pkt, struct rte_ether_hdr *);
-               rte_eth_macaddr_get(ptp_data->portid, &eth_hdr->s_addr);
+               rte_ether_addr_copy(&eth_addr, &eth_hdr->s_addr);
 
                /* Set multicast address 01-1B-19-00-00-00. */
                rte_ether_addr_copy(&eth_multicast, &eth_hdr->d_addr);
diff --git a/examples/quota_watermark/qw/main.c 
b/examples/quota_watermark/qw/main.c
index a61360b99..c985eed24 100644
--- a/examples/quota_watermark/qw/main.c
+++ b/examples/quota_watermark/qw/main.c
@@ -52,11 +52,20 @@ static void send_pause_frame(uint16_t port_id, uint16_t 
duration)
        struct ether_fc_frame *pause_frame;
        struct rte_ether_hdr *hdr;
        struct rte_ether_addr mac_addr;
+       int ret;
 
        RTE_LOG_DP(DEBUG, USER1,
                        "Sending PAUSE frame (duration=%d) on port %d\n",
                        duration, port_id);
 
+       ret = rte_eth_macaddr_get(port_id, &mac_addr);
+       if (ret != 0) {
+               RTE_LOG_DP(ERR, USER1,
+                               "Failed to get MAC address (port %u): %s\n",
+                               port_id, rte_strerror(-ret));
+               return;
+       }
+
        /* Get a mbuf from the pool */
        mbuf = rte_pktmbuf_alloc(mbuf_pool);
        if (unlikely(mbuf == NULL))
@@ -66,7 +75,6 @@ static void send_pause_frame(uint16_t port_id, uint16_t 
duration)
        hdr = rte_pktmbuf_mtod(mbuf, struct rte_ether_hdr *);
        pause_frame = (struct ether_fc_frame *) &hdr[1];
 
-       rte_eth_macaddr_get(port_id, &mac_addr);
        rte_ether_addr_copy(&mac_addr, &hdr->s_addr);
 
        void *tmp = &hdr->d_addr.addr_bytes[0];
diff --git a/examples/rxtx_callbacks/main.c b/examples/rxtx_callbacks/main.c
index 5d545115c..07e95e8d1 100644
--- a/examples/rxtx_callbacks/main.c
+++ b/examples/rxtx_callbacks/main.c
@@ -188,7 +188,12 @@ port_init(uint16_t port, struct rte_mempool *mbuf_pool)
 
        struct rte_ether_addr addr;
 
-       rte_eth_macaddr_get(port, &addr);
+       retval = rte_eth_macaddr_get(port, &addr);
+       if (retval < 0) {
+               printf("Failed to get MAC address on port %u: %s\n",
+                       port, rte_strerror(-retval));
+               return retval;
+       }
        printf("Port %u MAC: %02"PRIx8" %02"PRIx8" %02"PRIx8
                        " %02"PRIx8" %02"PRIx8" %02"PRIx8"\n",
                        (unsigned)port,
diff --git a/examples/server_node_efd/server/main.c 
b/examples/server_node_efd/server/main.c
index 7b4657e42..455bdc063 100644
--- a/examples/server_node_efd/server/main.c
+++ b/examples/server_node_efd/server/main.c
@@ -69,11 +69,18 @@ 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)];
        struct rte_ether_addr mac;
+       int ret;
 
        if (unlikely(port >= RTE_MAX_ETHPORTS))
                return err_address;
        if (unlikely(addresses[port][0] == '\0')) {
-               rte_eth_macaddr_get(port, &mac);
+               ret = rte_eth_macaddr_get(port, &mac);
+               if (ret != 0) {
+                       printf("Failed to get MAC address (port %u): %s\n",
+                              port, rte_strerror(-ret));
+                       return err_address;
+               }
+
                snprintf(addresses[port], sizeof(addresses[port]),
                                "%02x:%02x:%02x:%02x:%02x:%02x\n",
                                mac.addr_bytes[0], mac.addr_bytes[1],
diff --git a/examples/skeleton/basicfwd.c b/examples/skeleton/basicfwd.c
index 8f1805aeb..73d313b84 100644
--- a/examples/skeleton/basicfwd.c
+++ b/examples/skeleton/basicfwd.c
@@ -89,7 +89,10 @@ port_init(uint16_t port, struct rte_mempool *mbuf_pool)
 
        /* Display the port MAC address. */
        struct rte_ether_addr addr;
-       rte_eth_macaddr_get(port, &addr);
+       retval = rte_eth_macaddr_get(port, &addr);
+       if (retval != 0)
+               return retval;
+
        printf("Port %u MAC: %02" PRIx8 " %02" PRIx8 " %02" PRIx8
                           " %02" PRIx8 " %02" PRIx8 " %02" PRIx8 "\n",
                        port,
diff --git a/examples/tep_termination/vxlan_setup.c 
b/examples/tep_termination/vxlan_setup.c
index 8d6514dd8..f9f857c09 100644
--- a/examples/tep_termination/vxlan_setup.c
+++ b/examples/tep_termination/vxlan_setup.c
@@ -182,7 +182,10 @@ vxlan_port_init(uint16_t port, struct rte_mempool 
*mbuf_pool)
        retval = rte_eth_dev_udp_tunnel_port_add(port, &tunnel_udp);
        if (retval < 0)
                return retval;
-       rte_eth_macaddr_get(port, &ports_eth_addr[port]);
+       retval = rte_eth_macaddr_get(port, &ports_eth_addr[port]);
+       if (retval < 0)
+               return retval;
+
        RTE_LOG(INFO, PORT, "Port %u MAC: %02"PRIx8" %02"PRIx8" %02"PRIx8
                        " %02"PRIx8" %02"PRIx8" %02"PRIx8"\n",
                        port,
diff --git a/examples/vhost/main.c b/examples/vhost/main.c
index b5632d771..ab649bf14 100644
--- a/examples/vhost/main.c
+++ b/examples/vhost/main.c
@@ -346,7 +346,14 @@ port_init(uint16_t port)
                }
        }
 
-       rte_eth_macaddr_get(port, &vmdq_ports_eth_addr[port]);
+       retval = rte_eth_macaddr_get(port, &vmdq_ports_eth_addr[port]);
+       if (retval < 0) {
+               RTE_LOG(ERR, VHOST_PORT,
+                       "Failed to get MAC address on port %u: %s\n",
+                       port, rte_strerror(-retval));
+               return retval;
+       }
+
        RTE_LOG(INFO, VHOST_PORT, "Max virtio devices supported: %u\n", 
num_devices);
        RTE_LOG(INFO, VHOST_PORT, "Port %u MAC: %02"PRIx8" %02"PRIx8" %02"PRIx8
                        " %02"PRIx8" %02"PRIx8" %02"PRIx8"\n",
diff --git a/examples/vm_power_manager/guest_cli/main.c 
b/examples/vm_power_manager/guest_cli/main.c
index 2094145eb..f63b3c988 100644
--- a/examples/vm_power_manager/guest_cli/main.c
+++ b/examples/vm_power_manager/guest_cli/main.c
@@ -55,7 +55,11 @@ parse_args(int argc, char **argv)
        int i, cnt, idx;
 
        policy = get_policy();
-       set_policy_defaults(policy);
+       ret = set_policy_defaults(policy);
+       if (ret != 0) {
+               printf("Failed to set policy defaults\n");
+               return -1;
+       }
 
        argvopt = argv;
 
@@ -120,7 +124,10 @@ parse_args(int argc, char **argv)
                        for (i = 0; i < MAX_VCPU_PER_VM; i++) {
                                if (ports[i]) {
                                        printf("***Using port %d\n", i);
-                                       set_policy_mac(i, idx++);
+                                       if (set_policy_mac(i, idx++) != 0) {
+                                               printf("Cannot set policy MAC");
+                                               return -1;
+                                       }
                                }
                        }
                        policy->nb_mac_to_monitor = idx;
diff --git a/examples/vm_power_manager/guest_cli/vm_power_cli_guest.c 
b/examples/vm_power_manager/guest_cli/vm_power_cli_guest.c
index 78c3aa0a1..77e54401a 100644
--- a/examples/vm_power_manager/guest_cli/vm_power_cli_guest.c
+++ b/examples/vm_power_manager/guest_cli/vm_power_cli_guest.c
@@ -51,9 +51,15 @@ set_policy_mac(int port, int idx)
 {
        struct channel_packet *policy;
        union PFID pfid;
+       int ret;
 
        /* Use port MAC address as the vfid */
-       rte_eth_macaddr_get(port, &pfid.addr);
+       ret = rte_eth_macaddr_get(port, &pfid.addr);
+       if (retval != 0) {
+               printf("Failed to get device (port %u) MAC address: %s\n",
+                               port, rte_strerror(-retval));
+               return retval;
+       }
 
        printf("Port %u MAC: %02" PRIx8 ":%02" PRIx8 ":%02" PRIx8 ":"
                        "%02" PRIx8 ":%02" PRIx8 ":%02" PRIx8 "\n",
@@ -66,10 +72,15 @@ set_policy_mac(int port, int idx)
        return 0;
 }
 
-void
+int
 set_policy_defaults(struct channel_packet *pkt)
 {
-       set_policy_mac(0, 0);
+       int ret;
+
+       ret = set_policy_mac(0, 0);
+       if (ret != 0)
+               return ret;
+
        pkt->nb_mac_to_monitor = 1;
 
        pkt->t_boost_status.tbEnabled = false;
diff --git a/examples/vm_power_manager/guest_cli/vm_power_cli_guest.h 
b/examples/vm_power_manager/guest_cli/vm_power_cli_guest.h
index fd77f6a69..0c2cc1374 100644
--- a/examples/vm_power_manager/guest_cli/vm_power_cli_guest.h
+++ b/examples/vm_power_manager/guest_cli/vm_power_cli_guest.h
@@ -15,7 +15,7 @@ struct channel_packet *get_policy(void);
 
 int set_policy_mac(int port, int idx);
 
-void set_policy_defaults(struct channel_packet *pkt);
+int set_policy_defaults(struct channel_packet *pkt);
 
 void run_cli(__attribute__((unused)) void *arg);
 
diff --git a/examples/vm_power_manager/main.c b/examples/vm_power_manager/main.c
index 288a2462a..02b4cc450 100644
--- a/examples/vm_power_manager/main.c
+++ b/examples/vm_power_manager/main.c
@@ -112,7 +112,13 @@ port_init(uint16_t port, struct rte_mempool *mbuf_pool)
 
        /* Display the port MAC address. */
        struct rte_ether_addr addr;
-       rte_eth_macaddr_get(port, &addr);
+       retval = rte_eth_macaddr_get(port, &addr);
+       if (retval != 0) {
+               printf("Failed to get device (port %u) MAC address: %s\n",
+                               port, rte_strerror(-retval));
+               return retval;
+       }
+
        printf("Port %u MAC: %02" PRIx8 " %02" PRIx8 " %02" PRIx8
                           " %02" PRIx8 " %02" PRIx8 " %02" PRIx8 "\n",
                        (unsigned int)port,
diff --git a/examples/vmdq/main.c b/examples/vmdq/main.c
index 91f9a9904..6e6fc91ec 100644
--- a/examples/vmdq/main.c
+++ b/examples/vmdq/main.c
@@ -276,7 +276,12 @@ port_init(uint16_t port, struct rte_mempool *mbuf_pool)
                return retval;
        }
 
-       rte_eth_macaddr_get(port, &vmdq_ports_eth_addr[port]);
+       retval = rte_eth_macaddr_get(port, &vmdq_ports_eth_addr[port]);
+       if (retval < 0) {
+               printf("port %d MAC address get failed: %s\n", port,
+                      rte_strerror(-retval));
+               return retval;
+       }
        printf("Port %u MAC: %02"PRIx8" %02"PRIx8" %02"PRIx8
                        " %02"PRIx8" %02"PRIx8" %02"PRIx8"\n",
                        (unsigned)port,
diff --git a/examples/vmdq_dcb/main.c b/examples/vmdq_dcb/main.c
index 2122e41f5..594c4f195 100644
--- a/examples/vmdq_dcb/main.c
+++ b/examples/vmdq_dcb/main.c
@@ -333,7 +333,12 @@ port_init(uint16_t port, struct rte_mempool *mbuf_pool)
                return retval;
        }
 
-       rte_eth_macaddr_get(port, &vmdq_ports_eth_addr[port]);
+       retval = rte_eth_macaddr_get(port, &vmdq_ports_eth_addr[port]);
+       if (retval < 0) {
+               printf("port %d MAC address get failed: %s\n", port,
+                      rte_strerror(-retval));
+               return retval;
+       }
        printf("Port %u MAC: %02"PRIx8" %02"PRIx8" %02"PRIx8
                        " %02"PRIx8" %02"PRIx8" %02"PRIx8"\n",
                        (unsigned)port,
-- 
2.17.1

Reply via email to