X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=examples%2Fl2fwd-keepalive%2Fmain.c;h=b36834974ec7044195932ca88531dc8b98252ef5;hb=78de15bb586ac3d8938512db1977d83815c494f8;hp=a0513906884638a4a164f7264c2ad98f66194950;hpb=089e5ed727a15da2729cfee9b63533dd120bd04c;p=dpdk.git diff --git a/examples/l2fwd-keepalive/main.c b/examples/l2fwd-keepalive/main.c index a051390688..b36834974e 100644 --- a/examples/l2fwd-keepalive/main.c +++ b/examples/l2fwd-keepalive/main.c @@ -450,6 +450,7 @@ check_all_ports_link_status(uint32_t port_mask) uint16_t portid; uint8_t count, all_ports_up, print_flag = 0; struct rte_eth_link link; + int ret; printf("\nChecking link status"); fflush(stdout); @@ -459,7 +460,14 @@ check_all_ports_link_status(uint32_t port_mask) if ((port_mask & (1 << portid)) == 0) continue; memset(&link, 0, sizeof(link)); - rte_eth_link_get_nowait(portid, &link); + ret = rte_eth_link_get_nowait(portid, &link); + if (ret < 0) { + all_ports_up = 0; + if (print_flag == 1) + printf("Port %u link get failed: %s\n", + portid, rte_strerror(-ret)); + continue; + } /* print link status if flag set */ if (print_flag == 1) { if (link.link_status) @@ -657,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); @@ -709,7 +722,11 @@ main(int argc, char **argv) "rte_eth_dev_start:err=%d, port=%u\n", ret, portid); - rte_eth_promiscuous_enable(portid); + ret = rte_eth_promiscuous_enable(portid); + if (ret != 0) + rte_exit(EXIT_FAILURE, + "rte_eth_promiscuous_enable:err=%s, port=%u\n", + rte_strerror(-ret), portid); printf("Port %u, MAC address: " "%02X:%02X:%02X:%02X:%02X:%02X\n\n",