From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Monjalon Subject: [PATCH v3 0/3] eal: allow hotplug to skip an already probed device Date: Mon, 8 Oct 2018 00:09:30 +0200 Message-ID: <20181007220933.4533-1-thomas@monjalon.net> References: <20180907230958.21402-1-thomas@monjalon.net> Mime-Version: 1.0 Content-Transfer-Encoding: 8bit Cc: gaetan.rivet@6wind.com, ophirmu@mellanox.com, qi.z.zhang@intel.com, ferruh.yigit@intel.com To: dev@dpdk.org Return-path: Received: from out3-smtp.messagingengine.com (out3-smtp.messagingengine.com [66.111.4.27]) by dpdk.org (Postfix) with ESMTP id AE60A1E20 for ; Mon, 8 Oct 2018 00:09:38 +0200 (CEST) In-Reply-To: <20180907230958.21402-1-thomas@monjalon.net> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" This is a follow-up of an idea presented at Dublin during the "hotplug talk". The idea is to ease probing of range of ports attached to the same rte_device. I becomes possible to allow probing again the same device but with a bigger range of ports in the devargs. Instead of adding a parameter to the hotplug functions, as in the RFC, the check of an already probed device is moved to the bus and enabled PMDs. It gives flexibility to drivers for managing range of ports. This series is based on top of https://patches.dpdk.org/project/dpdk/list/?series=1734 Depends on: project/dpdk/list/?series=1734 (proposed syntax for dependencies) Changes in v3 - after Declan's review: - return error in all buses but PCI - add a PCI driver flag to enable feature per driver - return -EEXIST if probing again is not supported Thomas Monjalon (3): drivers/bus: move driver assignment to end of probing eal: add function to query device status eal: allow probing a device again drivers/bus/dpaa/dpaa_bus.c | 3 ++ drivers/bus/fslmc/fslmc_bus.c | 3 ++ drivers/bus/ifpga/ifpga_bus.c | 21 +++++++------- drivers/bus/pci/pci_common.c | 38 ++++++++++++++++--------- drivers/bus/pci/rte_bus_pci.h | 6 ++-- drivers/bus/vdev/vdev.c | 12 +++++--- drivers/bus/vmbus/vmbus_common.c | 5 ++-- drivers/net/i40e/i40e_vf_representor.c | 3 -- drivers/net/mlx4/mlx4.c | 1 - drivers/net/mlx5/mlx5.c | 1 - lib/librte_eal/common/eal_common_dev.c | 14 +++++---- lib/librte_eal/common/include/rte_dev.h | 18 ++++++++++-- lib/librte_eal/rte_eal_version.map | 1 + 13 files changed, 82 insertions(+), 44 deletions(-) -- 2.19.0