Re: [PATCH v2] kvm: x86: emulate monitor and mwait instructions as nop

Alexander Graf
2014-06-04T14:44:16Z

On 04.06.14 16:39, Gabriel L. Somlo wrote:
> Paolo,
>
> I noticed the monitor=mwait=nop patch is making its way upstream, so
> thanks !
>
> I'm still interested in following up with something that would enable
> this behavior only conditionally (e.g. following an ioctl call from
> userspace to enable it only for the (set of) vcpu(s) belonging to one
> guest VM at a time), which should then also include advertising the
> feature in CPUID.
>
> I grep-ed through the kvm sources for KVM_CAP for some inspiration,
> and it looks more like KVM_CAP_* is a way to tell userspace what the
> kernel supports, but nothing I saw showed me an example of a "tunable"
> feature that userspace may ask to be turned on or off (e.g per-vcpu).
>
> Is there something like that I could use as an example ?

Sure, we use it all over the place on PPC :).

> Obviously, if you really like the current behavior better you can
> always reject whatever patch I'll come up with, but I'd like to at
> least try and see what it would look like :)

I think it's perfectly fine to leave mwait always implemented as NOP -
it's valid behavior.

As for the CPUID exposure, that should be a pure QEMU thing. If
overriding CPUID bits the kernel mask tells us doesn't work today, we
should just make it possible :).

Eventually I really think that -cpu foo,+mwait,+monitor or whatever the
bits are should override any safety net that KVM gives us on features it
thinks are safe to use.

Alex