[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v6 18/66] linux-user/signal: Drop HOST_SIGNAL_PLACEHOLDER
From: |
Richard Henderson |
Subject: |
[PATCH v6 18/66] linux-user/signal: Drop HOST_SIGNAL_PLACEHOLDER |
Date: |
Sat, 30 Oct 2021 10:15:47 -0700 |
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 6900acb122..b816678ba5 100644
--- a/linux-user/signal.c
+++ b/linux-user/signal.c
@@ -780,17 +780,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;
@@ -850,7 +839,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);
@@ -865,7 +853,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
@@ -875,7 +862,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
- [PATCH v6 27/66] target/i386: Implement x86_cpu_record_sigsegv, (continued)
- [PATCH v6 27/66] target/i386: Implement x86_cpu_record_sigsegv, Richard Henderson, 2021/10/30
- [PATCH v6 35/66] target/riscv: Make riscv_cpu_tlb_fill sysemu only, Richard Henderson, 2021/10/30
- [PATCH v6 38/66] target/sh4: Make sh4_cpu_tlb_fill sysemu only, Richard Henderson, 2021/10/30
- [PATCH v6 39/66] target/sparc: Make sparc_cpu_tlb_fill sysemu only, Richard Henderson, 2021/10/30
- [PATCH v6 26/66] target/hppa: Make hppa_cpu_tlb_fill sysemu only, Richard Henderson, 2021/10/30
- [PATCH v6 31/66] target/nios2: Implement nios2_cpu_record_sigsegv, Richard Henderson, 2021/10/30
- [PATCH v6 37/66] target/s390x: Implement s390_cpu_record_sigsegv, Richard Henderson, 2021/10/30
- [PATCH v6 15/66] linux-user/host/riscv: Populate host_signal.h, Richard Henderson, 2021/10/30
- [PATCH v6 17/66] linux-user/host/riscv: Improve host_signal_write, Richard Henderson, 2021/10/30
- [PATCH v6 18/66] linux-user/signal: Drop HOST_SIGNAL_PLACEHOLDER,
Richard Henderson <=
- [PATCH v6 19/66] hw/core: Add TCGCPUOps.record_sigsegv, Richard Henderson, 2021/10/30
- [PATCH v6 22/66] target/arm: Use cpu_loop_exit_sigsegv for mte tag lookup, Richard Henderson, 2021/10/30
- [PATCH v6 30/66] target/mips: Make mips_cpu_tlb_fill sysemu only, Richard Henderson, 2021/10/30
- [PATCH v6 32/66] linux-user/openrisc: Abort for EXCP_RANGE, EXCP_FPE, Richard Henderson, 2021/10/30
- [PATCH v6 20/66] linux-user: Add cpu_loop_exit_sigsegv, Richard Henderson, 2021/10/30
- [PATCH v6 23/66] target/arm: Implement arm_cpu_record_sigsegv, Richard Henderson, 2021/10/30
- [PATCH v6 25/66] target/hexagon: Remove hexagon_cpu_tlb_fill, Richard Henderson, 2021/10/30
- [PATCH v6 33/66] target/openrisc: Make openrisc_cpu_tlb_fill sysemu only, Richard Henderson, 2021/10/30
- [PATCH v6 36/66] target/s390x: Use probe_access_flags in s390_probe_access, Richard Henderson, 2021/10/30