Do not attempt to set page flags for pages outside target address space

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4310 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
blueswir1 2008-05-03 17:51:24 +00:00
parent d059c17270
commit e0b8d65a97
1 changed files with 4 additions and 0 deletions

4
exec.c
View File

@ -227,6 +227,10 @@ static void page_init(void)
do { do {
n = fscanf (f, "%llx-%llx %*[^\n]\n", &startaddr, &endaddr); n = fscanf (f, "%llx-%llx %*[^\n]\n", &startaddr, &endaddr);
if (n == 2) { if (n == 2) {
startaddr = MIN(startaddr,
(1ULL << TARGET_PHYS_ADDR_SPACE_BITS) - 1);
endaddr = MIN(endaddr,
(1ULL << TARGET_PHYS_ADDR_SPACE_BITS) - 1);
page_set_flags(TARGET_PAGE_ALIGN(startaddr), page_set_flags(TARGET_PAGE_ALIGN(startaddr),
TARGET_PAGE_ALIGN(endaddr), TARGET_PAGE_ALIGN(endaddr),
PAGE_RESERVED); PAGE_RESERVED);