[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] x86: Allow PV guest set X86_CR4_PCE flag

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@xxxxxxxxxx>

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.

How about this (not even compile tested) which is a rather shorter way
of doing the same thing:

diff --git a/xen/arch/x86/domain.c b/xen/arch/x86/domain.c
index 045f6ff..834ce0f 100644
--- a/xen/arch/x86/domain.c
+++ b/xen/arch/x86/domain.c
@@ -721,10 +721,12 @@ static int __init init_pv_cr4_masks(void)
     unsigned long common_mask = ~X86_CR4_TSD;
-     * All PV guests may attempt to modify TSD, DE and OSXSAVE.
+     * All PV guests may attempt to modify TSD, DE, PCE and OSXSAVE.
     if ( cpu_has_de )
         common_mask &= ~X86_CR4_DE;
+    if ( cpu_has_pce )
+        common_mask &= ~X86_CR4_PCE;
     if ( cpu_has_xsave )
         common_mask &= ~X86_CR4_OSXSAVE;

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.