Patch by Andreas Faerber with small changes by myself:
* Skip mappings to non-physical memory in the PPC MMU code. Gets the PPC kernel booting a little further. Thanks! Fixes ticket #5193. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34863 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -462,16 +462,22 @@ find_allocated_ranges(void *oldPageTable, void *pageTable,
|
||||
puts("found page table!");
|
||||
*_physicalPageTable
|
||||
= (page_table_entry_group *)map->physical_address;
|
||||
keepRange = false; // we keep it explicitely anyway
|
||||
keepRange = false;
|
||||
// we keep it explicitely anyway
|
||||
}
|
||||
if ((addr_t)map->physical_address <= 0x100
|
||||
&& (addr_t)map->physical_address + map->length >= 0x1000) {
|
||||
puts("found exception handlers!");
|
||||
*_exceptionHandlers = map->virtual_address;
|
||||
keepRange = false; // we keep it explicitely anyway
|
||||
keepRange = false;
|
||||
// we keep it explicitely anyway
|
||||
}
|
||||
if (map->virtual_address == oldPageTable)
|
||||
keepRange = false;
|
||||
if (!is_physical_memory(map->physical_address)) {
|
||||
keepRange = false;
|
||||
// we only get vm_pages for physical memory
|
||||
}
|
||||
|
||||
// insert range in virtual allocated
|
||||
|
||||
|
||||
Reference in New Issue
Block a user