[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v4 0/2] target/s390x: Fix SIGILL psw.addr reporting
From: |
Ilya Leoshkevich |
Subject: |
[PATCH v4 0/2] target/s390x: Fix SIGILL psw.addr reporting |
Date: |
Tue, 22 Jun 2021 00:32:15 +0200 |
qemu-s390x puts a wrong value into SIGILL's siginfo_t's psw.addr: it
should be a pointer to the instruction following the illegal
instruction, but at the moment it is a pointer to the illegal
instruction itself. This breaks OpenJDK, which relies on this value.
Patch 1 fixes the issue, patch 2 adds a test.
v1: https://lists.nongnu.org/archive/html/qemu-devel/2021-05/msg06592.html
v1 -> v2: Use a better buglink (Cornelia), simplify the inline asm
magic in the test and add an explanation (David).
v2: https://lists.nongnu.org/archive/html/qemu-devel/2021-05/msg06649.html
v2 -> v3: Fix SIGSEGV handling (found when trying to run valgrind under
qemu-user).
v3: https://lists.nongnu.org/archive/html/qemu-devel/2021-06/msg00299.html
v3 -> v4: Fix compiling the test on Ubuntu 20.04 (Jonathan).
Note: the SIGFPE issue is being fixed separately.
https://lists.nongnu.org/archive/html/qemu-devel/2021-06/msg05690.html
Ilya Leoshkevich (2):
target/s390x: Fix SIGILL psw.addr reporting
tests/tcg/s390x: Test SIGILL and SIGSEGV handling
linux-user/s390x/cpu_loop.c | 23 ++++-
target/s390x/excp_helper.c | 71 +++++++-------
target/s390x/internal.h | 1 +
target/s390x/mem_helper.c | 2 +-
tests/tcg/s390x/Makefile.target | 1 +
tests/tcg/s390x/signal.c | 165 ++++++++++++++++++++++++++++++++
6 files changed, 226 insertions(+), 37 deletions(-)
create mode 100644 tests/tcg/s390x/signal.c
--
2.31.1
- [PATCH v4 0/2] target/s390x: Fix SIGILL psw.addr reporting,
Ilya Leoshkevich <=