Re: CPU Lockups in KVM with deferred hrtimer rearming

Sean Christopherson
2026-04-21T21:02:56Z

On Tue, Apr 21, 2026, Paolo Bonzini wrote:
> Il mar 21 apr 2026, 19:55 Sean Christopherson <seanjc@google.com> ha scritto:
> >
> > > > FWIW, VMX should work just like SVM if we clear VM_EXIT_ACK_INTR_ON_EXIT.
> >
> > Hell no.
> >
> > > I know. What's the point of that VM_EXIT_ACK_INTR_ON_EXIT exercise? Is
> > > there any performance benefit or is it just used because it's there?
> >
> > There are performance benefits, and it preserves ordering [...]
> > NMIs are unconditionally "acked" on VM-Exit.
>
> Not that I disagree but...
>
> > Even if performance is "fine", changing decades of fundamental KVM behavior is
> > terrifying.
>
> ... it's not decades, ack on VM exit is actually relatively recent (10
> years out 20 :)). The reason why it was introduced is another killer
> for the idea, though. Posted interrupts require it,

Oh, I forgot about posted interrupts. So yeah, what Paolo said :-)

> for some reason only known to Intel.

My guess is because the ucode that morphs the notification vector into posted
interrupt processing is a sub-clause of the ACK flow. And from an architectural
perspective, having the CPU ACK/dismiss some IRQs (notification vectors) but not
others (everything else) would be kludgy (even more so than special casing the
notification vector already is).