diff options
author | Richard Henderson <richard.henderson@linaro.org> | 2021-09-29 09:05:28 -0400 |
---|---|---|
committer | Laurent Vivier <laurent@vivier.eu> | 2021-10-01 12:03:47 +0200 |
commit | db2af69d6ba836a264878dbf2cf676d3c1fc46b4 (patch) | |
tree | 0d3b0e93b1f68702bfebd68c8cc5cf7cb79ea744 /linux-user/signal-common.h | |
parent | bb4aa8f59e18412cff0d69f14aee7abba153161a (diff) |
linux-user: Add infrastructure for a signal trampoline page
Allocate a page to hold the signal trampoline(s).
Invoke a guest-specific hook to fill in the contents
of the page before marking it read-execute again.
Reviewed-by: Max Filippov <jcmvbkbc@gmail.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20210929130553.121567-2-richard.henderson@linaro.org>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
Diffstat (limited to 'linux-user/signal-common.h')
-rw-r--r-- | linux-user/signal-common.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/linux-user/signal-common.h b/linux-user/signal-common.h index 79511becb4..7457f8025c 100644 --- a/linux-user/signal-common.h +++ b/linux-user/signal-common.h @@ -20,6 +20,12 @@ #ifndef SIGNAL_COMMON_H #define SIGNAL_COMMON_H +/* Fallback addresses into sigtramp page. */ +extern abi_ulong default_sigreturn; +extern abi_ulong default_rt_sigreturn; + +void setup_sigtramp(abi_ulong tramp_page); + int on_sig_stack(unsigned long sp); int sas_ss_flags(unsigned long sp); abi_ulong target_sigsp(abi_ulong sp, struct target_sigaction *ka); |