target-arm: fix vmsav6 access control

Override access control checks (including execute) for mmu translation
table descriptors assigned to manager domains.

Signed-off-by: Juha Riihimäki <juha.riihimaki@nokia.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
This commit is contained in:
Juha Riihimäki 2010-12-08 13:15:16 +02:00 committed by Aurelien Jarno
parent a5d88f3e03
commit c003432809

View file

@ -1084,6 +1084,9 @@ static int get_phys_addr_v6(CPUState *env, uint32_t address, int access_type,
}
code = 15;
}
if (domain == 3) {
*prot = PAGE_READ | PAGE_WRITE | PAGE_EXEC;
} else {
if (xn && access_type == 2)
goto do_fault;
@ -1101,6 +1104,7 @@ static int get_phys_addr_v6(CPUState *env, uint32_t address, int access_type,
if (!xn) {
*prot |= PAGE_EXEC;
}
}
*phys_ptr = phys_addr;
return 0;
do_fault: