DPDK patches and discussions
 help / color / mirror / Atom feed
From: Neil Horman <nhorman@tuxdriver.com>
To: Stephen Hemminger <stephen@networkplumber.org>
Cc: dev@dpdk.org, Neil Horman <nhorman@redhat.com>
Subject: Re: [dpdk-dev] [PATCH v2 10/10] pci: place all uio pci device ids in a dedicated section
Date: Wed, 20 Jan 2016 10:40:00 -0500	[thread overview]
Message-ID: <20160120154000.GA13410@hmsreliant.think-freely.org> (raw)
In-Reply-To: <20160119133514.03cf193f@xeon-e3>

On Tue, Jan 19, 2016 at 01:35:14PM -0800, Stephen Hemminger wrote:
> On Tue, 19 Jan 2016 15:56:14 -0500
> Neil Horman <nhorman@tuxdriver.com> wrote:
> 
> > On Tue, Jan 19, 2016 at 08:10:19AM -0800, Stephen Hemminger wrote:
> > > On Tue, 19 Jan 2016 09:29:31 -0500
> > > Neil Horman <nhorman@redhat.com> wrote:
> > > 
> > > > On Tue, Jan 19, 2016 at 08:30:40AM +0100, Thomas Monjalon wrote:
> > > > > 2016-01-18 13:30, David Marchand:
> > > > > > We could do something à la modinfo, but let's keep it simple for now.
> > > > > > 
> > > > > > With this, you can extract the devices that need to be bound to uio / vfio
> > > > > > with tools like objdump :
> > > > > > 
> > > > > > $ objdump -j rte_pci_id_uio -s build/lib/librte_pmd_fm10k.so
> > > > > > 
> > > > > > Contents of section rte_pci_id_uio:
> > > > > >  15760 8680a415 ffffffff 8680d015 ffffffff  ................
> > > > > >  15770 8680a515 ffffffff 00000000 00000000  ................
> > > > > 
> > > > > Yes we need a modinfo-like tool.
> > > > > Currently, the UIO/VFIO binding can be done after parsing the PCI device list.
> > > > > It is better to define the device ids locally to their drivers but it must
> > > > > be integrated with an appropriate parsing tool at the same time.
> > > > > And more importantly than any tool, the format of these ELF data must be
> > > > > properly defined, documented and extensible.
> > > > > 
> > > > > Is there someone experimented with such format definition?
> > > > > Stephen, you were asking for this change, what is your opinion?
> > > > > I remember that Neil was also interested in this change:
> > > > > 	http://dpdk.org/ml/archives/dev/2015-January/012115.html
> > > > > Panu, Christian, this change could be related to distribution packaging.
> > > > > Thanks for helping to move this change forward.
> > > > 
> > > > Yes, I would be interested in seeing this.  Is the ask here that someone do it?
> > > > As I recall from the last thread that you reference, I thought David M was
> > > > interested in writing it and soliciting for ideas.  If thats no longer the case,
> > > > I can take a stab at writing it.
> > > > 
> > > > Neil
> > > > 
> > > 
> > > If these are libraries is there a way to have a real entry point
> > > to dump PCI id's. 
> > > 
> > Sure, you could write a method that could be dlsym-ed easily enough to fetch an
> > array of pci ids, or just print stuff the console.  Not sure thats the best way,
> > but definately an option
> > Neil
> 
> It is just that reading data with objdump is a kludge likely to get broken.
> 
Not suggesting that we rely on objdump in perpituity, only that we export the
data, rather than a method to access it so that it can be reached via libelf.
Using a function to return the information has implicit issues at the moment
(specifically if you dlopen a dpdk driver, its constructor will attempt to
register it with the core libraries).  While thats not catastrophic, it means
more stuff than you expect gets loaded, which might have wierd side effects.
Adding a separate section that you could reach via libelf would be nice I think

Neil

  reply	other threads:[~2016-01-20 15:40 UTC|newest]

