examples: check status of getting link info
The return value of rte_eth_link_get() and rte_eth_link_get_nowait() was changed from void to int. Update the usage of the functions according to the new return type. Signed-off-by: Igor Romanov <igor.romanov@oktetlabs.ru> Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
This commit is contained in:
parent
844949eceb
commit
22e5c73bd1
@ -312,6 +312,7 @@ check_port_link_status(uint16_t port_id)
|
||||
#define MAX_CHECK_TIME 90 /* 9s (90 * 100ms) in total */
|
||||
uint8_t count;
|
||||
struct rte_eth_link link;
|
||||
int link_get_err = -EINVAL;
|
||||
|
||||
printf("\nChecking link status.");
|
||||
fflush(stdout);
|
||||
@ -319,9 +320,9 @@ check_port_link_status(uint16_t port_id)
|
||||
for (count = 0; count <= MAX_CHECK_TIME &&
|
||||
!rte_atomic16_read(&global_exit_flag); count++) {
|
||||
memset(&link, 0, sizeof(link));
|
||||
rte_eth_link_get_nowait(port_id, &link);
|
||||
link_get_err = rte_eth_link_get_nowait(port_id, &link);
|
||||
|
||||
if (link.link_status) {
|
||||
if (link_get_err >= 0 && link.link_status) {
|
||||
const char *dp = (link.link_duplex ==
|
||||
ETH_LINK_FULL_DUPLEX) ?
|
||||
"full-duplex" : "half-duplex";
|
||||
@ -334,7 +335,12 @@ check_port_link_status(uint16_t port_id)
|
||||
rte_delay_ms(CHECK_INTERVAL);
|
||||
}
|
||||
|
||||
printf("\nPort %d Link Down\n", port_id);
|
||||
if (link_get_err >= 0)
|
||||
printf("\nPort %d Link Down\n", port_id);
|
||||
else
|
||||
printf("\nGet link failed (port %d): %s\n", port_id,
|
||||
rte_strerror(-link_get_err));
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -173,12 +173,18 @@ port_init(uint16_t port, struct rte_mempool *mbuf_pool)
|
||||
return retval;
|
||||
|
||||
struct rte_eth_link link;
|
||||
rte_eth_link_get_nowait(port, &link);
|
||||
while (!link.link_status) {
|
||||
do {
|
||||
retval = rte_eth_link_get_nowait(port, &link);
|
||||
if (retval < 0) {
|
||||
printf("Failed link get (port %u): %s\n",
|
||||
port, rte_strerror(-retval));
|
||||
return retval;
|
||||
} else if (link.link_status)
|
||||
break;
|
||||
|
||||
printf("Waiting for Link up on port %"PRIu16"\n", port);
|
||||
sleep(1);
|
||||
rte_eth_link_get_nowait(port, &link);
|
||||
}
|
||||
} while (!link.link_status);
|
||||
|
||||
if (!link.link_status) {
|
||||
printf("Link down on port %"PRIu16"\n", port);
|
||||
|
@ -124,9 +124,13 @@ int
|
||||
rte_ethtool_get_link(uint16_t port_id)
|
||||
{
|
||||
struct rte_eth_link link;
|
||||
int ret;
|
||||
|
||||
RTE_ETH_VALID_PORTID_OR_ERR_RET(port_id, -ENODEV);
|
||||
rte_eth_link_get(port_id, &link);
|
||||
ret = rte_eth_link_get(port_id, &link);
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
|
||||
return link.link_status;
|
||||
}
|
||||
|
||||
|
@ -488,6 +488,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);
|
||||
@ -497,7 +498,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)
|
||||
|
@ -100,15 +100,19 @@ assert_link_status(void)
|
||||
{
|
||||
struct rte_eth_link link;
|
||||
uint8_t rep_cnt = MAX_REPEAT_TIMES;
|
||||
int link_get_err = -EINVAL;
|
||||
|
||||
memset(&link, 0, sizeof(link));
|
||||
do {
|
||||
rte_eth_link_get(port_id, &link);
|
||||
if (link.link_status == ETH_LINK_UP)
|
||||
link_get_err = rte_eth_link_get(port_id, &link);
|
||||
if (link_get_err == 0 && link.link_status == ETH_LINK_UP)
|
||||
break;
|
||||
rte_delay_ms(CHECK_INTERVAL);
|
||||
} while (--rep_cnt);
|
||||
|
||||
if (link_get_err < 0)
|
||||
rte_exit(EXIT_FAILURE, ":: error: link get is failing: %s\n",
|
||||
rte_strerror(-link_get_err));
|
||||
if (link.link_status == ETH_LINK_DOWN)
|
||||
rte_exit(EXIT_FAILURE, ":: error: link is still down\n");
|
||||
}
|
||||
|
@ -592,6 +592,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);
|
||||
@ -601,7 +602,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)
|
||||
|
@ -248,12 +248,19 @@ print_link_info(struct link *link, char *out, size_t out_size)
|
||||
struct rte_ether_addr mac_addr;
|
||||
struct rte_eth_link eth_link;
|
||||
uint16_t mtu;
|
||||
int ret;
|
||||
|
||||
memset(&stats, 0, sizeof(stats));
|
||||
rte_eth_stats_get(link->port_id, &stats);
|
||||
|
||||
rte_eth_macaddr_get(link->port_id, &mac_addr);
|
||||
rte_eth_link_get(link->port_id, ð_link);
|
||||
ret = rte_eth_link_get(link->port_id, ð_link);
|
||||
if (ret < 0) {
|
||||
snprintf(out, out_size, "\n%s: link get failed: %s",
|
||||
link->name, rte_strerror(-ret));
|
||||
return;
|
||||
}
|
||||
|
||||
rte_eth_dev_get_mtu(link->port_id, &mtu);
|
||||
|
||||
snprintf(out, out_size,
|
||||
|
@ -264,7 +264,8 @@ link_is_up(const char *name)
|
||||
return 0;
|
||||
|
||||
/* Resource */
|
||||
rte_eth_link_get(link->port_id, &link_params);
|
||||
if (rte_eth_link_get(link->port_id, &link_params) < 0)
|
||||
return 0;
|
||||
|
||||
return (link_params.link_status == ETH_LINK_DOWN) ? 0 : 1;
|
||||
}
|
||||
|
@ -711,6 +711,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);
|
||||
@ -720,7 +721,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)
|
||||
|
@ -1632,6 +1632,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);
|
||||
@ -1641,7 +1642,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)
|
||||
|
@ -575,6 +575,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);
|
||||
@ -584,7 +585,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)
|
||||
|
@ -654,6 +654,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\n");
|
||||
fflush(stdout);
|
||||
@ -663,7 +664,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)
|
||||
@ -731,6 +739,7 @@ monitor_all_ports_link_status(void *arg)
|
||||
struct kni_port_params **p = kni_port_params_array;
|
||||
int prev;
|
||||
(void) arg;
|
||||
int ret;
|
||||
|
||||
while (monitor_links) {
|
||||
rte_delay_ms(500);
|
||||
@ -738,7 +747,13 @@ monitor_all_ports_link_status(void *arg)
|
||||
if ((ports_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) {
|
||||
RTE_LOG(ERR, APP,
|
||||
"Get link failed (port %u): %s\n",
|
||||
portid, rte_strerror(-ret));
|
||||
continue;
|
||||
}
|
||||
for (i = 0; i < p[portid]->nb_kni; i++) {
|
||||
prev = rte_kni_update_link(p[portid]->kni[i],
|
||||
link.link_status);
|
||||
|
@ -1731,6 +1731,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);
|
||||
@ -1740,7 +1741,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)
|
||||
|
@ -685,6 +685,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);
|
||||
@ -694,7 +695,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)
|
||||
|
@ -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)
|
||||
|
@ -449,6 +449,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);
|
||||
@ -462,7 +463,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)
|
||||
|
@ -1814,6 +1814,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);
|
||||
@ -1823,7 +1824,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)
|
||||
|
@ -1970,6 +1970,7 @@ check_all_ports_link_status(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);
|
||||
@ -1979,7 +1980,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)
|
||||
|
@ -718,6 +718,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);
|
||||
@ -731,7 +732,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)
|
||||
|
@ -117,6 +117,7 @@ print_stats(void)
|
||||
|
||||
const char clr[] = { 27, '[', '2', 'J', '\0' };
|
||||
const char topLeft[] = { 27, '[', '1', ';', '1', 'H','\0' };
|
||||
int link_get_err;
|
||||
|
||||
/* Clear screen and move to top left */
|
||||
printf("%s%s", clr, topLeft);
|
||||
@ -129,7 +130,7 @@ print_stats(void)
|
||||
continue;
|
||||
|
||||
memset(&link, 0, sizeof(link));
|
||||
rte_eth_link_get_nowait(portid, &link);
|
||||
link_get_err = rte_eth_link_get_nowait(portid, &link);
|
||||
printf("\nStatistics for port %u ------------------------------"
|
||||
"\nLink status: %25s"
|
||||
"\nLink speed: %26u"
|
||||
@ -138,8 +139,11 @@ print_stats(void)
|
||||
"\nPackets received: %20"PRIu64
|
||||
"\nPackets dropped: %21"PRIu64,
|
||||
portid,
|
||||
link_get_err < 0 ? "Link get failed" :
|
||||
(link.link_status ? "Link up" : "Link down"),
|
||||
(unsigned)link.link_speed,
|
||||
link_get_err < 0 ? 0 :
|
||||
(unsigned int)link.link_speed,
|
||||
link_get_err < 0 ? "Link get failed" :
|
||||
(link.link_duplex == ETH_LINK_FULL_DUPLEX ? \
|
||||
"full-duplex" : "half-duplex"),
|
||||
port_statistics[portid].tx,
|
||||
@ -438,13 +442,19 @@ lsi_event_callback(uint16_t port_id, enum rte_eth_event_type type, void *param,
|
||||
void *ret_param)
|
||||
{
|
||||
struct rte_eth_link link;
|
||||
int ret;
|
||||
|
||||
RTE_SET_USED(param);
|
||||
RTE_SET_USED(ret_param);
|
||||
|
||||
printf("\n\nIn registered callback...\n");
|
||||
printf("Event type: %s\n", type == RTE_ETH_EVENT_INTR_LSC ? "LSC interrupt" : "unknown event");
|
||||
rte_eth_link_get_nowait(port_id, &link);
|
||||
ret = rte_eth_link_get_nowait(port_id, &link);
|
||||
if (ret < 0) {
|
||||
printf("Failed link get on port %d: %s\n",
|
||||
port_id, rte_strerror(-ret));
|
||||
return ret;
|
||||
}
|
||||
if (link.link_status) {
|
||||
printf("Port %d Link Up - speed %u Mbps - %s\n\n",
|
||||
port_id, (unsigned)link.link_speed,
|
||||
@ -465,6 +475,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);
|
||||
@ -474,7 +485,14 @@ check_all_ports_link_status(uint16_t port_num, 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)
|
||||
|
@ -331,6 +331,7 @@ check_all_ports_link_status(uint16_t port_num, uint32_t port_mask)
|
||||
uint16_t portid;
|
||||
uint8_t count, all_ports_up, print_flag = 0;
|
||||
struct rte_eth_link link;
|
||||
int ret;
|
||||
uint32_t n_rx_queues, n_tx_queues;
|
||||
|
||||
printf("\nChecking link status");
|
||||
@ -345,7 +346,14 @@ check_all_ports_link_status(uint16_t port_num, uint32_t port_mask)
|
||||
if ((n_rx_queues == 0) && (n_tx_queues == 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)
|
||||
|
@ -184,6 +184,7 @@ check_all_ports_link_status(uint16_t port_num, 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);
|
||||
@ -193,7 +194,14 @@ check_all_ports_link_status(uint16_t port_num, uint32_t port_mask)
|
||||
if ((port_mask & (1 << ports->id[portid])) == 0)
|
||||
continue;
|
||||
memset(&link, 0, sizeof(link));
|
||||
rte_eth_link_get_nowait(ports->id[portid], &link);
|
||||
ret = rte_eth_link_get_nowait(ports->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)
|
||||
|
@ -364,6 +364,7 @@ check_all_ports_link_status(uint16_t port_num, 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);
|
||||
@ -373,7 +374,14 @@ check_all_ports_link_status(uint16_t port_num, 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)
|
||||
|
@ -3432,6 +3432,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);
|
||||
@ -3441,7 +3442,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)
|
||||
|
@ -154,7 +154,12 @@ app_init_port(uint16_t portid, struct rte_mempool *mp)
|
||||
printf("done: ");
|
||||
|
||||
/* get link status */
|
||||
rte_eth_link_get(portid, &link);
|
||||
ret = rte_eth_link_get(portid, &link);
|
||||
if (ret < 0)
|
||||
rte_exit(EXIT_FAILURE,
|
||||
"rte_eth_link_get: err=%d, port=%u: %s\n",
|
||||
ret, portid, rte_strerror(-ret));
|
||||
|
||||
if (link.link_status) {
|
||||
printf(" Link Up - speed %u Mbps - %s\n",
|
||||
(uint32_t) link.link_speed,
|
||||
@ -295,7 +300,11 @@ app_init_sched_port(uint32_t portid, uint32_t socketid)
|
||||
uint32_t pipe, subport;
|
||||
int err;
|
||||
|
||||
rte_eth_link_get(portid, &link);
|
||||
err = rte_eth_link_get(portid, &link);
|
||||
if (err < 0)
|
||||
rte_exit(EXIT_FAILURE,
|
||||
"rte_eth_link_get: err=%d, port=%u: %s\n",
|
||||
err, portid, rte_strerror(-err));
|
||||
|
||||
port_params.socket = socketid;
|
||||
port_params.rate = (uint64_t) link.link_speed * 1000 * 1000 / 8;
|
||||
|
@ -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)
|
||||
|
@ -237,6 +237,7 @@ check_all_ports_link_status(uint32_t port_mask)
|
||||
#define MAX_CHECK_TIME 90 /* 9s (90 * 100ms) in total */
|
||||
uint16_t portid, count, all_ports_up, print_flag = 0;
|
||||
struct rte_eth_link link;
|
||||
int ret;
|
||||
|
||||
printf("\nChecking link status");
|
||||
fflush(stdout);
|
||||
@ -250,7 +251,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)
|
||||
|
Loading…
x
Reference in New Issue
Block a user