diff options
author | Akihiko Odaki <akihiko.odaki@daynix.com> | 2024-07-16 21:50:33 +0900 |
---|---|---|
committer | Peter Maydell <peter.maydell@linaro.org> | 2024-07-18 13:49:30 +0100 |
commit | 30a1690f2402e6c1582d5b3ebcf7940bfe2fad4b (patch) | |
tree | 5f9cd68ded4bdeac3ae00900bdcbf334bc8fb9c3 /target/arm/hvf/hvf.c | |
parent | 71328d82896642d79d4e538e5a56c5e6762a219a (diff) |
hvf: arm: Do not advance PC when raising an exception
hvf did not advance PC when raising an exception for most unhandled
system registers, but it mistakenly advanced PC when raising an
exception for GICv3 registers.
Cc: qemu-stable@nongnu.org
Fixes: a2260983c655 ("hvf: arm: Add support for GICv3")
Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Message-id: 20240716-pmu-v3-4-8c7c1858a227@daynix.com
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'target/arm/hvf/hvf.c')
-rw-r--r-- | target/arm/hvf/hvf.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/target/arm/hvf/hvf.c b/target/arm/hvf/hvf.c index ef9bc42738..eb090e67a2 100644 --- a/target/arm/hvf/hvf.c +++ b/target/arm/hvf/hvf.c @@ -1278,6 +1278,7 @@ static int hvf_sysreg_read(CPUState *cpu, uint32_t reg, uint32_t rt) /* Call the TCG sysreg handler. This is only safe for GICv3 regs. */ if (!hvf_sysreg_read_cp(cpu, reg, &val)) { hvf_raise_exception(cpu, EXCP_UDEF, syn_uncategorized()); + return 1; } break; case SYSREG_DBGBVR0_EL1: |