On Wed, Sep 23 2026 at 04:30, Naman Jain wrote: > On CPU hot-unplug, fixup_irqs() re-injects interrupts that are still > pending in the outgoing CPU's IRR via the irqchip's irq_retrigger() > callback. The Hyper-V root partition PCI/MSI irqchip lost that callback > when it was converted to msi_create_parent_irq_domain(), so such a > pending interrupt is silently dropped, leading to lost interrupts, stalls > and "No irq handler for vector" messages. > > Patch 1 is the minimal, backportable fix (Fixes:/Cc: stable) that restores > irq_chip_retrigger_hierarchy() on the Hyper-V root partition PCI/MSI chip. > The equivalent guest pci-hyperv.c fix from the previous version is already > merged, so it is dropped here. > > Patch 2 then switches fixup_irqs() to call irq_chip_retrigger_hierarchy() > directly which ensures that this issue does not occur for chips that > miss adding this initialization. > > Patch 3 makes a similar change in msi_set_affinity() > > Patch 4 then drops the now-redundant irq_retrigger() initializations. > This way, patch 2-4 do not need to be backported.
Reviewed-by: Thomas Gleixner <[email protected]>
