Messages in this thread | | | From | "Tian, Kevin" <> | Subject | RE: [PATCH 1/7] vfio/pci: Disable auto-enable of exclusive INTx IRQ | Date | Thu, 7 Mar 2024 08:28:45 +0000 |
| |
> From: Alex Williamson <alex.williamson@redhat.com> > Sent: Thursday, March 7, 2024 5:15 AM > > Currently for devices requiring masking at the irqchip for INTx, ie. > devices without DisINTx support, the IRQ is enabled in request_irq() > and subsequently disabled as necessary to align with the masked status > flag. This presents a window where the interrupt could fire between > these events, resulting in the IRQ incrementing the disable depth twice.
Can you elaborate the last point about disable depth?
> This would be unrecoverable for a user since the masked flag prevents > nested enables through vfio.
What is 'nested enables'?
> > Instead, invert the logic using IRQF_NO_AUTOEN such that exclusive INTx > is never auto-enabled, then unmask as required. > > Fixes: 89e1f7d4c66d ("vfio: Add PCI device driver") > Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
But this patch looks good to me:
Reviewed-by: Kevin Tian <kevin.tian@intel.com>
with one nit...
> > + /* > + * Devices without DisINTx support require an exclusive interrupt, > + * IRQ masking is performed at the IRQ chip. The masked status is
"exclusive interrupt, with IRQ masking performed at..."
| |