DPDK usage discussions
 help / color / mirror / Atom feed
From: 杨晔 <yangye@ict.ac.cn>
To: users@dpdk.org
Subject: [dpdk-users] Why secondary processes do not set up pci_vfio_device's interrupts?
Date: Sun, 8 Jul 2018 20:53:58 +0800 (GMT+08:00)	[thread overview]
Message-ID: <5d592707.52f3.16479f4b99e.Coremail.yangye@ict.ac.cn> (raw)

Hello,

 I use vfio-driver to run ioat devices(this section is in SPDK). And I found these devices can only be initialized in primary.

 My use case is as follow:

 ...

  rte_eal_init();

  ioat_init();

 ...
I want to use these devices in multi-processes, but error report in secondary process just like this:

EAL: PCI device 0000:00:04.0 on NUMA socket 0
EAL:   probe driver: 8086:e20 spdk_ioat
 Found matching device at 0000:00:04.0 vendor:0x8086 device:0x0e20
EAL: Unknown handle type of fd -1
EAL: Unknown handle type of fd -1
EAL: PCI device 0000:00:04.1 on NUMA socket 0
EAL:   probe driver: 8086:e21 spdk_ioat
 Found matching device at 0000:00:04.1 vendor:0x8086 device:0x0e21
EAL: Unknown handle type of fd -1
EAL: Unknown handle type of fd -1

In debug mode, I found these devices' interrupts not initialized. The error is in function

pci_vfio_map_resource()

The primary process runs pci_vfio_map_resource_primary(dev), while secondary runs pci_vfio_map_resource_secondary(dev).

Comparing these two functions, the only difference is primary calls pci_rte_vfio_setup_device() but secondary not. And pci_vfio_setup_interrupts() is in this function.

Is this intentional? And how should I share multiple devices under the multi-process model?

By the way, My version is 17.11.

Thanks.


--


Yang Ye

Network Research Center, Institute of Computing Technology, Chinese Academy of Sciences,

NO.6 Kexueyuan South Road, Zhongguancun, Haidian District, Beijing, China (100190)

                 reply	other threads:[~2018-07-08 12:54 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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=5d592707.52f3.16479f4b99e.Coremail.yangye@ict.ac.cn \
    --to=yangye@ict.ac.cn \
    --cc=users@dpdk.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).