From f175e89ca2c465c1926f1e55376172613e863ff7 Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Thu, 16 May 2019 17:14:00 -0400 Subject: [PATCH] target/mips: Pass a valid error to raise_mmu_exception for user-only At present we give ret = 0, or TLBRET_MATCH. This gets matched by the default case, which falls through to TLBRET_BADADDR. However, it makes more sense to use a proper value. All of the tlb-related exceptions are handled identically in cpu_loop.c, so TLBRET_BADADDR is as good as any other. Retain it. Backports commit 995ffde9622c01f5b307cab47f9bd7962ac09db2 from qemu --- qemu/target/mips/helper.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/qemu/target/mips/helper.c b/qemu/target/mips/helper.c index 61ef1026..ac59ba76 100644 --- a/qemu/target/mips/helper.c +++ b/qemu/target/mips/helper.c @@ -872,7 +872,7 @@ int mips_cpu_handle_mmu_fault(CPUState *cs, vaddr address, int size, int rw, int prot; int access_type; #endif - int ret = 0; + int ret = TLBRET_BADADDR; #if 0 log_cpu_state(cs, 0);