target-i386: Mask NX bit from cpu_get_phys_page_debug result
commit3f2cbf0d1a1340bed4a63e05b044c46df93f4768
authorJan Kiszka <jan.kiszka@siemens.com>
Tue, 6 Mar 2012 14:22:02 +0000 (6 15:22 +0100)
committerBlue Swirl <blauwirbel@gmail.com>
Sun, 11 Mar 2012 11:22:39 +0000 (11 11:22 +0000)
treec6ef216ba1164a3649444af31d266dd53a73c1b1
parentdac6b1b22cbad29ca34735a1e56c9feb9586e3c0
target-i386: Mask NX bit from cpu_get_phys_page_debug result

This was a long pending bug, now revealed by the assert in
phys_page_find that stumbled over the large page index returned by
cpu_get_phys_page_debug for NX-marked pages: We need to mask out NX and
all user-definable bits 52..62 from PDEs and the final PTE to avoid
corrupting physical addresses.

Reviewed-by: Avi Kivity <avi@redhat.com>
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
target-i386/cpu.h
target-i386/helper.c