Revision 6ebbf390 target-arm/helper.c
b/target-arm/helper.c | ||
---|---|---|
169 | 169 |
} |
170 | 170 |
|
171 | 171 |
int cpu_arm_handle_mmu_fault (CPUState *env, target_ulong address, int rw, |
172 |
int is_user, int is_softmmu)
|
|
172 |
int mmu_idx, int is_softmmu)
|
|
173 | 173 |
{ |
174 | 174 |
if (rw == 2) { |
175 | 175 |
env->exception_index = EXCP_PREFETCH_ABORT; |
... | ... | |
547 | 547 |
} |
548 | 548 |
|
549 | 549 |
int cpu_arm_handle_mmu_fault (CPUState *env, target_ulong address, |
550 |
int access_type, int is_user, int is_softmmu)
|
|
550 |
int access_type, int mmu_idx, int is_softmmu)
|
|
551 | 551 |
{ |
552 | 552 |
uint32_t phys_addr; |
553 | 553 |
int prot; |
554 |
int ret; |
|
554 |
int ret, is_user;
|
|
555 | 555 |
|
556 |
is_user = mmu_idx == MMU_USER_IDX; |
|
556 | 557 |
ret = get_phys_addr(env, address, access_type, is_user, &phys_addr, &prot); |
557 | 558 |
if (ret == 0) { |
558 | 559 |
/* Map a single [sub]page. */ |
559 | 560 |
phys_addr &= ~(uint32_t)0x3ff; |
560 | 561 |
address &= ~(uint32_t)0x3ff; |
561 |
return tlb_set_page (env, address, phys_addr, prot, is_user,
|
|
562 |
return tlb_set_page (env, address, phys_addr, prot, mmu_idx,
|
|
562 | 563 |
is_softmmu); |
563 | 564 |
} |
564 | 565 |
|
Also available in: Unified diff