From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Monjalon Subject: Re: Kill off PCI dependencies Date: Thu, 09 Feb 2017 17:26:09 +0100 Message-ID: <2281378.PUPUsLso98@xps13> References: <20170208145640.66deb7f0@xeon-e3> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7Bit Cc: dev@dpdk.org To: Stephen Hemminger 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 E2D45FA6F for ; Thu, 9 Feb 2017 17:26:10 +0100 (CET) Received: by mail-wr0-f180.google.com with SMTP id o16so87410957wra.1 for ; Thu, 09 Feb 2017 08:26:10 -0800 (PST) In-Reply-To: <20170208145640.66deb7f0@xeon-e3> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 2017-02-08 14:56, Stephen Hemminger: > I am trying to make DPDK more agnostic about bus type. The existing API still > has hardwired into that ethernet devices are either PCI or not PCI (ie pci_dev == NULL). > Jan, Jerin, and Shreyansh started the process but it hasn't gone far enough. > > It would make more sense if the existing generic device was used everywhere > including rte_ethdev, rte_ethdev_info, etc. Yes > The ABI breakage is not catastrophic. Just change pci_dev to a device pointer. > One option would be to use NEXT_ABI and/or two different calls and data structures. > Messy but compatible. Something like > rte_dev_info_get returns rte_dev_info but is marked deprecated > rte_device_info_get returns rte_device_info Or we can break the ABI to avoid messy code. > One fallout is that the existing testpmd code makes lots of assumptions that > is working with a PCI device. Things like ability to get/set PCI registers. > I suspect this is already broken if one tries to run it on a virtual device like TAP. > > Can we just turn off that functionality? Which functionality exactly? > Also KNI has more dependencies that ethernet devices are PCI.