From: Peter Maydell <peter.maydell@linaro.org>
To: qemu-devel@nongnu.org
Cc: patches@linaro.org, Riku Voipio <riku.voipio@iki.fi>,
Laurent Vivier <laurent@vivier.eu>
Subject: [Qemu-devel] [PATCH 0/4] linux-user: fix various SIGSEGV delivery bugs
Date: Mon, 6 Nov 2017 18:33:22 +0000 [thread overview]
Message-ID: <1509993206-26637-1-git-send-email-peter.maydell@linaro.org> (raw)
This patchset fixes most of the problems with delivering SIGSEGV
noted in https://bugs.launchpad.net/qemu/+bug/1705118:
* s390x is missing masking operations on the fault address
passed to the guest in si_addr
* ppc is passing the PC of the offending insn, not the data
address, into si_addr
* sparc fails to record the address of a data fault and so
passes 0 into si_addr
* sparc isn't implementing rt_sigaction correctly (it has an
extra 'restorer' argument, similar to alpha)
It doesn't actually get the sparc testcase from that bug working,
though, because SPARC is entirely missing support for setup_rt_frame()
and do_rt_sigreturn(), so it can't deliver RT signals.
Implementing RT signal delivery is too big a bugfix for an afternoon,
so here are the simpler parts. I'll leave the signal delivery part
to somebody who cares about SPARC guests...
thanks
-- PMM
Peter Maydell (4):
linux-user/s390x: Mask si_addr for SIGSEGV
linux-user/ppc: Report correct fault address for data faults
linux-user/sparc: Put address for data faults where linux-user expects
it
linux-user: Handle rt_sigaction correctly for SPARC
linux-user/main.c | 8 ++++++--
linux-user/syscall.c | 27 +++++++++++++++++++++++----
target/sparc/mmu_helper.c | 8 ++++++++
3 files changed, 37 insertions(+), 6 deletions(-)
--
2.7.4
next reply other threads:[~2017-11-06 18:33 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-11-06 18:33 Peter Maydell [this message]
2017-11-06 18:33 ` [Qemu-devel] [PATCH 1/4] linux-user/s390x: Mask si_addr for SIGSEGV Peter Maydell
2017-11-07 8:06 ` Laurent Vivier
2017-11-07 15:34 ` Philippe Mathieu-Daudé
2017-11-08 21:18 ` Richard Henderson
2017-11-09 11:12 ` Peter Maydell
2017-11-06 18:33 ` [Qemu-devel] [PATCH 2/4] linux-user/ppc: Report correct fault address for data faults Peter Maydell
2017-11-07 8:17 ` Laurent Vivier
2017-11-08 21:19 ` Richard Henderson
2017-11-06 18:33 ` [Qemu-devel] [PATCH 3/4] linux-user/sparc: Put address for data faults where linux-user expects it Peter Maydell
2017-11-07 8:28 ` Laurent Vivier
2017-11-07 9:20 ` Peter Maydell
2017-11-07 9:25 ` Laurent Vivier
2017-11-07 15:26 ` Philippe Mathieu-Daudé
2017-11-08 21:21 ` Richard Henderson
2017-11-06 18:33 ` [Qemu-devel] [PATCH 4/4] linux-user: Handle rt_sigaction correctly for SPARC Peter Maydell
2017-11-07 14:11 ` Laurent Vivier
2017-11-07 15:44 ` Philippe Mathieu-Daudé
2017-11-07 20:02 ` [Qemu-devel] [PATCH 0/4] linux-user: fix various SIGSEGV delivery bugs Riku Voipio
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1509993206-26637-1-git-send-email-peter.maydell@linaro.org \
--to=peter.maydell@linaro.org \
--cc=laurent@vivier.eu \
--cc=patches@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=riku.voipio@iki.fi \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.