qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Richard Henderson <richard.henderson@linaro.org>
To: qemu-devel@nongnu.org
Cc: alex.bennee@linaro.org, laurent@vivier.eu,
	"Philippe Mathieu-Daudé" <f4bug@amsat.org>
Subject: [PATCH v3 18/41] linux-user/signal: Drop HOST_SIGNAL_PLACEHOLDER
Date: Fri,  1 Oct 2021 13:11:28 -0400	[thread overview]
Message-ID: <20211001171151.1739472-19-richard.henderson@linaro.org> (raw)
In-Reply-To: <20211001171151.1739472-1-richard.henderson@linaro.org>

Now that all of the linux-user hosts have been converted
to host-signal.h, drop the compatibility code.

Reviewed by: Warner Losh <imp@bsdimp.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
 include/exec/exec-all.h | 12 ------------
 linux-user/signal.c     | 14 --------------
 2 files changed, 26 deletions(-)

diff --git a/include/exec/exec-all.h b/include/exec/exec-all.h
index 5f94d799aa..5dd663c153 100644
--- a/include/exec/exec-all.h
+++ b/include/exec/exec-all.h
@@ -685,18 +685,6 @@ MMUAccessType adjust_signal_pc(uintptr_t *pc, bool is_write);
 bool handle_sigsegv_accerr_write(CPUState *cpu, sigset_t *old_set,
                                  uintptr_t host_pc, abi_ptr guest_addr);
 
-/**
- * cpu_signal_handler
- * @signum: host signal number
- * @pinfo: host siginfo_t
- * @puc: host ucontext_t
- *
- * To be called from the SIGBUS and SIGSEGV signal handler to inform the
- * virtual cpu of exceptions.  Returns true if the signal was handled by
- * the virtual CPU.
- */
-int cpu_signal_handler(int signum, void *pinfo, void *puc);
-
 #else
 static inline void mmap_lock(void) {}
 static inline void mmap_unlock(void) {}
diff --git a/linux-user/signal.c b/linux-user/signal.c
index bab47a6962..537c6c41c0 100644
--- a/linux-user/signal.c
+++ b/linux-user/signal.c
@@ -777,17 +777,6 @@ static void host_signal_handler(int host_sig, siginfo_t *info, void *puc)
     ucontext_t *uc = puc;
     struct emulated_sigtable *k;
     int guest_sig;
-
-#ifdef HOST_SIGNAL_PLACEHOLDER
-    /* the CPU emulator uses some host signals to detect exceptions,
-       we forward to it some signals */
-    if ((host_sig == SIGSEGV || host_sig == SIGBUS)
-        && info->si_code > 0) {
-        if (cpu_signal_handler(host_sig, info, puc)) {
-            return;
-        }
-    }
-#else
     uintptr_t pc = 0;
     bool sync_sig = false;
 
@@ -847,7 +836,6 @@ static void host_signal_handler(int host_sig, siginfo_t *info, void *puc)
 
         sync_sig = true;
     }
-#endif
 
     /* get target signal number */
     guest_sig = host_to_target_signal(host_sig);
@@ -862,7 +850,6 @@ static void host_signal_handler(int host_sig, siginfo_t *info, void *puc)
     k->pending = guest_sig;
     ts->signal_pending = 1;
 
