[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v3 32/45] target/hppa: Only use EXCP_DTLB_MISS
From: |
Richard Henderson |
Subject: |
[Qemu-devel] [PATCH v3 32/45] target/hppa: Only use EXCP_DTLB_MISS |
Date: |
Wed, 24 Jan 2018 15:26:12 -0800 |
Unknown why this works, but if we return EXCP_ITLB_MISS we
will triple-fault the first userland instruction fetch.
Is it something to do with having a combined I/DTLB?
Signed-off-by: Richard Henderson <address@hidden>
---
target/hppa/mem_helper.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/target/hppa/mem_helper.c b/target/hppa/mem_helper.c
index c14317ebef..81bcbe45db 100644
--- a/target/hppa/mem_helper.c
+++ b/target/hppa/mem_helper.c
@@ -97,7 +97,9 @@ int hppa_get_physical_address(CPUHPPAState *env, vaddr addr,
int mmu_idx,
if (ent == NULL || !ent->entry_valid) {
phys = 0;
prot = 0;
- ret = (ifetch ? EXCP_ITLB_MISS : EXCP_DTLB_MISS);
+ /* ??? Unconditionally report data tlb miss,
+ even if this is an instruction fetch. */
+ ret = EXCP_DTLB_MISS;
goto egress;
}
--
2.14.3
- [Qemu-devel] [PATCH v3 25/45] target/hppa: Implement LCI, (continued)
- [Qemu-devel] [PATCH v3 25/45] target/hppa: Implement LCI, Richard Henderson, 2018/01/24
- [Qemu-devel] [PATCH v3 26/45] target/hppa: Implement SYNCDMA insn, Richard Henderson, 2018/01/24
- [Qemu-devel] [PATCH v3 24/45] target/hppa: Implement LPA, Richard Henderson, 2018/01/24
- [Qemu-devel] [PATCH v3 22/45] target/hppa: Implement P*TLB and P*TLBE insns, Richard Henderson, 2018/01/24
- [Qemu-devel] [PATCH v3 27/45] target/hppa: Implement halt and reset instructions, Richard Henderson, 2018/01/24
- [Qemu-devel] [PATCH v3 28/45] target/hppa: Optimize for flat addressing space, Richard Henderson, 2018/01/24
- [Qemu-devel] [PATCH v3 31/45] target/hppa: Implement B,GATE insn, Richard Henderson, 2018/01/24
- [Qemu-devel] [PATCH v3 29/45] target/hppa: Add system registers to gdbstub, Richard Henderson, 2018/01/24
- [Qemu-devel] [PATCH v3 30/45] target/hppa: Add migration for the cpu, Richard Henderson, 2018/01/24
- [Qemu-devel] [PATCH v3 33/45] qom: Add MMU_DEBUG_LOAD, Richard Henderson, 2018/01/24
- [Qemu-devel] [PATCH v3 32/45] target/hppa: Only use EXCP_DTLB_MISS,
Richard Henderson <=
- [Qemu-devel] [PATCH v3 34/45] target/hppa: Use MMU_DEBUG_LOAD when reloading for CR[IIR], Richard Henderson, 2018/01/24
- [Qemu-devel] [PATCH v3 35/45] target/hppa: Increase number of temp regs, Richard Henderson, 2018/01/24
- [Qemu-devel] [PATCH v3 36/45] target/hppa: Fix comment, Richard Henderson, 2018/01/24
- [Qemu-devel] [PATCH v3 38/45] target/hppa: Implement a pause instruction, Richard Henderson, 2018/01/24
- [Qemu-devel] [PATCH v3 39/45] target/hppa: Implement STWA, Richard Henderson, 2018/01/24
- [Qemu-devel] [PATCH v3 37/45] target/hppa: Implement LDSID for system mode, Richard Henderson, 2018/01/24
- [Qemu-devel] [PATCH v3 40/45] target/hppa: Enable MTTCG, Richard Henderson, 2018/01/24
- [Qemu-devel] [PATCH v3 41/45] hw/hppa: Implement DINO system board, Richard Henderson, 2018/01/24