From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ob0-f171.google.com (mail-ob0-f171.google.com [209.85.214.171]) by dpdk.org (Postfix) with ESMTP id 7DBAB8E89 for ; Fri, 30 Oct 2015 14:32:36 +0100 (CET) Received: by obctp1 with SMTP id tp1so43672639obc.2 for ; Fri, 30 Oct 2015 06:32:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=6wind_com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=rNHyEV4KD7RE9t8zG1qJ49bGgMmJtK7MTsLiMRy7X68=; b=CRxP/QZ+bPJvC7T64Sx/QDeUuxumCJrwNpD4ZVFqAmW8J5uMNEVzFHR0GQjRRiGA3F Q1bwyPtPl+e095CymWcx3UKfgdsHpDMt+PruWKbZe1P0yGvPK0MS+pIPPdlyt6CIVX3R +2z6TXpelE7c5v9IvXpsfbgn0t1UDyu74tL1X93DhXtro/4XLAWMbWyeefO6bjHWMsm2 CVw7dxQKXl2qAxX6k1rLWzezglzi/DPQNXT/gEQtkYpWg3LpUekITl2Mcq2qrm73AnOi 2YNKW1/ALxKaVebSFtvxztAOVgzAT/xp66ZZlGyy21aFdFhNc1Uj2Kre10wNiM59SWky tQyw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=rNHyEV4KD7RE9t8zG1qJ49bGgMmJtK7MTsLiMRy7X68=; b=GOxnD2OlIKAZAKQjduCTyfJg2PR+nI+0v8qhj43YxdxDLRwOi2i2PKFdkzoMLOr+gR yv7xtRaFGM+Scu7TphInUSmxrljWyf2sdBENDdXE64OpN3LaqHWPvDAcyjuTvdzFx18r RJLEzCZmKqociFnqAhW8p1yJcyTwo8U9JVWPBM21908exi8wZ/d6sI3xuF+gL+3zQEmN aszVbqnUz3VF4YIbDQVj6PqeKtwAAwuGo3MJE46lwIdFnfRm+ylVKMeItGpV8Wj/Vvne ZcsEM7B6NW5mKnWWjMERWFNZNR4Yak0nVEv4WSyhS9DCg3PBLDT2rqQqvt1bRZ3+IgDV H3FA== X-Gm-Message-State: ALoCoQlDhvvb9/D1RzAK/qe1bFgqwzAyZT+oics2nTifa1hVW8oKQWTKJbEJxo9auQh9F8XUVRr9 MIME-Version: 1.0 X-Received: by 10.60.140.228 with SMTP id rj4mr5973735oeb.15.1446211955785; Fri, 30 Oct 2015 06:32:35 -0700 (PDT) Received: by 10.76.131.166 with HTTP; Fri, 30 Oct 2015 06:32:35 -0700 (PDT) In-Reply-To: <1446143795-31841-1-git-send-email-bernard.iremonger@intel.com> References: <1446143795-31841-1-git-send-email-bernard.iremonger@intel.com> Date: Fri, 30 Oct 2015 14:32:35 +0100 Message-ID: From: David Marchand To: Bernard Iremonger Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Cc: "dev@dpdk.org" Subject: Re: [dpdk-dev] [PATCH v6 00/28] remove pci driver from vdevs X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 30 Oct 2015 13:32:36 -0000 Hello Bernard, On Thu, Oct 29, 2015 at 7:36 PM, Bernard Iremonger < bernard.iremonger@intel.com> wrote: > There is a dummy pci driver in the vdev PMD's at present. > This patch set removes the pci driver from the vdev PMD's. > Changes have been made to librte_ether to handle vdevs and pdevs in the > same way. > > [snip] > > Bernard Iremonger (28): > librte_eal: add RTE_KDRV_NONE for vdevs > librte_ether: add fields from rte_pci_driver to rte_eth_dev_data > librte_ether: add function rte_eth_copy_dev_info > ixgbe: copy pci device info to eth_dev data > e1000: copy pci device info to eth_dev data > i40e: copy pci device info to eth_dev data > fm10k: copy pci device info to eth_dev data > bnx2x: copy pci device info to eth_dev data > cxgbe: copy pci device info to eth_dev data > enic: copy pci device info to eth_dev data > mlx4: copy pci device info to eth_dev data > virtio: copy pci device info to eth_dev data > vmxnet3: copy pci device info to eth_dev data > null: copy device info to eth_dev data > ring: copy device info to eth_dev data > pcap: copy device info to eth_dev data > af_packet: copy device info to eth_dev data > xenvirt: copy device info to eth_dev data > mpipe: copy device info to eth_dev data > bonding: copy device info to eth_dev data > librte_ether: remove branches on pci_dev > null: remove pci device > ring: remove pci device > pcap: remove pci device > af_packet: remove pci device > xenvirt: remove pci device > mpipe: remove pci device > bonding: remove pci device > We end up with kdrv none, while for virtual devices, I can't see a case where we would need it. And these flags end up in ethdev : +/** Device needs PCI BAR mapping (done with either IGB_UIO or VFIO) */ +#define RTE_ETH_DEV_DRV_NEED_MAPPING RTE_PCI_DRV_NEED_MAPPING +/** Device needs to be unbound even if no module is provided */ +#define RTE_ETH_DEV_DRV_FORCE_UNBIND RTE_PCI_DRV_FORCE_UNBIND +/** Device supports link state interrupt */ +#define RTE_ETH_DEV_INTR_LSC RTE_PCI_DRV_INTR_LSC +/** Device supports detaching capability */ +#define RTE_ETH_DEV_DETACHABLE RTE_PCI_DRV_DETACHABLE I can't see the point of all this, you are just moving pci specific fields to ethdev and I don't see how it would ease future cleanups or introductions of other bus types. A real cleanup would be something like what Neil already proposed before. -- David Marchand