[dpdk-dev] Issues of MSIx interrupt enable with user space driver

James (Fei) Liu-SSI james.liu at ssi.samsung.com
Wed Apr 29 20:24:03 CEST 2015


Do you have kernel version in your build environment that has <linux/vfio.h> ?
[James] The kernel version is 3.17.2

Do you have iommu enabled on your target machine?
[James] Yes

Did you program the MSI-X correctly?
[James] We can issues several admin commands successfully with interrupt enabled , however. It is going to fail during IO traffic. By the way, we are using DPDK for PCIe storage driver development. Have you guys ever use dpdk for PCIe storage device?

Thanks so much.

Regards,
James

-----Original Message-----
From: Stephen Hemminger [mailto:stephen at networkplumber.org]
Sent: Tuesday, April 28, 2015 4:43 PM
To: James (Fei) Liu-SSI
Cc: dev at dpdk.org
Subject: Re: [dpdk-dev] Issues of MSIx interrupt enable with user space driver

On Tue, 28 Apr 2015 21:57:31 +0000
"James (Fei) Liu-SSI" <james.liu at ssi.samsung.com<mailto:james.liu at ssi.samsung.com>> wrote:

> Hi All,
>     We are porting driver from kernel into user space driver with DPDK for one of our devices. Polling thread works fine without any issue. However, we want to switch from polling to interrupt based handler. While we enable interrupt with VFIO MSIx, we always get below errors after issuing one command:
>
> [  465.464186] dmar: DRHD: handling fault status reg 2 [  465.464194]
> dmar: INTR-REMAP: Request device [[02:00.0] fault index 27 [
> 465.464194] INTR-REMAP:[fault reason 34] Present field in the IRTE
> entry is clear
>
> Here are steps we follow to enable interrupt:
> 1. --vfio-intr msix   was passed in as parameter for rte_eal_init
> 2. rte_intr_enable was called during the drive probe stage.
> 3. rte_intr_callback_register was called after interrupt was enabled
>
>
>
> Is there anyone in the forum who worked on the interrupt handler to share with us about your comments? thanks for your help in advance.

Do you have kernel version in your build environment that has <linux/vfio.h> ?

Do you have iommu enabled on your target machine?

Did you program the MSI-X correctly?



More information about the dev mailing list