summaryrefslogtreecommitdiff
path: root/arch/x86/include/asm/required-features.h
diff options
context:
space:
mode:
authorJeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>2009-03-16 17:08:48 -0700
committerJeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>2009-03-30 09:25:31 -0700
commit5f241e65f2be4661a33e1937e1c829252a80b2b8 (patch)
tree691e99a19ecd0345b3b8b73bc150b8ccec89d2c8 /arch/x86/include/asm/required-features.h
parent1e7449730853e7c9ae9a2458b2ced7ba12559a0e (diff)
x86-64: non-paravirt systems always has PSE and PGE
A paravirtualized system may not have PSE or PGE available to guests, so they are not required features. However, without paravirt we can assume that any x86-64 implementation will have them available. Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Diffstat (limited to 'arch/x86/include/asm/required-features.h')
-rw-r--r--arch/x86/include/asm/required-features.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/arch/x86/include/asm/required-features.h b/arch/x86/include/asm/required-features.h
index a4737dddfd58..64cf2d24fad1 100644
--- a/arch/x86/include/asm/required-features.h
+++ b/arch/x86/include/asm/required-features.h
@@ -48,9 +48,15 @@
#endif
#ifdef CONFIG_X86_64
+#ifdef CONFIG_PARAVIRT
+/* Paravirtualized systems may not have PSE or PGE available */
#define NEED_PSE 0
-#define NEED_MSR (1<<(X86_FEATURE_MSR & 31))
#define NEED_PGE 0
+#else
+#define NEED_PSE (1<<(X86_FEATURE_PSE) & 31)
+#define NEED_PGE (1<<(X86_FEATURE_PGE) & 31)
+#endif
+#define NEED_MSR (1<<(X86_FEATURE_MSR & 31))
#define NEED_FXSR (1<<(X86_FEATURE_FXSR & 31))
#define NEED_XMM (1<<(X86_FEATURE_XMM & 31))
#define NEED_XMM2 (1<<(X86_FEATURE_XMM2 & 31))