From: "Gaëtan Rivet" <gaetan.rivet@6wind.com>
To: Neil Horman <nhorman@tuxdriver.com>
Cc: dev@dpdk.org, "Wiles, Keith" <keith.wiles@intel.com>
Subject: Re: [dpdk-dev] [PATCH v3 10/20] eal/dev: implement device iteration initialization
Date: Wed, 28 Mar 2018 14:48:28 +0200 [thread overview]
Message-ID: <20180328124828.7ue64rntx4dt6os3@bidouze.vm.6wind.com> (raw)
In-Reply-To: <20180327232641.GA16505@neilslaptop.think-freely.org>
On Tue, Mar 27, 2018 at 07:26:41PM -0400, Neil Horman wrote:
> On Tue, Mar 27, 2018 at 10:23:21PM +0200, Gaëtan Rivet wrote:
> > On Tue, Mar 27, 2018 at 03:04:13PM +0200, Gaëtan Rivet wrote:
> > > On Tue, Mar 27, 2018 at 02:40:00PM +0200, Gaëtan Rivet wrote:
> > > > On Tue, Mar 27, 2018 at 07:47:50AM -0400, Neil Horman wrote:
> > > > > On Tue, Mar 27, 2018 at 01:18:34AM +0200, Gaetan Rivet wrote:
> > > > > > Parse a device description.
> > > > > > Split this description in their relevant part for each layers.
> > > > > > No dynamic allocation is performed.
> > > > > >
> > > > > > Cc: Neil Horman <nhorman@tuxdriver.com>
> > > > > > Cc: "Wiles, Keith" <keith.wiles@intel.com>
> > > > > > Signed-off-by: Gaetan Rivet <gaetan.rivet@6wind.com>
> > > > > > ---
> > > > > >
> > > > > > This version uses librte_kvargs.
> > > > > >
> > > > > > lib/Makefile | 1 +
> > > > > > lib/librte_eal/bsdapp/eal/Makefile | 1 +
> > > > > > lib/librte_eal/common/eal_common_dev.c | 147 ++++++++++++++++++++++++++++++++
> > > > > > lib/librte_eal/common/include/rte_dev.h | 23 +++++
> > > > > > lib/librte_eal/linuxapp/eal/Makefile | 1 +
> > > > > > lib/librte_eal/rte_eal_version.map | 1 +
> > > > > > 6 files changed, 174 insertions(+)
> > > > > >
> > > > > > diff --git a/lib/Makefile b/lib/Makefile
> > > > > > index fc7a55a37..1b17526f7 100644
> > > > > > --- a/lib/Makefile
> > > > > > +++ b/lib/Makefile
> > > > > > @@ -6,6 +6,7 @@ include $(RTE_SDK)/mk/rte.vars.mk
> > > > > > DIRS-y += librte_compat
> > > > > > DIRS-$(CONFIG_RTE_LIBRTE_KVARGS) += librte_kvargs
> > > > > > DIRS-$(CONFIG_RTE_LIBRTE_EAL) += librte_eal
> > > > > > +DEPDIRS-librte_eal := librte_kvargs
> > > > > > DIRS-$(CONFIG_RTE_LIBRTE_PCI) += librte_pci
> > > > > > DEPDIRS-librte_pci := librte_eal
> > > > > > DIRS-$(CONFIG_RTE_LIBRTE_RING) += librte_ring
> > > > > > diff --git a/lib/librte_eal/bsdapp/eal/Makefile b/lib/librte_eal/bsdapp/eal/Makefile
> > > > > > index 17ff1ac45..f6cea7fc2 100644
> > > > > > --- a/lib/librte_eal/bsdapp/eal/Makefile
> > > > > > +++ b/lib/librte_eal/bsdapp/eal/Makefile
> > > > > > @@ -18,6 +18,7 @@ CFLAGS += $(WERROR_FLAGS) -O3
> > > > > > LDLIBS += -lexecinfo
> > > > > > LDLIBS += -lpthread
> > > > > > LDLIBS += -lgcc_s
> > > > > > +LDLIBS += -lrte_kvargs
> > > > > >
> > > > > > EXPORT_MAP := ../../rte_eal_version.map
> > > > > >
> > > > > > diff --git a/lib/librte_eal/common/eal_common_dev.c b/lib/librte_eal/common/eal_common_dev.c
> > > > > > index cd071442f..1f6df2351 100644
> > > > > > --- a/lib/librte_eal/common/eal_common_dev.c
> > > > > > +++ b/lib/librte_eal/common/eal_common_dev.c
> > > > > > @@ -10,9 +10,12 @@
> > > > > >
> > > > > > #include <rte_compat.h>
> > > > > > #include <rte_bus.h>
> > > > > > +#include <rte_class.h>
> > > > > > #include <rte_dev.h>
> > > > > > #include <rte_devargs.h>
> > > > > > #include <rte_debug.h>
> > > > > > +#include <rte_errno.h>
> > > > > > +#include <rte_kvargs.h>
> > > > > > #include <rte_log.h>
> > > > > >
> > > > > > #include "eal_private.h"
> > > > > > @@ -207,3 +210,147 @@ rte_eal_hotplug_remove(const char *busname, const char *devname)
> > > > > > rte_eal_devargs_remove(busname, devname);
> > > > > > return ret;
> > > > > > }
> > > > > > +
> > > > > > +static size_t
> > > > > > +dev_layer_count(const char *s)
> > > > > > +{
> > > > > > + size_t i = s ? 1 : 0;
> > > > > > +
> > > > > > + while (s != NULL && s[0] != '\0') {
> > > > > > + i += s[0] == '/';
> > > > > > + s++;
> > > > > > + }
> > > > > > + return i;
> > > > > > +}
> > > > > > +
> > > > > So the above code really just counts the number characters in the string,
> > > > > omitting the delimiter character '/', right? If thats all you want to do, you can just
> > > > > use strtok and strnlen for that, cant you?
> > > >
> > > > Will do.
> > > >
> > >
> > > Answered too quickly.
> > > No, this function only counts the number of occurences of '/' in the
> > > text.
> > >
> > > strtok could be used however in the main function.
> > > Will see for a simpler implementation using it.
> > >
> >
> > After a few tries, I see no benefit in using strtok.
> > The original const text must still be tokenized, strtok would modify it.
> >
> > Duplicating would force finding the references in the original text,
> > which would make the code as complex as it is now.
> >
> Oh, if you don't want to modify the string, then index() is what you want. see
> man 3 index, or man 3 rindex
>
> Neil
>
strchr is already used when necessary, and index is removed since
POSIX.1-2008.
Thanks for the suggestions, it was still helpful to go over the code and
see if there were possible improvements.
--
Gaëtan Rivet
6WIND
next prev parent reply other threads:[~2018-03-28 12:48 UTC|newest]
Thread overview: 364+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-03-15 17:49 [dpdk-dev] [PATCH v1 00/18] Device querying Gaetan Rivet
2018-03-15 17:49 ` [dpdk-dev] [PATCH v1 01/18] eal: introduce dtor macros Gaetan Rivet
2018-03-15 17:49 ` [dpdk-dev] [PATCH v1 02/18] eal: introduce device class abstraction Gaetan Rivet
2018-03-15 17:49 ` [dpdk-dev] [PATCH v1 03/18] eal/class: register destructor Gaetan Rivet
2018-03-15 17:49 ` [dpdk-dev] [PATCH v1 04/18] eal: add lightweight kvarg parsing utility Gaetan Rivet
2018-03-15 17:49 ` [dpdk-dev] [PATCH v1 05/18] eal/dev: add device iterator interface Gaetan Rivet
2018-03-15 17:49 ` [dpdk-dev] [PATCH v1 06/18] eal/dev: implement device iteration initialization Gaetan Rivet
2018-03-15 17:49 ` [dpdk-dev] [PATCH v1 07/18] eal/class: add device iteration Gaetan Rivet
2018-03-15 17:49 ` [dpdk-dev] [PATCH v1 08/18] eal/bus: " Gaetan Rivet
2018-03-15 17:49 ` [dpdk-dev] [PATCH v1 09/18] eal/dev: implement " Gaetan Rivet
2018-03-15 17:49 ` [dpdk-dev] [PATCH v1 10/18] ethdev: register ether layer as a class Gaetan Rivet
2018-03-15 17:49 ` [dpdk-dev] [PATCH v1 11/18] ethdev: add device matching field name Gaetan Rivet
2018-03-15 17:49 ` [dpdk-dev] [PATCH v1 12/18] bus/pci: fix find device implementation Gaetan Rivet
2018-03-15 17:49 ` [dpdk-dev] [PATCH v1 13/18] bus/pci: implement device iteration and comparison Gaetan Rivet
2018-03-15 17:49 ` [dpdk-dev] [PATCH v1 14/18] bus/pci: add device matching field id Gaetan Rivet
2018-03-15 17:49 ` [dpdk-dev] [PATCH v1 15/18] bus/vdev: fix find device implementation Gaetan Rivet
2018-03-15 17:49 ` [dpdk-dev] [PATCH v1 16/18] bus/vdev: implement device iteration Gaetan Rivet
2018-03-15 17:49 ` [dpdk-dev] [PATCH v1 17/18] bus/vdev: add device matching field driver Gaetan Rivet
2018-03-15 17:49 ` [dpdk-dev] [PATCH v1 18/18] app/testpmd: add show device command Gaetan Rivet
2018-03-19 11:33 ` Gaëtan Rivet
2018-03-20 17:51 ` [dpdk-dev] [PATCH v1 00/18] Device querying Gaëtan Rivet
2018-03-21 17:15 ` [dpdk-dev] [PATCH v2 " Gaetan Rivet
2018-03-21 17:15 ` [dpdk-dev] [PATCH v2 01/18] eal: introduce dtor macros Gaetan Rivet
2018-03-22 11:35 ` Neil Horman
2018-03-22 13:51 ` Neil Horman
2018-03-22 15:56 ` Gaëtan Rivet
2018-03-22 15:58 ` [dpdk-dev] [PATCH] eal: list acceptable init priorities Gaetan Rivet
2018-03-23 0:40 ` Neil Horman
2018-03-23 0:38 ` [dpdk-dev] [PATCH v2 01/18] eal: introduce dtor macros Neil Horman
2018-03-21 17:15 ` [dpdk-dev] [PATCH v2 02/18] eal: introduce device class abstraction Gaetan Rivet
2018-03-21 17:15 ` [dpdk-dev] [PATCH v2 03/18] eal/class: register destructor Gaetan Rivet
2018-03-21 17:15 ` [dpdk-dev] [PATCH v2 04/18] eal: add lightweight kvarg parsing utility Gaetan Rivet
2018-03-21 17:32 ` Wiles, Keith
2018-03-21 17:58 ` Gaëtan Rivet
2018-03-22 14:10 ` Neil Horman
2018-03-22 16:27 ` Gaëtan Rivet
2018-03-23 0:53 ` Neil Horman
2018-03-23 9:31 ` Gaëtan Rivet
2018-03-23 11:54 ` Neil Horman
2018-03-23 13:12 ` Gaëtan Rivet
2018-03-23 18:45 ` [dpdk-dev] [PATCH 1/2] kvargs: the life of the party Gaetan Rivet
2018-03-23 18:45 ` [dpdk-dev] [PATCH 2/2] dev: use rte_kvargs Gaetan Rivet
2018-03-26 11:38 ` Neil Horman
2018-03-26 13:59 ` Gaëtan Rivet
2018-03-26 15:14 ` Wiles, Keith
2018-03-26 11:23 ` [dpdk-dev] [PATCH v2 04/18] eal: add lightweight kvarg parsing utility Neil Horman
2018-03-23 13:15 ` Wiles, Keith
2018-03-21 17:15 ` [dpdk-dev] [PATCH v2 05/18] eal/dev: add device iterator interface Gaetan Rivet
2018-03-21 17:15 ` [dpdk-dev] [PATCH v2 06/18] eal/class: add device iteration Gaetan Rivet
2018-03-21 17:15 ` [dpdk-dev] [PATCH v2 07/18] eal/bus: " Gaetan Rivet
2018-03-21 17:15 ` [dpdk-dev] [PATCH v2 08/18] eal/dev: implement device iteration initialization Gaetan Rivet
2018-03-21 17:15 ` [dpdk-dev] [PATCH v2 09/18] eal/dev: implement device iteration Gaetan Rivet
2018-03-21 17:15 ` [dpdk-dev] [PATCH v2 10/18] bus/pci: fix find device implementation Gaetan Rivet
2018-03-21 17:15 ` [dpdk-dev] [PATCH v2 11/18] bus/pci: implement device iteration and comparison Gaetan Rivet
2018-03-21 17:15 ` [dpdk-dev] [PATCH v2 12/18] bus/pci: add device matching field id Gaetan Rivet
2018-03-21 17:15 ` [dpdk-dev] [PATCH v2 13/18] bus/vdev: fix find device implementation Gaetan Rivet
2018-03-21 17:15 ` [dpdk-dev] [PATCH v2 14/18] bus/vdev: implement device iteration Gaetan Rivet
2018-03-21 17:15 ` [dpdk-dev] [PATCH v2 15/18] bus/vdev: add device matching field driver Gaetan Rivet
2018-03-21 17:15 ` [dpdk-dev] [PATCH v2 16/18] ethdev: register ether layer as a class Gaetan Rivet
2018-03-21 17:15 ` [dpdk-dev] [PATCH v2 17/18] ethdev: add device matching field name Gaetan Rivet
2018-03-21 17:15 ` [dpdk-dev] [PATCH v2 18/18] app/testpmd: add show device command Gaetan Rivet
2018-03-22 11:31 ` [dpdk-dev] [PATCH v2 00/18] Device querying Bruce Richardson
2018-03-26 23:18 ` [dpdk-dev] [PATCH v3 00/20] " Gaetan Rivet
2018-03-26 23:18 ` [dpdk-dev] [PATCH v3 01/20] kvargs: remove rte log dependency Gaetan Rivet
2018-03-27 18:19 ` Neil Horman
2018-03-26 23:18 ` [dpdk-dev] [PATCH v3 02/20] kvargs: build before EAL Gaetan Rivet
2018-03-27 9:12 ` Bruce Richardson
2018-03-27 9:53 ` Gaëtan Rivet
2018-03-26 23:18 ` [dpdk-dev] [PATCH v3 03/20] eal: list acceptable init priorities Gaetan Rivet
2018-03-27 7:18 ` Shreyansh Jain
2018-03-26 23:18 ` [dpdk-dev] [PATCH v3 04/20] eal: introduce dtor macros Gaetan Rivet
2018-03-26 23:18 ` [dpdk-dev] [PATCH v3 05/20] eal: introduce device class abstraction Gaetan Rivet
2018-03-27 8:38 ` Shreyansh Jain
2018-03-27 9:51 ` Gaëtan Rivet
2018-03-26 23:18 ` [dpdk-dev] [PATCH v3 06/20] eal/class: register destructor Gaetan Rivet
2018-03-27 8:42 ` Shreyansh Jain
2018-03-27 8:49 ` Gaëtan Rivet
2018-03-26 23:18 ` [dpdk-dev] [PATCH v3 07/20] eal/dev: add device iterator interface Gaetan Rivet
2018-03-26 23:18 ` [dpdk-dev] [PATCH v3 08/20] eal/class: add device iteration Gaetan Rivet
2018-03-26 23:18 ` [dpdk-dev] [PATCH v3 09/20] eal/bus: " Gaetan Rivet
2018-03-26 23:18 ` [dpdk-dev] [PATCH v3 10/20] eal/dev: implement device iteration initialization Gaetan Rivet
2018-03-27 11:47 ` Neil Horman
2018-03-27 12:40 ` Gaëtan Rivet
2018-03-27 13:04 ` Gaëtan Rivet
2018-03-27 20:23 ` Gaëtan Rivet
2018-03-27 23:26 ` Neil Horman
2018-03-28 12:48 ` Gaëtan Rivet [this message]
2018-03-27 13:08 ` Wiles, Keith
2018-03-27 18:26 ` Neil Horman
2018-03-27 20:20 ` Gaëtan Rivet
2018-03-27 20:28 ` Bruce Richardson
2018-03-27 20:35 ` Gaëtan Rivet
2018-03-27 20:48 ` Richardson, Bruce
2018-03-27 23:53 ` Neil Horman
2018-03-28 8:10 ` Gaëtan Rivet
2018-03-28 11:17 ` Neil Horman
2018-04-22 22:29 ` Thomas Monjalon
2018-03-26 23:18 ` [dpdk-dev] [PATCH v3 11/20] eal/dev: implement device iteration Gaetan Rivet
2018-03-26 23:18 ` [dpdk-dev] [PATCH v3 12/20] bus/pci: fix find device implementation Gaetan Rivet
2018-03-26 23:18 ` [dpdk-dev] [PATCH v3 13/20] bus/pci: implement device iteration and comparison Gaetan Rivet
2018-03-26 23:18 ` [dpdk-dev] [PATCH v3 14/20] bus/pci: add device matching field id Gaetan Rivet
2018-03-26 23:18 ` [dpdk-dev] [PATCH v3 15/20] bus/vdev: fix find device implementation Gaetan Rivet
2018-03-26 23:18 ` [dpdk-dev] [PATCH v3 16/20] bus/vdev: implement device iteration Gaetan Rivet
2018-03-26 23:18 ` [dpdk-dev] [PATCH v3 17/20] bus/vdev: add device matching field driver Gaetan Rivet
2018-03-26 23:18 ` [dpdk-dev] [PATCH v3 18/20] ethdev: register ether layer as a class Gaetan Rivet
2018-03-26 23:18 ` [dpdk-dev] [PATCH v3 19/20] ethdev: add device matching field name Gaetan Rivet
2018-03-26 23:18 ` [dpdk-dev] [PATCH v3 20/20] app/testpmd: add show device command Gaetan Rivet
2018-03-29 21:23 ` [dpdk-dev] [PATCH v4 00/20] Device querying Gaetan Rivet
2018-03-29 21:23 ` [dpdk-dev] [PATCH v4 01/20] kvargs: build before EAL Gaetan Rivet
2018-03-29 21:23 ` [dpdk-dev] [PATCH v4 02/20] eal: list acceptable init priorities Gaetan Rivet
2018-03-29 21:23 ` [dpdk-dev] [PATCH v4 03/20] eal: introduce dtor macros Gaetan Rivet
2018-03-29 21:23 ` [dpdk-dev] [PATCH v4 04/20] eal: introduce device class abstraction Gaetan Rivet
2018-03-29 21:23 ` [dpdk-dev] [PATCH v4 05/20] eal/class: register destructor Gaetan Rivet
2018-03-29 21:23 ` [dpdk-dev] [PATCH v4 06/20] eal/dev: add device iterator interface Gaetan Rivet
2018-03-29 21:23 ` [dpdk-dev] [PATCH v4 07/20] eal/class: add device iteration Gaetan Rivet
2018-03-29 21:23 ` [dpdk-dev] [PATCH v4 08/20] eal/bus: " Gaetan Rivet
2018-03-29 21:23 ` [dpdk-dev] [PATCH v4 09/20] eal/dev: implement device iteration initialization Gaetan Rivet
2018-03-30 15:22 ` Wiles, Keith
2018-03-30 15:53 ` Gaëtan Rivet
2018-03-30 16:22 ` Wiles, Keith
2018-03-31 15:33 ` Gaëtan Rivet
2018-03-29 21:23 ` [dpdk-dev] [PATCH v4 10/20] eal/dev: implement device iteration Gaetan Rivet
2018-04-09 7:28 ` Matan Azrad
2018-04-09 8:16 ` Gaëtan Rivet
2018-03-29 21:23 ` [dpdk-dev] [PATCH v4 11/20] kvargs: add generic string matching callback Gaetan Rivet
2018-03-29 21:23 ` [dpdk-dev] [PATCH v4 12/20] bus/pci: fix find device implementation Gaetan Rivet
2018-03-29 21:23 ` [dpdk-dev] [PATCH v4 13/20] bus/pci: implement device iteration and comparison Gaetan Rivet
2018-03-29 21:23 ` [dpdk-dev] [PATCH v4 14/20] bus/pci: add device matching field id Gaetan Rivet
2018-03-29 21:23 ` [dpdk-dev] [PATCH v4 15/20] bus/vdev: fix find device implementation Gaetan Rivet
2018-03-29 21:23 ` [dpdk-dev] [PATCH v4 16/20] bus/vdev: implement device iteration Gaetan Rivet
2018-03-29 21:23 ` [dpdk-dev] [PATCH v4 17/20] bus/vdev: add device matching field driver Gaetan Rivet
2018-03-29 21:23 ` [dpdk-dev] [PATCH v4 18/20] ethdev: register ether layer as a class Gaetan Rivet
2018-04-09 7:41 ` Matan Azrad
2018-04-09 7:47 ` Gaëtan Rivet
2018-04-09 7:58 ` Matan Azrad
2018-04-09 8:12 ` Gaëtan Rivet
2018-03-29 21:23 ` [dpdk-dev] [PATCH v4 19/20] ethdev: add device matching field name Gaetan Rivet
2018-03-29 21:23 ` [dpdk-dev] [PATCH v4 20/20] app/testpmd: add show device command Gaetan Rivet
2018-04-11 0:04 ` [dpdk-dev] [PATCH v5 00/21] Device querying Gaetan Rivet
2018-04-11 0:04 ` [dpdk-dev] [PATCH v5 01/21] kvargs: build before EAL Gaetan Rivet
2018-04-11 0:04 ` [dpdk-dev] [PATCH v5 02/21] eal: list acceptable init priorities Gaetan Rivet
2018-04-12 11:28 ` Neil Horman
2018-04-12 21:57 ` Gaëtan Rivet
2018-04-13 11:42 ` Neil Horman
2018-04-13 12:52 ` Shreyansh Jain
2018-04-13 12:55 ` Gaëtan Rivet
2018-04-14 18:45 ` Neil Horman
2018-04-15 15:13 ` Gaëtan Rivet
2018-04-16 11:31 ` Neil Horman
2018-04-11 0:04 ` [dpdk-dev] [PATCH v5 03/21] eal: introduce dtor macros Gaetan Rivet
2018-04-11 0:04 ` [dpdk-dev] [PATCH v5 04/21] eal: introduce device class abstraction Gaetan Rivet
2018-04-11 0:04 ` [dpdk-dev] [PATCH v5 05/21] eal/class: register destructor Gaetan Rivet
2018-04-11 0:04 ` [dpdk-dev] [PATCH v5 06/21] eal/dev: add device iterator interface Gaetan Rivet
2018-04-11 0:04 ` [dpdk-dev] [PATCH v5 07/21] eal/class: add device iteration Gaetan Rivet
2018-04-11 0:04 ` [dpdk-dev] [PATCH v5 08/21] eal/bus: " Gaetan Rivet
2018-04-11 0:04 ` [dpdk-dev] [PATCH v5 09/21] eal/dev: implement device iteration initialization Gaetan Rivet
2018-04-11 0:04 ` [dpdk-dev] [PATCH v5 10/21] eal/dev: implement device iteration Gaetan Rivet
2018-04-11 0:04 ` [dpdk-dev] [PATCH v5 11/21] kvargs: add generic string matching callback Gaetan Rivet
2018-04-11 0:04 ` [dpdk-dev] [PATCH v5 12/21] bus/pci: fix find device implementation Gaetan Rivet
2018-04-11 0:04 ` [dpdk-dev] [PATCH v5 13/21] bus/pci: implement device iteration and comparison Gaetan Rivet
2018-04-11 0:04 ` [dpdk-dev] [PATCH v5 14/21] bus/pci: add device matching field id Gaetan Rivet
2018-04-11 0:04 ` [dpdk-dev] [PATCH v5 15/21] bus/vdev: fix find device implementation Gaetan Rivet
2018-04-11 0:04 ` [dpdk-dev] [PATCH v5 16/21] bus/vdev: implement device iteration Gaetan Rivet
2018-04-11 0:04 ` [dpdk-dev] [PATCH v5 17/21] bus/vdev: add device matching field driver Gaetan Rivet
2018-04-11 0:04 ` [dpdk-dev] [PATCH v5 18/21] ethdev: add private generic device iterator Gaetan Rivet
2018-04-11 8:41 ` Gaëtan Rivet
2018-04-11 0:04 ` [dpdk-dev] [PATCH v5 19/21] ethdev: register ether layer as a class Gaetan Rivet
2018-04-11 0:04 ` [dpdk-dev] [PATCH v5 20/21] ethdev: add device matching field name Gaetan Rivet
2018-04-11 0:04 ` [dpdk-dev] [PATCH v5 21/21] app/testpmd: add show device command Gaetan Rivet
2018-04-13 13:22 ` [dpdk-dev] [PATCH v6 00/22] Device querying Gaetan Rivet
2018-04-13 13:22 ` [dpdk-dev] [PATCH v6 01/22] kvargs: build before EAL Gaetan Rivet
2018-04-13 13:22 ` [dpdk-dev] [PATCH v6 02/22] eal: list acceptable init priorities Gaetan Rivet
2018-04-13 13:22 ` [dpdk-dev] [PATCH v6 03/22] eal: add last init priority Gaetan Rivet
2018-04-13 13:22 ` [dpdk-dev] [PATCH v6 04/22] eal: introduce dtor macros Gaetan Rivet
2018-04-13 13:22 ` [dpdk-dev] [PATCH v6 05/22] eal: introduce device class abstraction Gaetan Rivet
2018-04-13 13:22 ` [dpdk-dev] [PATCH v6 06/22] eal/class: register destructor Gaetan Rivet
2018-04-13 13:22 ` [dpdk-dev] [PATCH v6 07/22] eal/dev: add device iterator interface Gaetan Rivet
2018-04-13 13:22 ` [dpdk-dev] [PATCH v6 08/22] eal/class: add device iteration Gaetan Rivet
2018-04-13 13:22 ` [dpdk-dev] [PATCH v6 09/22] eal/bus: " Gaetan Rivet
2018-04-13 13:22 ` [dpdk-dev] [PATCH v6 10/22] eal/dev: implement device iteration initialization Gaetan Rivet
2018-04-13 13:22 ` [dpdk-dev] [PATCH v6 11/22] eal/dev: implement device iteration Gaetan Rivet
2018-04-13 13:22 ` [dpdk-dev] [PATCH v6 12/22] kvargs: add generic string matching callback Gaetan Rivet
2018-04-13 14:49 ` Shreyansh Jain
2018-04-13 15:06 ` Gaëtan Rivet
2018-04-13 13:22 ` [dpdk-dev] [PATCH v6 13/22] bus/pci: fix find device implementation Gaetan Rivet
2018-04-13 13:22 ` [dpdk-dev] [PATCH v6 14/22] bus/pci: implement device iteration and comparison Gaetan Rivet
2018-04-13 13:22 ` [dpdk-dev] [PATCH v6 15/22] bus/pci: add device matching field id Gaetan Rivet
2018-04-13 13:22 ` [dpdk-dev] [PATCH v6 16/22] bus/vdev: fix find device implementation Gaetan Rivet
2018-04-13 13:22 ` [dpdk-dev] [PATCH v6 17/22] bus/vdev: implement device iteration Gaetan Rivet
2018-04-13 13:22 ` [dpdk-dev] [PATCH v6 18/22] bus/vdev: add device matching field driver Gaetan Rivet
2018-04-13 13:22 ` [dpdk-dev] [PATCH v6 19/22] ethdev: add private generic device iterator Gaetan Rivet
2018-04-13 13:22 ` [dpdk-dev] [PATCH v6 20/22] ethdev: register ether layer as a class Gaetan Rivet
2018-04-13 13:22 ` [dpdk-dev] [PATCH v6 21/22] ethdev: add device matching field name Gaetan Rivet
2018-04-13 13:22 ` [dpdk-dev] [PATCH v6 22/22] app/testpmd: add show device command Gaetan Rivet
2018-04-15 15:07 ` [dpdk-dev] [PATCH v7 00/22] Device querying Gaetan Rivet
2018-04-15 15:07 ` [dpdk-dev] [PATCH v7 01/22] kvargs: build before EAL Gaetan Rivet
2018-06-14 14:10 ` Bruce Richardson
2018-04-15 15:07 ` [dpdk-dev] [PATCH v7 02/22] eal: list acceptable init priorities Gaetan Rivet
2018-04-15 15:07 ` [dpdk-dev] [PATCH v7 03/22] eal: add last init priority Gaetan Rivet
2018-04-15 15:07 ` [dpdk-dev] [PATCH v7 04/22] eal: introduce dtor macros Gaetan Rivet
2018-04-15 15:07 ` [dpdk-dev] [PATCH v7 05/22] eal: introduce device class abstraction Gaetan Rivet
2018-04-15 15:07 ` [dpdk-dev] [PATCH v7 06/22] eal/class: register destructor Gaetan Rivet
2018-04-15 15:07 ` [dpdk-dev] [PATCH v7 07/22] eal/dev: add device iterator interface Gaetan Rivet
2018-04-15 15:07 ` [dpdk-dev] [PATCH v7 08/22] eal/class: add device iteration Gaetan Rivet
2018-04-15 15:07 ` [dpdk-dev] [PATCH v7 09/22] eal/bus: " Gaetan Rivet
2018-04-15 15:07 ` [dpdk-dev] [PATCH v7 10/22] eal/dev: implement device iteration initialization Gaetan Rivet
2018-04-15 15:07 ` [dpdk-dev] [PATCH v7 11/22] eal/dev: implement device iteration Gaetan Rivet
2018-04-15 15:07 ` [dpdk-dev] [PATCH v7 12/22] kvargs: add generic string matching callback Gaetan Rivet
2018-04-15 15:07 ` [dpdk-dev] [PATCH v7 13/22] bus/pci: fix find device implementation Gaetan Rivet
2018-04-15 15:07 ` [dpdk-dev] [PATCH v7 14/22] bus/pci: implement device iteration and comparison Gaetan Rivet
2018-04-15 15:07 ` [dpdk-dev] [PATCH v7 15/22] bus/pci: add device matching field id Gaetan Rivet
2018-04-15 15:07 ` [dpdk-dev] [PATCH v7 16/22] bus/vdev: fix find device implementation Gaetan Rivet
2018-04-15 15:07 ` [dpdk-dev] [PATCH v7 17/22] bus/vdev: implement device iteration Gaetan Rivet
2018-04-15 15:07 ` [dpdk-dev] [PATCH v7 18/22] bus/vdev: add device matching field driver Gaetan Rivet
2018-04-15 15:07 ` [dpdk-dev] [PATCH v7 19/22] ethdev: add private generic device iterator Gaetan Rivet
2018-04-15 15:07 ` [dpdk-dev] [PATCH v7 20/22] ethdev: register ether layer as a class Gaetan Rivet
2018-04-15 15:07 ` [dpdk-dev] [PATCH v7 21/22] ethdev: add device matching field name Gaetan Rivet
2018-04-15 15:07 ` [dpdk-dev] [PATCH v7 22/22] app/testpmd: add show device command Gaetan Rivet
2018-06-14 10:59 ` Iremonger, Bernard
2018-06-14 11:35 ` Gaëtan Rivet
2018-04-22 22:54 ` [dpdk-dev] [PATCH v7 00/22] Device querying Thomas Monjalon
2018-04-24 10:03 ` Gaëtan Rivet
2018-06-26 16:56 ` [dpdk-dev] [PATCH v8 00/21] " Gaetan Rivet
2018-06-26 16:56 ` [dpdk-dev] [PATCH v8 01/21] devargs: add non-variadic parsing function Gaetan Rivet
2018-06-26 16:56 ` [dpdk-dev] [PATCH v8 02/21] kvargs: build before EAL Gaetan Rivet
2018-06-26 16:56 ` [dpdk-dev] [PATCH v8 03/21] kvargs: introduce a more flexible parsing function Gaetan Rivet
2018-06-26 16:56 ` [dpdk-dev] [PATCH v8 04/21] eal: introduce dtor macros Gaetan Rivet
2018-06-26 16:56 ` [dpdk-dev] [PATCH v8 05/21] eal: introduce device class abstraction Gaetan Rivet
2018-06-26 16:56 ` [dpdk-dev] [PATCH v8 06/21] eal/class: register destructor Gaetan Rivet
2018-06-26 16:56 ` [dpdk-dev] [PATCH v8 07/21] devargs: add function to parse device layers Gaetan Rivet
2018-06-26 16:56 ` [dpdk-dev] [PATCH v8 08/21] eal/dev: add device iterator interface Gaetan Rivet
2018-06-26 16:56 ` [dpdk-dev] [PATCH v8 09/21] eal/class: add device iteration Gaetan Rivet
2018-06-26 16:56 ` [dpdk-dev] [PATCH v8 10/21] eal/bus: " Gaetan Rivet
2018-06-26 16:56 ` [dpdk-dev] [PATCH v8 11/21] eal/dev: implement device iteration initialization Gaetan Rivet
2018-06-26 16:56 ` [dpdk-dev] [PATCH v8 12/21] eal/dev: implement device iteration Gaetan Rivet
2018-06-26 16:56 ` [dpdk-dev] [PATCH v8 13/21] kvargs: add generic string matching callback Gaetan Rivet
2018-06-26 16:56 ` [dpdk-dev] [PATCH v8 14/21] bus/pci: implement device iteration and comparison Gaetan Rivet
2018-06-26 16:56 ` [dpdk-dev] [PATCH v8 15/21] bus/pci: add device matching field id Gaetan Rivet
2018-06-26 16:56 ` [dpdk-dev] [PATCH v8 16/21] bus/vdev: implement device iteration Gaetan Rivet
2018-06-26 16:56 ` [dpdk-dev] [PATCH v8 17/21] bus/vdev: add device matching field driver Gaetan Rivet
2018-06-26 16:56 ` [dpdk-dev] [PATCH v8 18/21] ethdev: add private generic device iterator Gaetan Rivet
2018-06-26 16:56 ` [dpdk-dev] [PATCH v8 19/21] ethdev: register ether layer as a class Gaetan Rivet
2018-06-26 16:56 ` [dpdk-dev] [PATCH v8 20/21] ethdev: add device matching field name Gaetan Rivet
2018-06-26 16:56 ` [dpdk-dev] [PATCH v8 21/21] app/testpmd: add show device command Gaetan Rivet
2018-06-28 10:03 ` Iremonger, Bernard
2018-06-28 10:09 ` Gaëtan Rivet
2018-06-28 11:28 ` Iremonger, Bernard
2018-06-28 11:56 ` Gaëtan Rivet
2018-06-27 10:55 ` [dpdk-dev] [PATCH v8 00/21] Device querying Bruce Richardson
2018-06-27 11:29 ` Gaëtan Rivet
2018-07-03 22:14 ` [dpdk-dev] [PATCH v9 00/27] " Gaetan Rivet
2018-07-03 22:14 ` [dpdk-dev] [PATCH v9 01/27] devargs: add non-variadic parsing function Gaetan Rivet
2018-07-03 22:14 ` [dpdk-dev] [PATCH v9 02/27] kvargs: remove error logs Gaetan Rivet
2018-07-03 22:14 ` [dpdk-dev] [PATCH v9 03/27] kvargs: build before EAL Gaetan Rivet
2018-07-03 22:14 ` [dpdk-dev] [PATCH v9 04/27] kvargs: introduce a more flexible parsing function Gaetan Rivet
2018-07-03 22:14 ` [dpdk-dev] [PATCH v9 05/27] eal: introduce dtor macros Gaetan Rivet
2018-07-03 22:14 ` [dpdk-dev] [PATCH v9 06/27] eal: introduce device class abstraction Gaetan Rivet
2018-07-03 22:14 ` [dpdk-dev] [PATCH v9 07/27] eal/class: register destructor Gaetan Rivet
2018-07-03 22:14 ` [dpdk-dev] [PATCH v9 08/27] devargs: add function to parse device layers Gaetan Rivet
2018-07-03 22:14 ` [dpdk-dev] [PATCH v9 09/27] eal/dev: add device iterator interface Gaetan Rivet
2018-07-03 22:14 ` [dpdk-dev] [PATCH v9 10/27] eal/class: add device iteration Gaetan Rivet
2018-07-03 22:14 ` [dpdk-dev] [PATCH v9 11/27] eal/bus: " Gaetan Rivet
2018-07-03 22:14 ` [dpdk-dev] [PATCH v9 12/27] eal/dev: implement device iteration initialization Gaetan Rivet
2018-07-03 22:14 ` [dpdk-dev] [PATCH v9 13/27] eal/dev: implement device iteration Gaetan Rivet
2018-07-03 22:14 ` [dpdk-dev] [PATCH v9 14/27] kvargs: add generic string matching callback Gaetan Rivet
2018-07-03 22:14 ` [dpdk-dev] [PATCH v9 15/27] bus/pci: implement device iteration and comparison Gaetan Rivet
2018-07-03 22:14 ` [dpdk-dev] [PATCH v9 16/27] bus/pci: add device matching field id Gaetan Rivet
2018-07-03 22:15 ` [dpdk-dev] [PATCH v9 17/27] bus/vdev: implement device iteration Gaetan Rivet
2018-07-03 22:15 ` [dpdk-dev] [PATCH v9 18/27] bus/vdev: add device matching field driver Gaetan Rivet
2018-07-03 22:15 ` [dpdk-dev] [PATCH v9 19/27] ethdev: add private generic device iterator Gaetan Rivet
2018-07-03 22:15 ` [dpdk-dev] [PATCH v9 20/27] ethdev: register ether layer as a class Gaetan Rivet
2018-07-04 12:20 ` Andrew Rybchenko
2018-07-05 9:36 ` Gaëtan Rivet
2018-07-05 11:13 ` Bruce Richardson
2018-07-05 11:54 ` Gaëtan Rivet
2018-07-03 22:15 ` [dpdk-dev] [PATCH v9 21/27] ethdev: add device matching field name Gaetan Rivet
2018-07-03 22:15 ` [dpdk-dev] [PATCH v9 22/27] app/testpmd: add show device command Gaetan Rivet
2018-07-03 22:15 ` [dpdk-dev] [PATCH v9 23/27] bus/pci: pre-process declarative PCI devargs Gaetan Rivet
2018-07-03 22:15 ` [dpdk-dev] [PATCH v9 24/27] bus/vdev: pre-process declarative vdev devargs Gaetan Rivet
2018-07-03 22:15 ` [dpdk-dev] [PATCH v9 25/27] bus/pci: process declarative PCI devargs Gaetan Rivet
2018-07-03 22:15 ` [dpdk-dev] [PATCH v9 26/27] ethdev: process declarative eth devargs Gaetan Rivet
2018-07-03 22:15 ` [dpdk-dev] [PATCH v9 27/27] eal: add generic dev parameter Gaetan Rivet
2018-07-05 11:48 ` [dpdk-dev] [PATCH v10 00/27] Device querying Gaetan Rivet
2018-07-05 11:48 ` [dpdk-dev] [PATCH v10 01/27] devargs: add non-variadic parsing function Gaetan Rivet
2018-07-05 14:44 ` Thomas Monjalon
2018-07-11 11:46 ` Shreyansh Jain
2018-07-11 12:01 ` Gaëtan Rivet
2018-07-05 11:48 ` [dpdk-dev] [PATCH v10 02/27] kvargs: remove error logs Gaetan Rivet
2018-07-05 21:51 ` Thomas Monjalon
2018-07-05 11:48 ` [dpdk-dev] [PATCH v10 03/27] kvargs: build before EAL Gaetan Rivet
2018-07-05 21:50 ` Thomas Monjalon
2018-07-05 11:48 ` [dpdk-dev] [PATCH v10 04/27] kvargs: introduce a more flexible parsing function Gaetan Rivet
2018-07-05 22:00 ` Thomas Monjalon
2018-07-11 11:55 ` Shreyansh Jain
2018-07-05 11:48 ` [dpdk-dev] [PATCH v10 05/27] eal: introduce dtor macros Gaetan Rivet
2018-07-06 4:17 ` Shreyansh Jain
2018-07-10 11:40 ` Thomas Monjalon
2018-07-10 12:56 ` Gaëtan Rivet
2018-07-10 13:06 ` Thomas Monjalon
2018-07-05 11:48 ` [dpdk-dev] [PATCH v10 06/27] eal: introduce device class abstraction Gaetan Rivet
2018-07-11 8:10 ` Thomas Monjalon
2018-07-05 11:48 ` [dpdk-dev] [PATCH v10 07/27] eal/class: register destructor Gaetan Rivet
2018-07-11 8:12 ` Thomas Monjalon
2018-07-05 11:48 ` [dpdk-dev] [PATCH v10 08/27] devargs: add function to parse device layers Gaetan Rivet
2018-07-11 8:19 ` Thomas Monjalon
2018-07-11 8:41 ` Gaëtan Rivet
2018-07-11 9:30 ` Thomas Monjalon
2018-07-05 11:48 ` [dpdk-dev] [PATCH v10 09/27] eal/dev: add device iterator interface Gaetan Rivet
2018-07-05 11:48 ` [dpdk-dev] [PATCH v10 10/27] eal/class: add device iteration Gaetan Rivet
2018-07-11 9:47 ` Thomas Monjalon
2018-07-05 11:48 ` [dpdk-dev] [PATCH v10 11/27] eal/bus: " Gaetan Rivet
2018-07-05 11:48 ` [dpdk-dev] [PATCH v10 12/27] eal/dev: implement device iteration initialization Gaetan Rivet
2018-07-05 11:48 ` [dpdk-dev] [PATCH v10 13/27] eal/dev: implement device iteration Gaetan Rivet
2018-07-05 11:48 ` [dpdk-dev] [PATCH v10 14/27] kvargs: add generic string matching callback Gaetan Rivet
2018-07-05 11:48 ` [dpdk-dev] [PATCH v10 15/27] bus/pci: implement device iteration and comparison Gaetan Rivet
2018-07-05 11:48 ` [dpdk-dev] [PATCH v10 16/27] bus/pci: add device matching field id Gaetan Rivet
2018-07-05 11:48 ` [dpdk-dev] [PATCH v10 17/27] bus/vdev: implement device iteration Gaetan Rivet
2018-07-05 11:48 ` [dpdk-dev] [PATCH v10 18/27] bus/vdev: add device matching field driver Gaetan Rivet
2018-07-05 11:48 ` [dpdk-dev] [PATCH v10 19/27] ethdev: add private generic device iterator Gaetan Rivet
2018-07-05 11:48 ` [dpdk-dev] [PATCH v10 20/27] ethdev: register ether layer as a class Gaetan Rivet
2018-07-05 11:48 ` [dpdk-dev] [PATCH v10 21/27] ethdev: add device matching field name Gaetan Rivet
2018-07-05 11:48 ` [dpdk-dev] [PATCH v10 22/27] app/testpmd: add show device command Gaetan Rivet
2018-07-10 14:45 ` Iremonger, Bernard
2018-07-05 11:48 ` [dpdk-dev] [PATCH v10 23/27] bus/pci: pre-process declarative PCI devargs Gaetan Rivet
2018-07-05 11:48 ` [dpdk-dev] [PATCH v10 24/27] bus/vdev: pre-process declarative vdev devargs Gaetan Rivet
2018-07-05 11:48 ` [dpdk-dev] [PATCH v10 25/27] bus/pci: process declarative PCI devargs Gaetan Rivet
2018-07-05 11:48 ` [dpdk-dev] [PATCH v10 26/27] ethdev: process declarative eth devargs Gaetan Rivet
2018-07-05 11:48 ` [dpdk-dev] [PATCH v10 27/27] eal: add generic dev parameter Gaetan Rivet
2018-07-11 21:44 ` [dpdk-dev] [PATCH v11 00/25] Device querying Gaetan Rivet
2018-07-11 21:44 ` [dpdk-dev] [PATCH v11 01/25] devargs: use rte-log functions Gaetan Rivet
2018-07-11 21:44 ` [dpdk-dev] [PATCH v11 02/25] devargs: add non-variadic parsing function Gaetan Rivet
2018-07-11 21:44 ` [dpdk-dev] [PATCH v11 03/25] kvargs: remove error logs Gaetan Rivet
2018-07-11 21:44 ` [dpdk-dev] [PATCH v11 04/25] kvargs: build before EAL Gaetan Rivet
2018-07-11 21:44 ` [dpdk-dev] [PATCH v11 05/25] kvargs: introduce a more flexible parsing function Gaetan Rivet
2018-07-11 21:44 ` [dpdk-dev] [PATCH v11 06/25] eal: introduce dtor macros Gaetan Rivet
2018-07-11 21:44 ` [dpdk-dev] [PATCH v11 07/25] eal: introduce device class abstraction Gaetan Rivet
2018-07-12 6:49 ` Shreyansh Jain
2018-07-12 7:41 ` Gaëtan Rivet
2018-07-14 10:35 ` Thomas Monjalon
2018-07-14 6:37 ` Thomas Monjalon
2018-07-11 21:44 ` [dpdk-dev] [PATCH v11 08/25] devargs: add function to parse device layers Gaetan Rivet
2018-07-12 9:48 ` Shreyansh Jain
2018-07-14 10:30 ` Thomas Monjalon
2018-07-11 21:44 ` [dpdk-dev] [PATCH v11 09/25] eal/dev: add device iterator interface Gaetan Rivet
2018-07-11 21:45 ` [dpdk-dev] [PATCH v11 10/25] eal/dev: implement device iteration initialization Gaetan Rivet
2018-07-11 21:45 ` [dpdk-dev] [PATCH v11 11/25] eal/dev: implement device iteration Gaetan Rivet
2018-07-12 10:58 ` Shreyansh Jain
2018-07-12 15:08 ` Gaëtan Rivet
2018-07-13 7:06 ` Shreyansh Jain
2018-07-11 21:45 ` [dpdk-dev] [PATCH v11 12/25] kvargs: add generic string matching callback Gaetan Rivet
2018-07-11 21:45 ` [dpdk-dev] [PATCH v11 13/25] bus/pci: implement device iteration and comparison Gaetan Rivet
2018-07-11 21:45 ` [dpdk-dev] [PATCH v11 14/25] bus/pci: add device matching field id Gaetan Rivet
2018-07-11 21:45 ` [dpdk-dev] [PATCH v11 15/25] bus/vdev: implement device iteration Gaetan Rivet
2018-07-11 21:45 ` [dpdk-dev] [PATCH v11 16/25] bus/vdev: add device matching field driver Gaetan Rivet
2018-07-11 21:45 ` [dpdk-dev] [PATCH v11 17/25] ethdev: add private generic device iterator Gaetan Rivet
2018-07-11 21:45 ` [dpdk-dev] [PATCH v11 18/25] ethdev: register ether layer as a class Gaetan Rivet
2018-07-11 21:45 ` [dpdk-dev] [PATCH v11 19/25] ethdev: add device matching field name Gaetan Rivet
2018-07-11 21:45 ` [dpdk-dev] [PATCH v11 20/25] app/testpmd: add show device command Gaetan Rivet
2018-07-11 21:45 ` [dpdk-dev] [PATCH v11 21/25] bus/pci: pre-process declarative PCI devargs Gaetan Rivet
2018-07-11 21:45 ` [dpdk-dev] [PATCH v11 22/25] bus/vdev: pre-process declarative vdev devargs Gaetan Rivet
2018-07-11 21:45 ` [dpdk-dev] [PATCH v11 23/25] bus/pci: process declarative PCI devargs Gaetan Rivet
2018-07-11 21:45 ` [dpdk-dev] [PATCH v11 24/25] ethdev: process declarative eth devargs Gaetan Rivet
2018-07-11 21:45 ` [dpdk-dev] [PATCH v11 25/25] eal: add generic dev parameter Gaetan Rivet
2018-07-15 21:54 ` [dpdk-dev] [PATCH v11 00/25] Device querying Thomas Monjalon
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180328124828.7ue64rntx4dt6os3@bidouze.vm.6wind.com \
--to=gaetan.rivet@6wind.com \
--cc=dev@dpdk.org \
--cc=keith.wiles@intel.com \
--cc=nhorman@tuxdriver.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).