Hi, > -----Original Message----- > From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of Nithin Dabilpuram > Sent: Wednesday, July 17, 2019 13:59 > To: Hyong Youb Kim <hyon...@cisco.com>; David Marchand > <david.march...@redhat.com>; Thomas Monjalon > <tho...@monjalon.net>; Yigit, Ferruh <ferruh.yi...@intel.com>; Burakov, > Anatoly <anatoly.bura...@intel.com> > Cc: jer...@marvell.com; John Daley <johnd...@cisco.com>; Shahed Shaikh > <shsha...@marvell.com>; dev@dpdk.org; Nithin Dabilpuram > <ndabilpu...@marvell.com> > Subject: [dpdk-dev] [PATCH 1/3] vfio: revert change that does intr eventfd > setup at probe > > This reverts commit 89aac60e0be9ed95a87b16e3595f102f9faaffb4. > "vfio: fix interrupts race condition" > > The above mentioned commit moves the interrupt's eventfd setup to probe > time but only enables one interrupt for all types of interrupt handles i.e > VFIO_MSI, VFIO_LEGACY, VFIO_MSIX, UIO. > It works fine with default case but breaks below cases specifically for MSIX > based interrupt handles. > > * Applications like l3fwd-power that request rxq interrupts > while ethdev setup. > * Drivers that need > 1 MSIx interrupts to be configured for > functionality to work. > > VFIO PCI for MSIx expects all the possible vectors to be setup up when using > VFIO_IRQ_SET_ACTION_TRIGGER so that they can be allocated from kernel > pci subsystem. Only way to increase the number of vectors later is first free > all by using VFIO_IRQ_SET_DATA_NONE with action trigger and then enable > new vector count. > > Above commit changes the behavior of rte_intr_[enable|disable] to only > mask and unmask unlike earlier behavior and thereby breaking above two > scenarios. > > Fixes: 89aac60e0be9 ("vfio: fix interrupts race condition") > Cc: david.march...@redhat.com > > Signed-off-by: Nithin Dabilpuram <ndabilpu...@marvell.com> > Signed-off-by: Jerin Jacob <jer...@marvell.com> > --- > drivers/bus/pci/linux/pci_vfio.c | 78 ++++++------ > lib/librte_eal/linux/eal/eal_interrupts.c | 201 +++++++++++++++++++++++- > ------
I can confirm this patch fixes "EAL: error configuring interrupt" issue on my C6XX board Damian