This is nearly identical to the v5.15 backport, the only difference is the split to struct vfio_pci_core_device hasn't occurred yet, so we need to use the original vfio_pci_device object instead.
NB. The fsl-mc driver doesn't exist on v5.4.y, therefore the last patch in the series should be dropped against v5.4.
v4.19.y does not include IRQF_NO_AUTOEN, so this is as far as I intend to go with these. Thanks,
Alex
Alex Williamson (6): vfio/pci: Disable auto-enable of exclusive INTx IRQ vfio/pci: Lock external INTx masking ops vfio: Introduce interface to flush virqfd inject workqueue vfio/pci: Create persistent INTx handler vfio/platform: Create persistent IRQ handlers vfio/fsl-mc: Block calling interrupt handler without trigger
drivers/vfio/fsl-mc/vfio_fsl_mc_intr.c | 7 +- drivers/vfio/pci/vfio_pci_intrs.c | 176 +++++++++++++--------- drivers/vfio/platform/vfio_platform_irq.c | 101 +++++++++---- drivers/vfio/virqfd.c | 21 +++ include/linux/vfio.h | 2 + 5 files changed, 201 insertions(+), 106 deletions(-)