aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKeir Fraser <keir@xen.org>2011-06-02 14:47:10 +0100
committerKeir Fraser <keir@xen.org>2011-06-02 14:47:10 +0100
commit434940e10b3c1817eaf7b9b8db571edc6459b598 (patch)
treef651c7e96fd6abde03bf1f8231181e0d901ea00d
parente25a1b02cfcf9899e1984983b51512feefeb44f4 (diff)
downloadxen-434940e10b3c1817eaf7b9b8db571edc6459b598.tar.gz
xen-434940e10b3c1817eaf7b9b8db571edc6459b598.tar.bz2
xen-434940e10b3c1817eaf7b9b8db571edc6459b598.zip
x86: Fix spurious_page_fault() for 1GB superpages.
From: Xin Li <xin.li@intel.com> Signed-off-by: Keir Fraser <keir@xen.org> xen-unstable changeset: 23441:4d28306d6e33 xen-unstable date: Tue May 31 13:57:45 2011 +0100
-rw-r--r--xen/arch/x86/traps.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/xen/arch/x86/traps.c b/xen/arch/x86/traps.c
index f56b02680f..5c99ebbe6f 100644
--- a/xen/arch/x86/traps.c
+++ b/xen/arch/x86/traps.c
@@ -1170,6 +1170,8 @@ static int __spurious_page_fault(
if ( ((l3e_get_flags(l3e) & required_flags) != required_flags) ||
(l3e_get_flags(l3e) & disallowed_flags) )
return 0;
+ if ( l3e_get_flags(l3e) & _PAGE_PSE )
+ return 1;
#endif
#endif