Luiz Capitulino fbc2ed9518 target-i386: fix abort on bad PML4E/PDPTE/PDE/PTE addresses
The code used to walk IA-32e page-tables, and possibly PAE page-tables,
uses the bit mask ~0xfff to get the next PML4E/PDPTE/PDE/PTE address.

However, as we use a uint64_t to store the resulting address, that mask
gets expanded to 0xfffffffffffff000 which not only ends up selecting
reserved bits but also selects the XD bit (execute-disable) which
happens to be enabled by Windows 8, causing qemu_get_ram_ptr() to abort.

This commit fixes that problem by replacing ~0xfff by a correct mask
that only selects the address bit range (ie. bits 51:12).

Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
2013-05-31 09:02:24 -04:00
2013-05-26 11:14:52 +00:00
2013-05-03 12:04:49 -05:00
2013-04-18 13:50:53 +02:00
2013-05-12 13:25:55 +04:00
2013-05-29 08:16:21 -05:00
2013-05-28 12:19:02 +02:00
2013-05-08 15:28:49 +02:00
2013-05-28 12:19:02 +02:00
2013-05-18 16:35:12 +04:00
2013-05-18 16:35:12 +04:00
2013-05-03 13:58:09 +02:00
2013-04-26 20:18:24 +02:00
2013-04-18 13:50:53 +02:00
2013-05-26 11:14:52 +00:00
2013-05-24 18:43:54 +02:00
2013-04-29 12:16:36 -05:00
2013-05-29 08:15:35 -05:00
2013-05-18 16:35:12 +04:00
2013-05-03 13:05:49 +02:00
2013-05-18 16:35:12 +04:00
2013-05-27 12:47:28 +02:00
2013-05-24 16:17:55 +02:00
2013-05-01 13:06:07 +02:00
2013-05-03 12:04:40 -05:00
2013-05-20 10:55:18 -05:00

Read the documentation in qemu-doc.html or on http://wiki.qemu.org

- QEMU team
Description
No description provided
Readme 404 MiB
Languages
C 82.6%
C++ 6.5%
Python 3.4%
Dylan 2.9%
Shell 1.6%
Other 2.8%