From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?iso-8859-1?Q?Ga=EBtan?= Rivet Subject: Re: [PATCH v5 01/12] bus: add bus iterator to find a bus Date: Mon, 26 Jun 2017 22:53:54 +0200 Message-ID: <20170626205354.GN2344@bidouze.vm.6wind.com> References: <20170626153055.GA101992@bricha3-MOBL3.ger.corp.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Cc: dev@dpdk.org, Jan Blunck To: Bruce Richardson Return-path: Received: from mail-wm0-f42.google.com (mail-wm0-f42.google.com [74.125.82.42]) by dpdk.org (Postfix) with ESMTP id B722F9E3 for ; Mon, 26 Jun 2017 22:54:03 +0200 (CEST) Received: by mail-wm0-f42.google.com with SMTP id 62so7945824wmw.1 for ; Mon, 26 Jun 2017 13:54:03 -0700 (PDT) Content-Disposition: inline In-Reply-To: <20170626153055.GA101992@bricha3-MOBL3.ger.corp.intel.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Hi Bruce, Thanks for reading. On Mon, Jun 26, 2017 at 04:30:55PM +0100, Bruce Richardson wrote: > On Mon, Jun 26, 2017 at 02:21:59AM +0200, Gaetan Rivet wrote: > > From: Jan Blunck > > > > This helper allows to iterate over all registered buses and find one > > matching data used as parameter. > > > > Signed-off-by: Jan Blunck > > Signed-off-by: Gaetan Rivet > > --- > > lib/librte_eal/bsdapp/eal/rte_eal_version.map | 1 + > > lib/librte_eal/common/eal_common_bus.c | 20 ++++++++++++ > > lib/librte_eal/common/include/rte_bus.h | 43 +++++++++++++++++++++++++ > > lib/librte_eal/linuxapp/eal/rte_eal_version.map | 1 + > > 4 files changed, 65 insertions(+) > > > > Two minor suggestions below. Otherwise: > > Acked-by: Bruce Richardson > > > diff --git a/lib/librte_eal/bsdapp/eal/rte_eal_version.map b/lib/librte_eal/bsdapp/eal/rte_eal_version.map > > index 2e48a73..ed09ab2 100644 > > --- a/lib/librte_eal/bsdapp/eal/rte_eal_version.map > > +++ b/lib/librte_eal/bsdapp/eal/rte_eal_version.map > > @@ -162,6 +162,7 @@ DPDK_17.02 { > > DPDK_17.05 { > > global: > > > > + rte_bus_find; > > rte_cpu_is_supported; > > rte_log_dump; > > rte_log_register; > > diff --git a/lib/librte_eal/common/eal_common_bus.c b/lib/librte_eal/common/eal_common_bus.c > > index 8f9baf8..4619eb2 100644 > > --- a/lib/librte_eal/common/eal_common_bus.c > > +++ b/lib/librte_eal/common/eal_common_bus.c > > @@ -145,3 +145,23 @@ rte_bus_dump(FILE *f) > > } > > } > > } > > + > > +struct rte_bus * > > +rte_bus_find(rte_bus_cmp_t cmp, > > + const void *data, > > + const struct rte_bus *start) > > +{ > > + struct rte_bus *bus = NULL; > > + int started = start == NULL; > > Please put brackets around the "start == NULL" to improve readability. > My first reading of this I assumed it was doing multiple assignment of > both start and started to NULL. To make it extra clear, prefix the > comparison with "!!". > > > + > > + TAILQ_FOREACH(bus, &rte_bus_list, next) { > > + if (!started) { > > + if (bus == start) > > + started = 1; > > + continue; > > + } > > + if (cmp(bus, data) == 0) > > + break; > > + } > > + return bus; > > +} > > I also think the name "started" is confusing, and might be better as the > slighly longer "start_found". > Agreed on both account, it will be fixed in the next version. -- Gaëtan Rivet 6WIND