-#ifndef HOST_SIGNAL_PLACEHOLDER
     /*
      * For synchronous signals, unwind the cpu state to the faulting
      * insn and then exit back to the main loop so that the signal
@@ -872,7 +859,6 @@ static void host_signal_handler(int host_sig, siginfo_t *info, void *puc)
         cpu->exception_index = EXCP_INTERRUPT;
         cpu_loop_exit_restore(cpu, pc);
     }
-#endif
 
     rewind_if_in_safe_syscall(puc);
 
-- 
2.25.1



  parent reply	other threads:[~2021-10-01 17:28 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-01 17:11 [PATCH v3 00/41] linux-user: Streamline handling of SIGSEGV Richard Henderson
2021-10-01 17:11 ` [PATCH v3 01/41] accel/tcg: Split out adjust_signal_pc Richard Henderson
2021-10-01 17:11 ` [PATCH v3 02/41] accel/tcg: Move clear_helper_retaddr to cpu loop Richard Henderson
2021-10-01 17:11 ` [PATCH v3 03/41] accel/tcg: Split out handle_sigsegv_accerr_write Richard Henderson
2021-10-01 17:11 ` [PATCH v3 04/41] accel/tcg: Fold cpu_exit_tb_from_sighandler into caller Richard Henderson
2021-10-01 17:11 ` [PATCH v3 05/41] configure: Merge riscv32 and riscv64 host architectures Richard Henderson
2021-10-01 17:11 ` [PATCH v3 06/41] linux-user: Reorg handling for SIGSEGV Richard Henderson
2021-10-01 17:11 ` [PATCH v3 07/41] linux-user/host/x86: Populate host_signal.h Richard Henderson
2021-10-01 17:11 ` [PATCH v3 08/41] linux-user/host/ppc: " Richard Henderson
2021-10-01 17:11 ` [PATCH v3 09/41] linux-user/host/alpha: " Richard Henderson
2021-10-01 17:11 ` [PATCH v3 10/41] linux-user/host/sparc: " Richard Henderson
2021-10-02 14:14   ` Philippe Mathieu-Daudé
2021-10-01 17:11 ` [PATCH v3 11/41] linux-user/host/arm: " Richard Henderson
2021-10-02 14:15   ` Philippe Mathieu-Daudé
2021-10-01 17:11 ` [PATCH v3 12/41] linux-user/host/aarch64: " Richard Henderson
2021-10-01 17:11 ` [PATCH v3 13/41] linux-user/host/s390: " Richard Henderson
2021-10-01 17:11 ` [PATCH v3 14/41] linux-user/host/mips: " Richard Henderson
2021-10-01 17:11 ` [PATCH v3 15/41] linux-user/host/riscv: " Richard Henderson
2021-10-01 17:11 ` [PATCH v3 16/41] target/arm: Fixup comment re handle_cpu_signal Richard Henderson
2021-10-01 17:11 ` [PATCH v3 17/41] linux-user/host/riscv: Improve host_signal_write Richard Henderson
2021-10-01 17:11 ` Richard Henderson [this message]
2021-10-01 17:11 ` [PATCH v3 19/41] hw/core: Add TCGCPUOps.record_sigsegv Richard Henderson
2021-10-01 17:11 ` [PATCH v3 20/41] linux-user: Add cpu_loop_exit_segv Richard Henderson
2021-10-01 17:11 ` [PATCH v3 21/41] target/alpha: Make alpha_cpu_tlb_fill sysemu only Richard Henderson
2021-10-02 14:18   ` Philippe Mathieu-Daudé
2021-10-01 17:11 ` [PATCH v3 22/41] target/arm: Use cpu_loop_exit_segv for mte tag lookup Richard Henderson
2021-10-02 14:20   ` Philippe Mathieu-Daudé
2021-10-01 17:11 ` [PATCH v3 23/41] target/arm: Implement arm_cpu_record_sigsegv Richard Henderson
2021-10-01 17:11 ` [PATCH v3 24/41] target/cris: Make cris_cpu_tlb_fill sysemu only Richard Henderson
2021-10-01 17:11 ` [PATCH v3 25/41] target/hexagon: Remove hexagon_cpu_tlb_fill Richard Henderson
2021-10-01 22:38   ` Taylor Simpson
2021-10-01 17:11 ` [PATCH v3 26/41] target/hppa: Make hppa_cpu_tlb_fill sysemu only Richard Henderson
2021-10-01 17:11 ` [PATCH v3 27/41] target/i386: Implement x86_cpu_record_sigsegv Richard Henderson
2021-10-01 17:11 ` [PATCH v3 28/41] target/m68k: Make m68k_cpu_tlb_fill sysemu only Richard Henderson
2021-10-02 14:21   ` Philippe Mathieu-Daudé
2021-10-01 17:11 ` [PATCH v3 29/41] target/microblaze: Make mb_cpu_tlb_fill " Richard Henderson
2021-10-01 17:11 ` [PATCH v3 30/41] target/mips: Make mips_cpu_tlb_fill " Richard Henderson
2021-10-02 14:23   ` Philippe Mathieu-Daudé
2021-10-01 17:11 ` [PATCH v3 31/41] target/nios2: Implement nios2_cpu_record_sigsegv Richard Henderson
2021-10-02 14:24   ` Philippe Mathieu-Daudé
2021-10-01 17:11 ` [PATCH v3 32/41] linux-user/openrisc: Adjust signal for EXCP_RANGE, EXCP_FPE Richard Henderson
2021-10-01 17:11 ` [PATCH v3 33/41] target/openrisc: Make openrisc_cpu_tlb_fill sysemu only Richard Henderson
2021-10-02 14:26   ` Philippe Mathieu-Daudé
2021-10-01 17:11 ` [PATCH v3 34/41] target/ppc: Implement ppc_cpu_record_sigsegv Richard Henderson
2021-10-01 17:11 ` [PATCH v3 35/41] target/riscv: Make riscv_cpu_tlb_fill sysemu only Richard Henderson
2021-10-02 14:27   ` Philippe Mathieu-Daudé
2021-10-01 17:11 ` [PATCH v3 36/41] target/s390x: Use probe_access_flags in s390_probe_access Richard Henderson
2021-10-01 17:11 ` [PATCH v3 37/41] target/s390x: Implement s390_cpu_record_sigsegv Richard Henderson
2021-10-01 17:11 ` [PATCH v3 38/41] target/sh4: Make sh4_cpu_tlb_fill sysemu only Richard Henderson
2021-10-01 17:11 ` [PATCH v3 39/41] target/sparc: Make sparc_cpu_tlb_fill " Richard Henderson
2021-10-02 14:28   ` Philippe Mathieu-Daudé
2021-10-01 17:11 ` [PATCH v3 40/41] target/xtensa: Make xtensa_cpu_tlb_fill " Richard Henderson
2021-10-01 20:58   ` Max Filippov
2021-10-02 14:29   ` Philippe Mathieu-Daudé
2021-10-01 17:11 ` [PATCH v3 41/41] accel/tcg: Restrict TCGCPUOps::tlb_fill() to sysemu Richard Henderson
2021-10-02 14:30   ` Philippe Mathieu-Daudé

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=20211001171151.1739472-19-richard.henderson@linaro.org \
    --to=richard.henderson@linaro.org \
    --cc=alex.bennee@linaro.org \
    --cc=f4bug@amsat.org \
    --cc=laurent@vivier.eu \
    --cc=qemu-devel@nongnu.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).