Slightly modified version of the patch (now mini-series) to optimize EOI bitmap exiting for "stale" routes, i.e. for the case where a vCPU has an in-flight IRQ when the routing changes, and needs one final EOI exit to deassert the IRQ. Kai, I dropped your Reviewed-by as the change was non-trivial. v5: - Intercept EOI if and only if the IRQ is level-triggered. - Add helper to consolidate logic. - Tweak field name. - "Reset" field to -1, immediately before scanning routes. v4: https://lore.kernel.org/all/20250303052227.523411-1-zijie.wei@xxxxxxxxxxxxxxxxx Sean Christopherson (2): KVM: x86: Isolate edge vs. level check in userspace I/O APIC route scanning KVM: x86: Add a helper to deduplicate I/O APIC EOI interception logic weizijie (1): KVM: x86: Rescan I/O APIC routes after EOI interception for old routing arch/x86/include/asm/kvm_host.h | 1 + arch/x86/kvm/ioapic.c | 7 ++----- arch/x86/kvm/ioapic.h | 2 ++ arch/x86/kvm/irq_comm.c | 37 ++++++++++++++++++++++++++++----- arch/x86/kvm/lapic.c | 8 +++++++ arch/x86/kvm/x86.c | 1 + 6 files changed, 46 insertions(+), 10 deletions(-) base-commit: ead22377189e55ba0e9b637a8f48578cf84f5b9c -- 2.48.1.711.g2feabab25a-goog