summary refs log tree commit diff stats
path: root/linux-user/aarch64/cpu_loop.c
diff options
context:
space:
mode:
authorRichard Henderson <richard.henderson@linaro.org>2025-08-30 15:40:07 +1000
committerPeter Maydell <peter.maydell@linaro.org>2025-09-16 17:31:53 +0100
commite1b31ba94d143c5026b199c5df7523fa4d9fa4cf (patch)
tree26138c6073110aa7bd5df0d8afea4dad24e3f470 /linux-user/aarch64/cpu_loop.c
parent5fe3151c5e18eb15347c2ea572b551c7aed67a9f (diff)
downloadfocaccia-qemu-e1b31ba94d143c5026b199c5df7523fa4d9fa4cf.tar.gz
focaccia-qemu-e1b31ba94d143c5026b199c5df7523fa4d9fa4cf.zip
linux-user/aarch64: Generate ESR signal records
Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20250830054128.448363-4-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'linux-user/aarch64/cpu_loop.c')
-rw-r--r--linux-user/aarch64/cpu_loop.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/linux-user/aarch64/cpu_loop.c b/linux-user/aarch64/cpu_loop.c
index 7ad26316de..6060572eed 100644
--- a/linux-user/aarch64/cpu_loop.c
+++ b/linux-user/aarch64/cpu_loop.c
@@ -33,6 +33,9 @@ static void signal_for_exception(CPUARMState *env, vaddr addr)
     uint32_t syn = env->exception.syndrome;
     int si_code, si_signo;
 
+    /* Let signal delivery see that ESR is live. */
+    env->cp15.esr_el[1] = syn;
+
     switch (syn_get_ec(syn)) {
     case EC_DATAABORT:
     case EC_INSNABORT: