[dpdk-dev] [PATCH v2 0/2] Fix 2 bugs of i40e VF interrupt found in l3fwd-power

Yao, Lei A lei.a.yao at intel.com
Fri Nov 3 09:31:25 CET 2017



> -----Original Message-----
> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Wei Dai
> Sent: Friday, November 3, 2017 3:14 PM
> To: Wu, Jingjing <jingjing.wu at intel.com>; Xing, Beilei
> <beilei.xing at intel.com>; Liang, Cunming <cunming.liang at intel.com>
> Cc: dev at dpdk.org; Dai, Wei <wei.dai at intel.com>
> Subject: [dpdk-dev] [PATCH v2 0/2] Fix 2 bugs of i40e VF interrupt found in
> l3fwd-power
> 
> These 2 bugs can be observed from example/l3fwd-power run with i40e VF
> bound to VFIO-PCI. The test steps are as follows:
> 1. Disable LSC interrupt by clearing port_conf.intr_conf.lsc=0, as i40e
>    VF doesn't support LSC interrupt to avoid rte_eth_dev_configure() failure.
> 2. Create a VF from i40e host PF. Let PF run with kernel driver and bind
>    its VF to VFIO-PCI
> 3. Run l3fwd-power like: l3fwd-power -l 18-19 -- -p 0x1 --config='(0,0,19)'
> 
> Then, the following error message appears like:
> EAL: Error enabling MSI-X interrupts for fd 18
> This error is from rte_intr_enable( )/vfio_enable_msix( ) when enabling
> Rx queue interrupt.
> Same as the patch 06938770186a ("net/ixgbe: fix VFIO interrupt mapping in
> VF"),
> to change VFIO MSI-X interrupts mapping, previous mapping should be
> cleared
> first to avoid above error.
> 
> After fixing above VFIO-PCI MSI-X interrupt mapping. There is still the
> following
> 2nd bug: l3fwd-power still can not be waked up by incoming packets.
> 
> Same as the patch ca9d6597184b ("net/ixgbe: fix Rx queue interrupt mapping
> in VF"),
> the interrupt vector of Rx queues should be mapped to vector 1 to fix above
> 2nd bug.
> 
> These patches have passed test with l3fwd-power using i40e VF bound to
> VFIO-PCI.
> They also passed the test with testpmd rxonly and txonly mode with igb_uio
> and VFIO-PCI.
> 
> Signed-off-by: Wei Dai <wei.dai at intel.com>
Tested-by: Lei Yao<lei.a.yao at intel.com>
> 
> ---
> v2: only remap VFIO interrupt in i40evf_dev_start( )
> 
> 
> Wei Dai (2):
>   net/i40e: fix VFIO interrupt mapping in VF
>   net/i40e: fix Rx queue interrupt mapping in VF
> 
>  drivers/net/i40e/i40e_ethdev_vf.c | 18 ++++++++++++++----
>  1 file changed, 14 insertions(+), 4 deletions(-)
> 
> --
> 2.7.4
Following test case is tested and passed with this patch.
L3fwd-power with 1 i40e PF  (vfio-pci) can receive interrupt
L3fwd-power with 1 i40e VF  (vfio-pci) can receive interrupt
L3fwd-power with  2 i40e VF (vfio-pci) can receive interrupt

OS: Ubuntu 16.04
CPU: Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz
NIC: Ethernet Controller X710





More information about the dev mailing list