aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoraurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162>2008-04-22 21:57:57 +0000
committeraurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162>2008-04-22 21:57:57 +0000
commita23a663b6555497b1569e407cc8edff09787decb (patch)
treee1a89f1aa9e504ffc99a78235101d88e79226464
parent99c6c082ffe7e20c611f51d3758c692aae8cd400 (diff)
downloadqemu-a23a663b6555497b1569e407cc8edff09787decb.zip
qemu-a23a663b6555497b1569e407cc8edff09787decb.tar.gz
qemu-a23a663b6555497b1569e407cc8edff09787decb.tar.bz2
Fix PHYS_ADDR_MASK: upper bits of a PTE are reserved so they are 52 bits
long. Thanks to Paul Brook for noticing that. git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4242 c046a42c-6fe2-441c-8c8c-71466251a162
-rw-r--r--target-i386/helper2.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/target-i386/helper2.c b/target-i386/helper2.c
index d5dc96b..106720a 100644
--- a/target-i386/helper2.c
+++ b/target-i386/helper2.c
@@ -800,7 +800,8 @@ target_phys_addr_t cpu_get_phys_page_debug(CPUState *env, target_ulong addr)
#else
-#define PHYS_ADDR_MASK (~0xfff)
+/* Bits 52-62 of a PTE are reserved. Bit 63 is the NX bit. */
+#define PHYS_ADDR_MASK 0xffffffffff000L
/* return value:
-1 = cannot handle fault