diff options
author | Peter Maydell <peter.maydell@linaro.org> | 2025-07-25 18:55:09 +0100 |
---|---|---|
committer | Richard Henderson <richard.henderson@linaro.org> | 2025-07-25 13:11:48 -1000 |
commit | 99870aff907b1c863cd32558b543f0ab0d0e74ba (patch) | |
tree | c408b70ad7362ff87f70be79d1b939d8ed884b59 /hw/avr/arduino.c | |
parent | 3cdd990aa920ec8f2994b634f758dab4a86ac167 (diff) | |
download | qemu-99870aff907b1c863cd32558b543f0ab0d0e74ba.zip qemu-99870aff907b1c863cd32558b543f0ab0d0e74ba.tar.gz qemu-99870aff907b1c863cd32558b543f0ab0d0e74ba.tar.bz2 |
linux-user/aarch64: Support TPIDR2_MAGIC signal frame record
FEAT_SME adds the TPIDR2 userspace-accessible system register, which
is used as part of the procedure calling standard's lazy saving
scheme for the ZA registers:
https://github.com/ARM-software/abi-aa/blob/main/aapcs64/aapcs64.rst#66the-za-lazy-saving-scheme
The Linux kernel has a signal frame record for saving
and restoring this value when calling signal handlers, but
we forgot to implement this. The result is that code which
tries to unwind an exception out of a signal handler will
not work correctly.
Add support for the missing record.
Cc: qemu-stable@nongnu.org
Fixes: 78011586b90d1 ("target/arm: Enable SME for user-only")
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-ID: <20250725175510.3864231-3-peter.maydell@linaro.org>
Diffstat (limited to 'hw/avr/arduino.c')
0 files changed, 0 insertions, 0 deletions