OSDN Git Service

linux-user/s390x: Mask si_addr for SIGSEGV
authorPeter Maydell <peter.maydell@linaro.org>
Mon, 6 Nov 2017 18:33:23 +0000 (18:33 +0000)
committerRiku Voipio <riku.voipio@linaro.org>
Tue, 7 Nov 2017 19:58:13 +0000 (21:58 +0200)
commitf2d34df3c1a88a2cf86eb0afc88c369d799ae431
tree6432ced47182f4566d6a6d01a9cbe247d6b867a9
parenta8b154a637b586441bad42259a8a9b9619cd117c
linux-user/s390x: Mask si_addr for SIGSEGV

For s390x, the address passed to a signal handler in the
siginfo_t si_addr field is masked (in the kernel this is done in
do_sigbus() and do_sigsegv() in arch/s390/mm/fault.c). Implement
this architecture-specific oddity in linux-user.

This is one of the issues described in
https://bugs.launchpad.net/qemu/+bug/1705118

Reviewed-by: Laurent Vivier <laurent@vivier.eu>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Riku Voipio <riku.voipio@linaro.org>
linux-user/main.c