Thread overview: 92+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-01-05 19:37 [dpdk-dev] time to kill rte_pci_dev_ids.h Stephen Hemminger
2016-01-06  1:40 ` Thomas Monjalon
2016-01-08 13:20   ` David Marchand
2016-01-10 12:50     ` [dpdk-dev] [PATCH 00/11] kill global pci device id list David Marchand
2016-01-10 12:50       ` [dpdk-dev] [PATCH 01/11] e1000: move pci device ids to driver David Marchand
2016-01-10 12:50       ` [dpdk-dev] [PATCH 02/11] ixgbe: " David Marchand
2016-01-10 12:50       ` [dpdk-dev] [PATCH 03/11] i40e: " David Marchand
2016-01-10 20:02         ` Stephen Hemminger
2016-01-12  8:45           ` David Marchand
2016-01-10 12:50       ` [dpdk-dev] [PATCH 04/11] fm10k: " David Marchand
2016-01-10 12:50       ` [dpdk-dev] [PATCH 05/11] virtio: " David Marchand
2016-01-10 12:50       ` [dpdk-dev] [PATCH 06/11] vmxnet3: " David Marchand
2016-01-10 12:50       ` [dpdk-dev] [PATCH 07/11] enic: " David Marchand
2016-01-10 12:50       ` [dpdk-dev] [PATCH 08/11] bnx2x: " David Marchand
2016-01-10 12:50       ` [dpdk-dev] [PATCH 09/11] doc: refresh headers list David Marchand
2016-01-12 14:06         ` Mcnamara, John
2016-01-16 15:10           ` David Marchand
2016-01-18  9:47             ` Thomas Monjalon
2016-01-18 16:25             ` Mcnamara, John
2016-01-10 12:50       ` [dpdk-dev] [PATCH 10/11] pci: no need for global device ids list David Marchand
2016-01-10 12:50       ` [dpdk-dev] [PATCH 11/11] pci: place all uio pci device ids in a dedicated section David Marchand
2016-01-10 12:58       ` [dpdk-dev] [PATCH 00/11] kill global pci device id list David Marchand
2016-01-10 13:24         ` Thomas Monjalon
2016-01-10 13:26           ` David Marchand
2016-01-10 13:27             ` David Marchand
2016-01-10 15:53       ` Zhang, Helin
2016-01-16 15:02         ` David Marchand
2016-01-21  1:12           ` Zhang, Helin
2016-01-18 12:30       ` [dpdk-dev] [PATCH v2 00/10] " David Marchand
2016-01-18 12:30         ` [dpdk-dev] [PATCH v2 01/10] e1000: move pci device ids to driver David Marchand
2016-01-18 12:30         ` [dpdk-dev] [PATCH v2 02/10] ixgbe: " David Marchand
2016-01-18 12:30         ` [dpdk-dev] [PATCH v2 03/10] i40e: " David Marchand
2016-01-18 12:30         ` [dpdk-dev] [PATCH v2 04/10] fm10k: " David Marchand
2016-01-18 12:30         ` [dpdk-dev] [PATCH v2 05/10] virtio: " David Marchand
2016-01-18 12:30         ` [dpdk-dev] [PATCH v2 06/10] vmxnet3: " David Marchand
2016-01-18 12:30         ` [dpdk-dev] [PATCH v2 07/10] enic: " David Marchand
2016-01-18 12:30         ` [dpdk-dev] [PATCH v2 08/10] bnx2x: " David Marchand
2016-01-18 12:30         ` [dpdk-dev] [PATCH v2 09/10] pci: no need for global device ids list David Marchand
2016-01-18 12:30         ` [dpdk-dev] [PATCH v2 10/10] pci: place all uio pci device ids in a dedicated section David Marchand
2016-01-19  7:30           ` Thomas Monjalon
2016-01-19 14:29             ` Neil Horman
2016-01-19 16:10               ` Stephen Hemminger
2016-01-19 20:56                 ` Neil Horman
2016-01-19 21:35                   ` Stephen Hemminger
2016-01-20 15:40                     ` Neil Horman [this message]
2016-02-24 11:37                       ` Bruce Richardson
2016-02-24 11:50                         ` Thomas Monjalon
2016-02-24 14:18                           ` Neil Horman
2016-04-20 12:43         ` [dpdk-dev] [PATCH v3 00/13] kill global pci device id list David Marchand
2016-04-20 12:43           ` [dpdk-dev] [PATCH v3 01/13] e1000: move pci device ids to driver David Marchand
2016-04-20 13:29             ` Neil Horman
2016-04-20 13:39               ` David Marchand
2016-04-20 18:15                 ` Neil Horman
2016-04-21  7:27                   ` David Marchand
2016-04-21 12:08                     ` Neil Horman
2016-04-21 12:41                       ` Thomas Monjalon
2016-04-22 12:13                         ` Neil Horman
2016-04-22 13:22                           ` Thomas Monjalon
2016-07-08 13:31             ` Thomas Monjalon
2016-07-11  5:33               ` Yuanhan Liu
2016-07-11  5:56                 ` Thomas Monjalon
2016-07-11  6:05                   ` Yuanhan Liu
2016-07-11 11:35                   ` David Marchand
2016-07-11 12:05                     ` Yuanhan Liu
2016-04-20 12:43           ` [dpdk-dev] [PATCH v3 02/13] ixgbe: " David Marchand
2016-04-29  1:34             ` Wu, Jingjing
2016-05-04  8:26               ` David Marchand
2016-04-20 12:43           ` [dpdk-dev] [PATCH v3 03/13] i40e: " David Marchand
2016-04-20 12:43           ` [dpdk-dev] [PATCH v3 04/13] fm10k: " David Marchand
2016-04-20 12:43           ` [dpdk-dev] [PATCH v3 05/13] virtio: " David Marchand
2016-04-20 12:43           ` [dpdk-dev] [PATCH v3 06/13] vmxnet3: " David Marchand
2016-04-20 12:43           ` [dpdk-dev] [PATCH v3 07/13] enic: " David Marchand
2016-04-20 12:43           ` [dpdk-dev] [PATCH v3 08/13] bnx2x: " David Marchand
2016-04-20 12:43           ` [dpdk-dev] [PATCH v3 09/13] ena: remove unneeded pci macro David Marchand
2016-04-20 12:43           ` [dpdk-dev] [PATCH v3 10/13] pci: no need for global device ids list David Marchand
2016-04-20 12:43           ` [dpdk-dev] [PATCH v3 11/13] drivers: constify pci id tables David Marchand
2016-04-20 12:43           ` [dpdk-dev] [PATCH v3 12/13] drivers: export pci drivers David Marchand
2016-04-20 12:43           ` [dpdk-dev] [PATCH v3 13/13] app: introduce dpdk-obj-info tool David Marchand
2016-04-21  8:07           ` [dpdk-dev] [PATCH v3 00/13] kill global pci device id list David Marchand
2016-04-21 12:13             ` Neil Horman
2016-07-11 14:40           ` [dpdk-dev] [PATCH v4 00/10] kill global pci device id list (almost) David Marchand
2016-07-11 14:40             ` [dpdk-dev] [PATCH v4 01/10] eal: remove PCI device ids header from doxygen David Marchand
2016-07-11 14:40             ` [dpdk-dev] [PATCH v4 02/10] net/e1000: move em PCI device ids to the driver David Marchand
2016-07-11 14:40             ` [dpdk-dev] [PATCH v4 03/10] net/i40e: move " David Marchand
2016-07-11 14:40             ` [dpdk-dev] [PATCH v4 04/10] net/fm10k: " David Marchand
2016-07-11 14:40             ` [dpdk-dev] [PATCH v4 05/10] net/virtio: " David Marchand
2016-07-11 14:40             ` [dpdk-dev] [PATCH v4 06/10] net/vmxnet3: " David Marchand
2016-07-11 14:40             ` [dpdk-dev] [PATCH v4 07/10] net/enic: " David Marchand
2016-07-11 14:40             ` [dpdk-dev] [PATCH v4 08/10] net/bnx2x: " David Marchand
2016-07-11 14:40             ` [dpdk-dev] [PATCH v4 09/10] net/bnxt: " David Marchand
2016-07-11 14:40             ` [dpdk-dev] [PATCH v4 10/10] net/ena: remove unneeded PCI macro David Marchand
2016-07-11 16:27             ` [dpdk-dev] [PATCH v4 00/10] kill global pci device id list (almost) Thomas Monjalon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20160120154000.GA13410@hmsreliant.think-freely.org \
    --to=nhorman@tuxdriver.com \
    --cc=dev@dpdk.org \
    --cc=nhorman@redhat.com \
    --cc=stephen@networkplumber.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).