All of lore.kernel.org
 help / color / mirror / Atom feed
From: Boris Ostrovsky <boris.ostrovsky@oracle.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>, jbeulich@suse.com
Cc: dietmar.hahn@ts.fujitsu.com, xen-devel@lists.xen.org
Subject: Re: [PATCH] x86: Allow PV guest set X86_CR4_PCE flag
Date: Mon, 10 Aug 2015 11:11:29 -0400	[thread overview]
Message-ID: <55C8BF21.9070709@oracle.com> (raw)
In-Reply-To: <55C8BD01.9010503@citrix.com>



On 08/10/2015 11:02 AM, Andrew Cooper wrote:
> On 10/08/15 15:49, Boris Ostrovsky wrote:
>>
>> On 08/10/2015 10:37 AM, Andrew Cooper wrote:
>>> On 10/08/15 15:27, Boris Ostrovsky wrote:
>>>> With added PV support for VPMU, guests may legitimately decide to set
>>>> CR4's PCE flag. We should allow this when VPMU is enabled.
>>>>
>>>> Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
>>> Why?  Even a PV guest using VPMU should know that it doesn't actually
>>> control CR4.PCE
>>>
>>> All this (appears to) end up doing is putting PCE into the "allow but
>>> ignore" mask.
>> Yes, that's what I wanted to do.
>>
>>> How about this (not even compile tested) which is a rather shorter way
>>> of doing the same thing:
>> We could do this too but I thought that if we have VPMU off there is
>> no reason to allow this bit to be set (quietly).
> Adding the bit to this mask doesn't allow the guest to play with it.
> Xen never sets CR4.PCE.
>
> The question is whether warning about the guest attempting to set it is
> worthwhile or not.  We have no rdpmc support in emulate_privileged_op()
> so any attempt to use it will result in a #UD being injected.

That's because (at least on Linux) we turn it into rdmsr.

Actually, let's forget this patch. Given what I just said above, I think 
it's better to fix this on Linux side and just clear PCE bit in 
xen_write_cr4().

-boris

>
>> (There is no cpu_has_pce, we'd use cpu_has_arch_perfmon on Intel and
>> do this unconditionally on AMD)
> It could trivially be added.  The salient piece of information is
> whether the hardware would support setting CR4.PCE, not whether any of
> the interesting features which come with it are present.
>
> ~Andrew

      reply	other threads:[~2015-08-10 15:11 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-10 14:27 [PATCH] x86: Allow PV guest set X86_CR4_PCE flag Boris Ostrovsky
2015-08-10 14:37 ` Andrew Cooper
2015-08-10 14:49   ` Boris Ostrovsky
2015-08-10 15:02     ` Andrew Cooper
2015-08-10 15:11       ` Boris Ostrovsky [this message]

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=55C8BF21.9070709@oracle.com \
    --to=boris.ostrovsky@oracle.com \
    --cc=andrew.cooper3@citrix.com \
    --cc=dietmar.hahn@ts.fujitsu.com \
    --cc=jbeulich@suse.com \
    --cc=xen-devel@lists.xen.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.