X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=examples%2Fserver_node_efd%2Fserver%2Finit.c;h=378a74fa5c66b4718fa9f8b5152fb0fac110e282;hb=c81e3f21d1ea05e5123278b15d9d5e1257b6ba99;hp=335741a8fc2dfd20b2b151595a5529cc1b1ce36d;hpb=f430bbcecf3eed93916f45654f51dd19d6955aa2;p=dpdk.git diff --git a/examples/server_node_efd/server/init.c b/examples/server_node_efd/server/init.c index 335741a8fc..378a74fa5c 100644 --- a/examples/server_node_efd/server/init.c +++ b/examples/server_node_efd/server/init.c @@ -246,6 +246,7 @@ check_all_ports_link_status(uint16_t port_num, uint32_t port_mask) uint8_t count, all_ports_up, print_flag = 0; uint16_t portid; struct rte_eth_link link; + int ret; printf("\nChecking link status"); fflush(stdout); @@ -255,7 +256,14 @@ check_all_ports_link_status(uint16_t port_num, uint32_t port_mask) if ((port_mask & (1 << info->id[portid])) == 0) continue; memset(&link, 0, sizeof(link)); - rte_eth_link_get_nowait(info->id[portid], &link); + ret = rte_eth_link_get_nowait(info->id[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) @@ -264,7 +272,7 @@ check_all_ports_link_status(uint16_t port_num, uint32_t port_mask) info->id[portid], link.link_speed, (link.link_duplex == ETH_LINK_FULL_DUPLEX) ? - ("full-duplex") : ("half-duplex\n")); + ("full-duplex") : ("half-duplex")); else printf("Port %d Link Down\n", info->id[portid]);