X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=drivers%2Fnet%2Ffailsafe%2Ffailsafe.c;h=8af31d71b3df1e3ca672cd45279452eab44660af;hb=77791f626f64b3f7a91482316241167967067f23;hp=42dfaca30e46c99fe1080dfa54d89678e6e16da9;hpb=493779087466f788ae1b72e137718b23b944aedb;p=dpdk.git diff --git a/drivers/net/failsafe/failsafe.c b/drivers/net/failsafe/failsafe.c index 42dfaca30e..8af31d71b3 100644 --- a/drivers/net/failsafe/failsafe.c +++ b/drivers/net/failsafe/failsafe.c @@ -166,7 +166,7 @@ static int fs_eth_dev_create(struct rte_vdev_device *vdev) { struct rte_eth_dev *dev; - struct ether_addr *mac; + struct rte_ether_addr *mac; struct fs_priv *priv; struct sub_device *sdev; const char *params; @@ -253,8 +253,8 @@ fs_eth_dev_create(struct rte_vdev_device *vdev) */ FOREACH_SUBDEV(sdev, i, dev) if (sdev->state >= DEV_PROBED) { - ether_addr_copy(Ð(sdev)->data->mac_addrs[0], - mac); + rte_ether_addr_copy( + Ð(sdev)->data->mac_addrs[0], mac); break; } /* @@ -265,7 +265,7 @@ fs_eth_dev_create(struct rte_vdev_device *vdev) * probed slaves. */ if (i == priv->subs_tail) - eth_random_addr(&mac->addr_bytes[0]); + rte_eth_random_addr(&mac->addr_bytes[0]); } INFO("MAC address is %02x:%02x:%02x:%02x:%02x:%02x", mac->addr_bytes[0], mac->addr_bytes[1], @@ -364,6 +364,10 @@ rte_pmd_failsafe_probe(struct rte_vdev_device *vdev) * A sub-device can be plugged later. */ FOREACH_SUBDEV(sdev, i, eth_dev) { + /* skip empty devargs */ + if (sdev->devargs.name[0] == '\0') + continue; + /* rebuild devargs to be able to get the bus name. */ ret = rte_devargs_parse(&devargs, sdev->devargs.name); @@ -374,7 +378,7 @@ rte_pmd_failsafe_probe(struct rte_vdev_device *vdev) } if (!devargs_already_listed(&devargs)) { ret = rte_dev_probe(devargs.name); - if (ret != 0) { + if (ret < 0) { ERROR("Failed to probe devargs %s", devargs.name); continue;