mbox series

[v2,00/30] linux-user: Clean up siginfo_t handling

Message ID 20210822035537.283193-1-richard.henderson@linaro.org (mailing list archive)
Headers show
Series linux-user: Clean up siginfo_t handling | expand

Message

Richard Henderson Aug. 22, 2021, 3:55 a.m. UTC
Supercedes: 20210813131809.28655-1-peter.maydell@linaro.org
("linux-user: Clean up siginfo_t handling for arm, aarch64")

Changes from Peter's v1:
  * Introduce force_sigsegv_for_addr().
  * Convert the rest of the targets, except nios2
    (nios2 looks very wrong, and I can't test it).
  * Other misc cleanups to signal handling, while I
    was nearby and looking at kernel code.


r~


Peter Maydell (7):
  linux-user/aarch64: Set siginfo_t addr field for SIGTRAP signals
  linux-user/arm: Set siginfo_t addr field for SIGTRAP signals
  linux-user/arm: Use force_sig() to deliver fpa11 emulation SIGFPE
  linux-user: Zero out target_siginfo_t in force_sig()
  linux-user: Provide new force_sig_fault() function
  linux-user/arm: Use force_sig_fault()
  linux-user/aarch64: Use force_sig_fault()

Richard Henderson (23):
  linux-user: Provide new force_sigsegv_for_addr() function
  linux-user/alpha: Set TRAP_UNK for bugchk and unknown gentrap
  linux-user/alpha: Set FPE_FLTUNK for gentrap ROPRAND
  linux-user/alpha: Use force_sig_fault, force_sigsegv_code
  linux-user/cris: Use force_sig_fault, force_sigsegv_code
  linux-user/hexagon: Use force_sigsegv_code
  linux-user/hppa: Use force_sig_fault, force_sigsegv_for_addr
  linux-user/hppa: Use the proper si_code for PRIV_OPR, PRIV_REG,
    OVERFLOW
  linux-user/hppa: Set FPE_CONDTRAP for COND
  linux-user/i386: Split out maybe_handle_vm86_trap
  linux-user/i386: Use force_sig, force_sig_fault,
    force_sigsegv_for_addr
  linux-user/m68k: Use force_sig_fault, force_sigsegv_for_addr
  linux-user/microblaze: Use force_sig_fault, force_sigsegv_for_addr
  linux-user/microblaze: Fix SIGFPE si_codes
  linux-user/mips: Improve do_break
  linux-user/mips: Use force_sig_fault, force_sigsegv_for_addr
  linux-user/openrisc: Use force_sig_fault, force_sigsegv_for_addr
  linux-user/ppc: Use force_sig_fault, force_sigsegv_for_addr
  linux-user/riscv: Use force_sig_fault, force_sigsegv_for_addr
  linux-user/s390x: Use force_sig_fault, force_sigsegv_for_addr
  linux-user/sh4: Use force_sig_fault, force_sigsegv_for_addr
  linux-user/sparc: Use force_sig_fault, force_sigsegv_for_addr
  linux-user/xtensa: Use force_sig_fault, force_sigsegv_for_addr

 linux-user/signal-common.h       |   2 +
 linux-user/syscall_defs.h        |   2 +
 linux-user/aarch64/cpu_loop.c    |  33 ++-----
 linux-user/alpha/cpu_loop.c      |  76 +++++------------
 linux-user/arm/cpu_loop.c        |  64 +++++---------
 linux-user/cris/cpu_loop.c       |  22 ++---
 linux-user/hexagon/cpu_loop.c    |  22 +----
 linux-user/hppa/cpu_loop.c       |  40 ++++-----
 linux-user/i386/cpu_loop.c       |  77 +++++++----------
 linux-user/m68k/cpu_loop.c       |  35 ++------
 linux-user/microblaze/cpu_loop.c |  83 +++++++++---------
 linux-user/mips/cpu_loop.c       |  92 +++++++++-----------
 linux-user/openrisc/cpu_loop.c   |  37 +++-----
 linux-user/ppc/cpu_loop.c        | 142 +++++++------------------------
 linux-user/riscv/cpu_loop.c      |  36 ++------
 linux-user/s390x/cpu_loop.c      |  16 ++--
 linux-user/sh4/cpu_loop.c        |  14 +--
 linux-user/signal.c              |  37 +++++++-
 linux-user/sparc/cpu_loop.c      |  38 ++-------
 linux-user/xtensa/cpu_loop.c     |  34 +++-----
 20 files changed, 310 insertions(+), 592 deletions(-)