From mboxrd@z Thu Jan 1 00:00:00 1970 From: Shreyansh Jain Subject: Re: [PATCH v3 00/10] Rework vdev probing to use rte_bus infrastructure Date: Tue, 28 Feb 2017 14:18:14 +0530 Message-ID: <1fe7b405-0b78-08fe-4696-5d96e6769567@nxp.com> References: <1487600262-14382-1-git-send-email-jblunck@infradead.org> <1488018496-995-1-git-send-email-jblunck@infradead.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 7bit Cc: David Marchand , Ferruh Yigit To: Jan Blunck , dev Return-path: Received: from NAM01-BN3-obe.outbound.protection.outlook.com (mail-bn3nam01on0069.outbound.protection.outlook.com [104.47.33.69]) by dpdk.org (Postfix) with ESMTP id 5BFB32BB2 for ; Tue, 28 Feb 2017 09:43:33 +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 Monday 27 February 2017 06:39 PM, Jan Blunck wrote: > On Sat, Feb 25, 2017 at 11:28 AM, Jan Blunck wrote: >> With the rte_bus infrastructure present in 17.02 it is possible to refactor >> the virtual device probing into a bus. This series also introduces the >> rte_vdev_device to better keep track of devices. >> >> This patchset depends on: >> http://dpdk.org/dev/patchwork/patch/20416/ >> http://dpdk.org/dev/patchwork/patch/20417/ >> >> Changes since version 2: >> * implicit bus registration through rte_eal_vdrv_register() > > On a second thought I don't think that this is correct though since it > opens up the possibility of racing an alternative "virtual" bus. I > don't think that this is a good thing though. I'll fix this in v4. > > Thoughts? I prefer the RTE_REGISTER* way. The issue of duplicate bus remains whether we use the macro or the implicit way. If you use RTE_*, do you think that duplicate registration issue is worth fixing? (It would mean rte_bus_register to return error which the caller would then need to handle). > > Thanks, > Jan > >> * explicit delay probing of virtual bus in rte_bus_probe() >> * addition of rte_vdev_device_args() helper >> * make virtual driver probe and remove take rte_vdev_device >> >> Changes since version 1: >> * addition of rte_vdev_device_name() helper >> * removed rte_eal_dev_init() from *.map files >> * use SOCKET_ID_ANY >> >> Jan Blunck (10): >> eal: probe legacy PCI devices before other bus devices >> eal: probe new virtual bus after other bus devices >> eal: move virtual device probing into a bus >> eal: remove unused rte_eal_dev_init() >> eal: Refactor vdev driver probe/remove >> eal: add struct rte_vdev_device >> eal: add virtual device name helper function >> eal: add virtual device arguments helper function >> eal: make virtual bus use rte_vdev_device >> eal: make virtual driver probe and remove take rte_vdev_device >> >> drivers/crypto/null/null_crypto_pmd.c | 18 +- >> drivers/net/af_packet/rte_eth_af_packet.c | 11 +- >> drivers/net/bonding/rte_eth_bond_pmd.c | 13 +- >> drivers/net/mpipe/mpipe_tilegx.c | 10 +- >> drivers/net/null/rte_eth_null.c | 13 +- >> drivers/net/pcap/rte_eth_pcap.c | 12 +- >> drivers/net/ring/rte_eth_ring.c | 9 +- >> drivers/net/tap/rte_eth_tap.c | 10 +- >> drivers/net/vhost/rte_eth_vhost.c | 10 +- >> drivers/net/virtio/virtio_user_ethdev.c | 18 +- >> drivers/net/xenvirt/rte_eth_xenvirt.c | 9 +- >> lib/librte_eal/bsdapp/eal/eal.c | 9 +- >> lib/librte_eal/bsdapp/eal/rte_eal_version.map | 1 - >> lib/librte_eal/common/eal_common_bus.c | 16 +- >> lib/librte_eal/common/eal_common_dev.c | 28 --- >> lib/librte_eal/common/eal_common_vdev.c | 259 +++++++++++++++++++++--- >> lib/librte_eal/common/include/rte_dev.h | 5 - >> lib/librte_eal/common/include/rte_vdev.h | 26 ++- >> lib/librte_eal/linuxapp/eal/eal.c | 9 +- >> lib/librte_eal/linuxapp/eal/rte_eal_version.map | 1 - >> 20 files changed, 355 insertions(+), 132 deletions(-) >> >> -- >> 2.7.4 >> >