net/vdev_netvsc: add check for specifying by 1 way
[dpdk.git] / drivers / net / vdev_netvsc / vdev_netvsc.c
index 8b85711..79d1324 100644 (file)
@@ -569,7 +569,7 @@ vdev_netvsc_netvsc_probe(const struct if_nameindex *iface,
        /* Routed NetVSC should not be probed. */
        if (vdev_netvsc_has_route(iface, AF_INET) ||
            vdev_netvsc_has_route(iface, AF_INET6)) {
-               if (!specified || !force)
+               if (!specified)
                        return 0;
                DRV_LOG(WARNING, "probably using routed NetVSC interface \"%s\""
                        " (index %u)", iface->if_name, iface->if_index);
@@ -614,13 +614,13 @@ vdev_netvsc_netvsc_probe(const struct if_nameindex *iface,
                       name, ctx->id);
        if (ret == -1 || (size_t)ret >= sizeof(ctx->name))
                ++i;
-       ret = snprintf(ctx->devname, sizeof(ctx->devname), "net_failsafe_%s",
-                      ctx->name);
+       ret = snprintf(ctx->devname, sizeof(ctx->devname), "net_failsafe_vsc%u",
+                      ctx->id);
        if (ret == -1 || (size_t)ret >= sizeof(ctx->devname))
                ++i;
        ret = snprintf(ctx->devargs, sizeof(ctx->devargs),
-                      "fd(%d),dev(net_tap_%s,remote=%s)",
-                      ctx->pipe[0], ctx->name, ctx->if_name);
+                      "fd(%d),dev(net_tap_vsc%u,remote=%s)",
+                      ctx->pipe[0], ctx->id, ctx->if_name);
        if (ret == -1 || (size_t)ret >= sizeof(ctx->devargs))
                ++i;
        if (i) {
@@ -702,6 +702,11 @@ vdev_netvsc_vdev_probe(struct rte_vdev_device *dev)
                        rte_kvargs_free(kvargs);
                return 0;
        }
+       if (specified > 1) {
+               DRV_LOG(ERR, "More than one way used to specify the netvsc"
+                       " device.");
+               goto error;
+       }
        rte_eal_alarm_cancel(vdev_netvsc_alarm, NULL);
        /* Gather interfaces. */
        ret = vdev_netvsc_foreach_iface(vdev_netvsc_netvsc_probe, name, kvargs,
@@ -803,7 +808,7 @@ vdev_netvsc_scan_callback(__rte_unused void *arg)
                vdev_netvsc_cmp_rte_device, VDEV_NETVSC_DRIVER_NAME);
        if (dev)
                return;
-       if (rte_eal_devargs_add(RTE_DEVTYPE_VIRTUAL, VDEV_NETVSC_DRIVER_NAME))
+       if (rte_devargs_add(RTE_DEVTYPE_VIRTUAL, VDEV_NETVSC_DRIVER_NAME))
                DRV_LOG(ERR, "unable to add netvsc devargs.");
 }