OSDN Git Service

target/s390x: Implement s390x_cpu_record_sigbus
authorRichard Henderson <richard.henderson@linaro.org>
Mon, 4 Oct 2021 17:40:57 +0000 (10:40 -0700)
committerRichard Henderson <richard.henderson@linaro.org>
Tue, 2 Nov 2021 11:00:52 +0000 (07:00 -0400)
commit5bcbf3561f63a9a0660fe40b68374258fe592c23
treee9038473157dab2b027c880769a50a2958af0229
parent5057ae5636cbdaea3f61a5800c2ee1961d986adf
target/s390x: Implement s390x_cpu_record_sigbus

For s390x, the only unaligned accesses that are signaled are atomic,
and we don't actually want to raise SIGBUS for those, but instead
raise a SPECIFICATION error, which the kernel will report as SIGILL.

Split out a do_unaligned_access function to share between the user-only
s390x_cpu_record_sigbus and the sysemu s390x_do_unaligned_access.

Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
target/s390x/cpu.c
target/s390x/s390x-internal.h
target/s390x/tcg/excp_helper.c