From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?iso-8859-1?Q?Ga=EBtan?= Rivet Subject: Re: [PATCH 02/12] eal: avoid calling rte_vdev_init() Date: Tue, 29 Aug 2017 14:50:45 +0200 Message-ID: <20170829125045.GM8124@bidouze.vm.6wind.com> References: <1503654052-84730-1-git-send-email-jianfeng.tan@intel.com> <1503654052-84730-3-git-send-email-jianfeng.tan@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Cc: dev@dpdk.org, bruce.richardson@intel.com, konstantin.ananyev@intel.com, pablo.de.lara.guarch@intel.com, thomas@monjalon.net, yliu@fridaylinux.org, maxime.coquelin@redhat.com, mtetsuyah@gmail.com, ferruh.yigit@intel.com To: Jianfeng Tan Return-path: Received: from mail-wr0-f180.google.com (mail-wr0-f180.google.com [209.85.128.180]) by dpdk.org (Postfix) with ESMTP id 6285F1B53 for ; Tue, 29 Aug 2017 14:50:56 +0200 (CEST) Received: by mail-wr0-f180.google.com with SMTP id n37so9809674wrf.4 for ; Tue, 29 Aug 2017 05:50:56 -0700 (PDT) Content-Disposition: inline In-Reply-To: <1503654052-84730-3-git-send-email-jianfeng.tan@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, On Fri, Aug 25, 2017 at 09:40:42AM +0000, Jianfeng Tan wrote: > We can call bus->plug() to avoid calling rte_vdev_init() explicitly. > > Signed-off-by: Jianfeng Tan > --- > lib/librte_eal/common/eal_common_dev.c | 21 +++++---------------- > 1 file changed, 5 insertions(+), 16 deletions(-) > > diff --git a/lib/librte_eal/common/eal_common_dev.c b/lib/librte_eal/common/eal_common_dev.c > index e251275..066dfbf 100644 > --- a/lib/librte_eal/common/eal_common_dev.c > +++ b/lib/librte_eal/common/eal_common_dev.c > @@ -67,7 +67,6 @@ static int cmp_dev_name(const struct rte_device *dev, const void *_name) > int rte_eal_dev_attach(const char *name, const char *devargs) > { > struct rte_bus *bus; > - int ret; > > if (name == NULL || devargs == NULL) { > RTE_LOG(ERR, EAL, "Invalid device or arguments provided\n"); > @@ -80,22 +79,12 @@ int rte_eal_dev_attach(const char *name, const char *devargs) > name); > return -EINVAL; > } > - if (strcmp(bus->name, "pci") == 0) > - return rte_eal_hotplug_add("pci", name, devargs); > - if (strcmp(bus->name, "vdev") != 0) { > - RTE_LOG(ERR, EAL, "Device attach is only supported for PCI and vdev devices.\n"); > - return -ENOTSUP; > - } > + if (strcmp(bus->name, "pci") == 0 || strcmp(bus->name, "vdev") != 0) It seems to be a copy / paste error, it should probably be: + if (strcmp(bus->name, "pci") == 0 || strcmp(bus->name, "vdev") == 0) Now, one could question the relevancy of keeping this API (rte_eal_dev_attach / detach), but I guess this is beyond the scope of this series. > + return rte_eal_hotplug_add(bus->name, name, devargs); > > - /* > - * If we haven't found a bus device the user meant to "hotplug" a > - * virtual device instead. > - */ > - ret = rte_vdev_init(name, devargs); > - if (ret) > - RTE_LOG(ERR, EAL, "Driver cannot attach the device (%s)\n", > - name); > - return ret; > + RTE_LOG(ERR, EAL, "Device attach is only supported for PCI and vdev devices.\n"); > + > + return -ENOTSUP; > } > > int rte_eal_dev_detach(struct rte_device *dev) > -- > 2.7.4 > -- Gaëtan Rivet 6WIND