On 03/02/2016 17:23, Radim Krčmář wrote: > Discard policy uses ack_notifiers to prevent injection of PIT interrupts > before EOI from the last one. > > This patch changes the policy to always try to deliver the interrupt, > which makes a difference when its vector is in ISR. > Old implementation would drop the interrupt, but proposed one injects to > IRR, like real hardware would. > > The old policy breaks legacy NMI watchdogs, where PIT is used through > virtual wire (LVT0): PIT never sends an interrupt before receiving EOI, > thus a guest deadlock with disabled interrupts will stop NMIs. > > Note that NMI doesn't do EOI, so PIT also had to send a normal interrupt > through IOAPIC. (KVM's PIT is deeply rotten and luckily not used much > in modern systems.) > > Even though there is a chance of regressions, I think we can fix the > LVT0 NMI bug without introducing a new tick policy. > > Reported-by: Yuki Shibuya <shibuya.yk@xxxxxxxxxxxxxx> > Signed-off-by: Radim Krčmář <rkrcmar@xxxxxxxxxx> Haven't looked at the patch yet, but this is definitely how DISCARD is supposed to work. Paolo -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html