From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Tan, Jianfeng" Subject: Re: [PATCH v3 03/10] bus/vdev: do not reference devargs list Date: Wed, 21 Mar 2018 13:41:44 +0800 Message-ID: <869d9034-c7b8-4c03-347c-712784714959@intel.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit To: Gaetan Rivet , dev@dpdk.org Return-path: Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by dpdk.org (Postfix) with ESMTP id 487ADA498 for ; Wed, 21 Mar 2018 06:41:46 +0100 (CET) In-Reply-To: List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On 3/21/2018 7:20 AM, Gaetan Rivet wrote: > This list should not be operated upon by drivers. > Use the public API to achieve the same functionalities. > > Signed-off-by: Gaetan Rivet Acked-by: Jianfeng Tan Thanks, Jianfeng > --- > drivers/bus/vdev/Makefile | 1 + > drivers/bus/vdev/vdev.c | 11 +++-------- > 2 files changed, 4 insertions(+), 8 deletions(-) > > diff --git a/drivers/bus/vdev/Makefile b/drivers/bus/vdev/Makefile > index 24d424a38..bd0bb8955 100644 > --- a/drivers/bus/vdev/Makefile > +++ b/drivers/bus/vdev/Makefile > @@ -10,6 +10,7 @@ LIB = librte_bus_vdev.a > > CFLAGS += -O3 > CFLAGS += $(WERROR_FLAGS) > +CFLAGS += -DALLOW_EXPERIMENTAL_API > > # versioning export map > EXPORT_MAP := rte_bus_vdev_version.map > diff --git a/drivers/bus/vdev/vdev.c b/drivers/bus/vdev/vdev.c > index e4bc72463..8ee264baf 100644 > --- a/drivers/bus/vdev/vdev.c > +++ b/drivers/bus/vdev/vdev.c > @@ -256,7 +256,7 @@ rte_vdev_init(const char *name, const char *args) > goto fail; > } > > - TAILQ_INSERT_TAIL(&devargs_list, devargs, next); > + rte_eal_devargs_insert(devargs); > > TAILQ_INSERT_TAIL(&vdev_device_list, dev, next); > return 0; > @@ -306,10 +306,8 @@ rte_vdev_uninit(const char *name) > > TAILQ_REMOVE(&vdev_device_list, dev, next); > > - TAILQ_REMOVE(&devargs_list, devargs, next); > + rte_eal_devargs_remove(devargs->bus->name, devargs->name); > > - free(devargs->args); > - free(devargs); > free(dev); > return 0; > } > @@ -337,10 +335,7 @@ vdev_scan(void) > rte_spinlock_unlock(&vdev_custom_scan_lock); > > /* for virtual devices we scan the devargs_list populated via cmdline */ > - TAILQ_FOREACH(devargs, &devargs_list, next) { > - > - if (devargs->bus != &rte_vdev_bus) > - continue; > + RTE_EAL_DEVARGS_FOREACH("vdev", devargs) { > > dev = find_vdev(devargs->name); > if (dev)