All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Radim Krčmář" <rkrcmar@redhat.com>
To: Alexander Graf <agraf@suse.de>
Cc: Jim Mattson <jmattson@google.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	LKML <linux-kernel@vger.kernel.org>,
	"Gabriel L. Somlo" <gsomlo@gmail.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Jonathan Corbet <corbet@lwn.net>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>,
	the arch/x86 maintainers <x86@kernel.org>,
	Joerg Roedel <joro@8bytes.org>, kvm list <kvm@vger.kernel.org>,
	linux-doc@vger.kernel.org
Subject: Re: [PATCH v5 untested] kvm: better MWAIT emulation for guests
Date: Tue, 4 Apr 2017 15:13:09 +0200	[thread overview]
Message-ID: <20170404131308.GA9826@potion> (raw)
In-Reply-To: <abcfc109-296d-ec8e-2f4a-4f55f6a1b632@suse.de>

2017-04-04 14:51+0200, Alexander Graf:
> On 04/04/2017 02:39 PM, Radim Krčmář wrote:
>> 2017-04-03 12:04+0200, Alexander Graf:
>> > So coming back to the original patch, is there anything that should keep us
>> > from exposing MWAIT straight into the guest at all times?
>> Just minor issues:
>>   * OS X on Core 2 fails for unknown reason if we disable the instruction
>>     trapping, which is an argument against doing it by default
> 
> So for that we should try and see if changing the exposed CPUID MWAIT leaf
> helps. Currently we return 0/0 which is pretty bogus and might be the reason
> OSX fails.

We have tried to pass host's CPUID MWAIT leaf and it still failed:
https://www.spinics.net/lists/kvm/msg146686.html

I wouldn't mind breaking that particular combination of OS X and
hardware, but I'm worried to do it because we don't understand why it
broke, so there could be more ...

>>   * idling guests would consume host CPU, which is a significant change
>>     in behavior and shouldn't be done without userspace's involvement
> 
> That's the same as today, as idling guests with MWAIT would also today end
> up in a NOP emulated loop.
> 
> Please bear in mind that I do not advocate to expose the MWAIT CPUID flag.
> This is only for the instruction trap.

Ah, makes sense.

>> I think the best compromise is to add a capability for the MWAIT VM-exit
>> controls and let userspace expose MWAIT if it wishes to.
>> Will send a patch.
> 
> Please see my patch to force enable CPUID bits ;).

Nice.  MWAIT could also use setting of arbitrary values for its leaf,
but a generic interface for that would probably look clunky on the
command line ...

  reply	other threads:[~2017-04-04 13:13 UTC|newest]

Thread overview: 54+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-03-15 21:22 [PATCH v5 untested] kvm: better MWAIT emulation for guests Michael S. Tsirkin
2017-03-15 23:35 ` Gabriel L. Somlo
2017-03-15 23:41   ` Michael S. Tsirkin
2017-03-16 13:24     ` Gabriel L. Somlo
2017-03-16 14:04       ` Michael S. Tsirkin
2017-03-16 14:58         ` Gabriel L. Somlo
2017-03-16 15:23           ` Michael S. Tsirkin
2017-03-16 15:35           ` Radim Krčmář
2017-03-16 16:01             ` Radim Krčmář
2017-03-16 16:47               ` Gabriel L. Somlo
2017-03-16 17:22                 ` Radim Krčmář
2017-03-16 17:39                   ` Gabriel L. Somlo
2017-03-16 17:27                 ` Michael S. Tsirkin
2017-03-16 17:41                   ` Gabriel L. Somlo
2017-03-16 18:29                     ` Michael S. Tsirkin
2017-03-16 19:24                       ` Gabriel L. Somlo
2017-03-16 19:27                         ` Michael S. Tsirkin
2017-03-16 20:17                           ` Gabriel L. Somlo
2017-03-16 21:14                             ` Gabriel L. Somlo
2017-03-17  2:03                               ` Michael S. Tsirkin
2017-03-17 13:23                                 ` Gabriel L. Somlo
2017-03-21  3:22                                   ` Michael S. Tsirkin
2017-03-21 16:58                                     ` Radim Krčmář
2017-03-21 17:29                                       ` Nadav Amit
2017-03-21 17:29                                         ` Nadav Amit
2017-03-21 19:22                                         ` Radim Krčmář
2017-03-21 22:51                                           ` Gabriel Somlo
2017-03-22  0:02                                             ` Nadav Amit
2017-03-22 13:35                                               ` Michael S. Tsirkin
2017-03-22 14:10                                                 ` Gabriel L. Somlo
2017-03-22 14:15                                                   ` Michael S. Tsirkin
2017-03-16 16:16             ` Gabriel L. Somlo
2017-03-16 16:45               ` Michael S. Tsirkin
2017-03-16 16:52                 ` Gabriel L. Somlo
2017-03-16 16:54                   ` Gabriel L. Somlo
2017-03-16 17:14                     ` Michael S. Tsirkin
2017-03-16 17:38                       ` Radim Krčmář
2017-03-16 14:08       ` Radim Krčmář
2017-03-16 15:44         ` Gabriel L. Somlo
2017-03-16 15:54           ` Radim Krčmář
2017-03-16 16:26             ` Gabriel L. Somlo
2017-03-21 16:16 ` Joerg Roedel
2017-03-21 18:45   ` Michael S. Tsirkin
2017-03-27 13:34 ` Alexander Graf
2017-03-28 14:28   ` Radim Krčmář
2017-03-28 20:35     ` Jim Mattson
2017-03-29 12:11       ` Radim Krčmář
2017-04-03 10:04         ` Alexander Graf
2017-04-04 12:39           ` Radim Krčmář
2017-04-04 12:51             ` Alexander Graf
2017-04-04 13:13               ` Radim Krčmář [this message]
2017-04-04 13:15                 ` Alexander Graf
2017-04-04 13:44                   ` Radim Krčmář
2017-04-04 13:44                     ` [Qemu-devel] " Radim Krčmář

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170404131308.GA9826@potion \
    --to=rkrcmar@redhat.com \
    --cc=agraf@suse.de \
    --cc=corbet@lwn.net \
    --cc=gsomlo@gmail.com \
    --cc=hpa@zytor.com \
    --cc=jmattson@google.com \
    --cc=joro@8bytes.org \
    --cc=kvm@vger.kernel.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=mst@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=tglx@linutronix.de \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.