diff options
author | Tim Deegan <Tim.Deegan@citrix.com> | 2011-06-06 09:49:57 +0100 |
---|---|---|
committer | Tim Deegan <Tim.Deegan@citrix.com> | 2011-06-06 09:49:57 +0100 |
commit | fff9b78e1ab8d14a88e792ab520f2d09a4029a07 (patch) | |
tree | e1336d8e7aabcb8a6b7ff6d2af629d56ef6e632e /xen/include/asm-x86/domain.h | |
parent | 090f81d3f5f2aaabd05e52747de5a65f8e454094 (diff) | |
parent | a2e55460988adcd150c9d80b790f10a95a9203c7 (diff) | |
download | xen-fff9b78e1ab8d14a88e792ab520f2d09a4029a07.tar.gz xen-fff9b78e1ab8d14a88e792ab520f2d09a4029a07.tar.bz2 xen-fff9b78e1ab8d14a88e792ab520f2d09a4029a07.zip |
Merge
Diffstat (limited to 'xen/include/asm-x86/domain.h')
-rw-r--r-- | xen/include/asm-x86/domain.h | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/xen/include/asm-x86/domain.h b/xen/include/asm-x86/domain.h index 47edad0d18..9d30fe5ea2 100644 --- a/xen/include/asm-x86/domain.h +++ b/xen/include/asm-x86/domain.h @@ -516,12 +516,14 @@ unsigned long pv_guest_cr4_fixup(const struct vcpu *, unsigned long guest_cr4); /* Convert between guest-visible and real CR4 values. */ #define pv_guest_cr4_to_real_cr4(v) \ (((v)->arch.pv_vcpu.ctrlreg[4] \ - | (mmu_cr4_features & (X86_CR4_PGE | X86_CR4_PSE)) \ - | ((v)->domain->arch.vtsc ? X86_CR4_TSD : 0) \ - | ((xsave_enabled(v))? X86_CR4_OSXSAVE : 0)) \ - & ~X86_CR4_DE) -#define real_cr4_to_pv_guest_cr4(c) \ - ((c) & ~(X86_CR4_PGE | X86_CR4_PSE | X86_CR4_TSD | X86_CR4_OSXSAVE)) + | (mmu_cr4_features \ + & (X86_CR4_PGE | X86_CR4_PSE | X86_CR4_SMEP)) \ + | ((v)->domain->arch.vtsc ? X86_CR4_TSD : 0) \ + | ((xsave_enabled(v))? X86_CR4_OSXSAVE : 0)) \ + & ~X86_CR4_DE) +#define real_cr4_to_pv_guest_cr4(c) \ + ((c) & ~(X86_CR4_PGE | X86_CR4_PSE | X86_CR4_TSD \ + | X86_CR4_OSXSAVE | X86_CR4_SMEP)) void domain_cpuid(struct domain *d, unsigned int input, |