printf(" - generic config\n");
printf("\t -- Socket %d\n", rte_eth_dev_socket_id(i));
- rte_eth_link_get(i, &link);
- printf("\t -- link speed %d duplex %d,"
- " auto neg %d status %d\n",
- link.link_speed,
- link.link_duplex,
- link.link_autoneg,
- link.link_status);
+ ret = rte_eth_link_get(i, &link);
+ if (ret < 0) {
+ printf("Link get failed (port %u): %s\n",
+ i, rte_strerror(-ret));
+ } else {
+ printf("\t -- link speed %d duplex %d,"
+ " auto neg %d status %d\n",
+ link.link_speed,
+ link.link_duplex,
+ link.link_autoneg,
+ link.link_status);
+ }
printf("\t -- promiscuous (%d)\n",
rte_eth_promiscuous_get(i));
ret = rte_eth_dev_get_mtu(i, &mtu);
int current_slave_count, current_bonding_mode, primary_port;
uint16_t slaves[RTE_MAX_ETHPORTS];
+ int retval;
/* Add slave to bonded device*/
TEST_ASSERT_SUCCESS(test_add_slave_to_bonded_device(),
"Primary port (%d) is not expected value (%d).",
primary_port, test_params->slave_port_ids[0]);
- rte_eth_link_get(test_params->bonded_port_id, &link_status);
+ retval = rte_eth_link_get(test_params->bonded_port_id, &link_status);
+ TEST_ASSERT(retval >= 0,
+ "Bonded port (%d) link get failed: %s\n",
+ test_params->bonded_port_id, rte_strerror(-retval));
TEST_ASSERT_EQUAL(link_status.link_status, 1,
"Bonded port (%d) status (%d) is not expected value (%d).\n",
test_params->bonded_port_id, link_status.link_status, 1);
uint16_t slaves[RTE_MAX_ETHPORTS];
struct rte_eth_link link_status;
+ int retval;
rte_eth_dev_stop(test_params->bonded_port_id);
- rte_eth_link_get(test_params->bonded_port_id, &link_status);
+ retval = rte_eth_link_get(test_params->bonded_port_id, &link_status);
+ TEST_ASSERT(retval >= 0,
+ "Bonded port (%d) link get failed: %s\n",
+ test_params->bonded_port_id, rte_strerror(-retval));
TEST_ASSERT_EQUAL(link_status.link_status, 0,
"Bonded port (%d) status (%d) is not expected value (%d).",
test_params->bonded_port_id, link_status.link_status, 0);
uint16_t portid;
uint8_t count, all_ports_up, print_flag = 0;
struct rte_eth_link link;
+ int ret;
printf("Checking link statuses...\n");
fflush(stdout);
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) {
{
struct rte_eth_conf null_conf;
struct rte_eth_link link;
+ int ret;
memset(&null_conf, 0, sizeof(struct rte_eth_conf));
return -1;
}
- rte_eth_link_get(port, &link);
+ ret = rte_eth_link_get(port, &link);
+ if (ret < 0) {
+ printf("Link get failed for port %u: %s",
+ port, rte_strerror(-ret));
+ return -1;
+ }
return 0;
}