thermosphere: also trap GICH (to deny access)
This commit is contained in:
@@ -72,8 +72,9 @@ uintptr_t configureStage2MemoryMap(u32 *addrSpaceSize)
|
||||
|
||||
identityMapL3(g_vttbl_l3_0, 0x08000000ull, BITL(21), unchanged);
|
||||
|
||||
// GICD -> trapped, GICv2 CPU -> vCPU interface
|
||||
mmu_unmap_range(3, g_vttbl_l3_0, 0x08000000, 0x10000ull);
|
||||
// GICD -> trapped, GICv2 CPU -> vCPU interface, GICH -> trapped (deny access)
|
||||
mmu_unmap_range(3, g_vttbl_l3_0, 0x08000000ull, 0x10000ull);
|
||||
mmu_unmap_range(3, g_vttbl_l3_0, 0x08030000ull, 0x10000ull);
|
||||
mmu_map_page_range(g_vttbl_l3_0, 0x08010000ull, 0x08040000ull, 0x10000ull, devattrs);
|
||||
}
|
||||
|
||||
|
||||
@@ -71,8 +71,10 @@ uintptr_t configureStage2MemoryMap(u32 *addrSpaceSize)
|
||||
|
||||
identityMapL3(g_vttbl_l3_0, 0x00000000ull, BITL(21), unchanged);
|
||||
|
||||
// GICD -> trapped, GICv2 CPU -> vCPU interface
|
||||
// GICD -> trapped, GICv2 CPU -> vCPU interface, GICH -> trapped (access denied including for the unused view)
|
||||
mmu_unmap_page(g_vttbl_l3_0, 0x50401000ull);
|
||||
mmu_unmap_page(g_vttbl_l3_0, 0x50404000ull);
|
||||
mmu_unmap_page(g_vttbl_l3_0, 0x50405000ull);
|
||||
mmu_map_page_range(g_vttbl_l3_0, 0x50042000ull, 0x50046000ull, 0x2000ull, devattrs);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user