at 2:07 AM, Keith Busch <kbu...@kernel.org> wrote:

> MSI-x uses MMIO for masking, so there's no need for an NVMe specific way to
> mask these interrupts. You can just use the generic PCIe methods to clear the
> vector's enable bit. But no NVMe driver that I know of is making use of these
> either, though it should be possible to make linux start doing that.

I believe we need to handle MSI-x masking in the NVMe controller after we
switch to irqfd. Before that QEMU’s MSI-x emulation logic helps us handle
masked interrupts. But with irqfd, we bypass QEMU’s MSI-x and let the kernel
send the interrupt directly. Therefore qemu-nvme needs to do some
bookkeeping about which interrupt vectors are masked.
msix_set_vector_notifiers helps us do that.

Reply via email to