ethdev: use new ethernet parsing function
authorStephen Hemminger <stephen@networkplumber.org>
Fri, 5 Jul 2019 17:16:18 +0000 (10:16 -0700)
committerFerruh Yigit <ferruh.yigit@intel.com>
Mon, 8 Jul 2019 19:26:52 +0000 (21:26 +0200)
Use rte_eth_unformat_addr, so that ethdev can be built and work
without the cmdline library. The dependency on cmdline was
an arrangement of convenience anyway.

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
lib/Makefile
lib/librte_ethdev/Makefile
lib/librte_ethdev/meson.build
lib/librte_ethdev/rte_class_eth.c

index 3ad579f..493aeab 100644 (file)
@@ -25,7 +25,6 @@ DIRS-$(CONFIG_RTE_LIBRTE_ETHER) += librte_ethdev
 DEPDIRS-librte_ethdev := librte_net librte_eal librte_mempool librte_ring
 DEPDIRS-librte_ethdev += librte_mbuf
 DEPDIRS-librte_ethdev += librte_kvargs
-DEPDIRS-librte_ethdev += librte_cmdline
 DEPDIRS-librte_ethdev += librte_meter
 DIRS-$(CONFIG_RTE_LIBRTE_BBDEV) += librte_bbdev
 DEPDIRS-librte_bbdev := librte_eal librte_mempool librte_mbuf
index 8d4a026..60bcc22 100644 (file)
@@ -12,7 +12,7 @@ CFLAGS += -DALLOW_EXPERIMENTAL_API
 CFLAGS += -O3
 CFLAGS += $(WERROR_FLAGS)
 LDLIBS += -lrte_net -lrte_eal -lrte_mempool -lrte_ring
-LDLIBS += -lrte_mbuf -lrte_kvargs -lrte_cmdline -lrte_meter
+LDLIBS += -lrte_mbuf -lrte_kvargs -lrte_meter
 
 EXPORT_MAP := rte_ethdev_version.map
 
index 8d6165b..f75d428 100644 (file)
@@ -26,4 +26,4 @@ headers = files('rte_ethdev.h',
        'rte_tm.h',
        'rte_tm_driver.h')
 
-deps += ['net', 'kvargs', 'cmdline', 'meter']
+deps += ['net', 'kvargs', 'meter']
index 873a653..6338355 100644 (file)
@@ -4,7 +4,6 @@
 
 #include <string.h>
 
-#include <cmdline_parse_etheraddr.h>
 #include <rte_class.h>
 #include <rte_compat.h>
 #include <rte_errno.h>
@@ -43,19 +42,13 @@ static int
 eth_mac_cmp(const char *key __rte_unused,
                const char *value, void *opaque)
 {
-       int ret;
        struct rte_ether_addr mac;
        const struct rte_eth_dev_data *data = opaque;
        struct rte_eth_dev_info dev_info;
        uint32_t index;
 
        /* Parse devargs MAC address. */
-       /*
-        * cannot use ether_aton_r(value, &mac)
-        * because of include conflict with rte_ether.h
-        */
-       ret = cmdline_parse_etheraddr(NULL, value, &mac, sizeof(mac));
-       if (ret < 0)
+       if (rte_ether_unformat_addr(value, &mac) < 0)
                return -1; /* invalid devargs value */
 
        /* Return 0 if devargs MAC is matching one of the device MACs. */