Re: [PATCH] arm64: KVM: export current vcpu->pause state via pseudo regs

From: Will Deacon
Date: Thu Jul 31 2014 - 13:44:35 EST


On Thu, Jul 31, 2014 at 06:36:35PM +0100, Peter Maydell wrote:
> On 31 July 2014 18:21, Paolo Bonzini <pbonzini@xxxxxxxxxx> wrote:
> > What does ARM do if you have a WFI while interrupts are disabled? On
> > x86 after "cli;hlt" only an NMI will wake you up. With spurious
> > wakeups, it's pretty much guaranteed that you will break such "cli;hlt"
> > sequences.
>
> The architecture mandates some things that *must* wake you from
> a WFI, but it also allows wakeups for other reasons not listed, or
> for no reason at all. It's perfectly valid to implement WFI as a NOP
> (though it would not be very good for power efficiency, obviously).
> Guests which don't surround WFI with a "check whether we should
> just go back to WFI" loop are buggy.

(and in case that wasn't clear, local_irq_disable() doesn't prevent an
interrupt from waking you up from wfi, otherwise our idle code would be
broken).

Will
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/