]> www.infradead.org Git - users/dwmw2/qemu.git/commitdiff
hvf: arm: Do not advance PC when raising an exception
authorAkihiko Odaki <akihiko.odaki@daynix.com>
Sat, 20 Jul 2024 09:30:54 +0000 (18:30 +0900)
committerPeter Maydell <peter.maydell@linaro.org>
Mon, 29 Jul 2024 15:06:01 +0000 (16:06 +0100)
This is identical with commit 30a1690f2402 ("hvf: arm: Do not advance
PC when raising an exception") but for writes instead of reads.

Fixes: a2260983c655 ("hvf: arm: Add support for GICv3")
Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
target/arm/hvf/hvf.c

index adcdfae0b17f56a6421200c6a91ce3a77edd0d41..c1496ad5be9b5a92a6f029762796363e2cb2f6d7 100644 (file)
@@ -1586,10 +1586,10 @@ static int hvf_sysreg_write(CPUState *cpu, uint32_t reg, uint64_t val)
     case SYSREG_ICC_SGI1R_EL1:
     case SYSREG_ICC_SRE_EL1:
         /* Call the TCG sysreg handler. This is only safe for GICv3 regs. */
-        if (!hvf_sysreg_write_cp(cpu, reg, val)) {
-            hvf_raise_exception(cpu, EXCP_UDEF, syn_uncategorized());
+        if (hvf_sysreg_write_cp(cpu, reg, val)) {
+            return 0;
         }
-        return 0;
+        break;
     case SYSREG_MDSCR_EL1:
         env->cp15.mdscr_el1 = val;
         return 0;