Update ucontext to implement sigreturn. Signed-off-by: Stacey Son <s...@freebsd.org> Signed-off-by: Warner Losh <i...@bsdimp.com> Reviewed-by: Richard Henderson <richard.hender...@linaro.org> --- bsd-user/arm/signal.c | 9 +++++++++ bsd-user/arm/target_arch_signal.h | 2 ++ 2 files changed, 11 insertions(+)
diff --git a/bsd-user/arm/signal.c b/bsd-user/arm/signal.c index d32e3b4560..344ce69cea 100644 --- a/bsd-user/arm/signal.c +++ b/bsd-user/arm/signal.c @@ -188,3 +188,12 @@ abi_long set_mcontext(CPUARMState *env, target_mcontext_t *mcp, int srflag) return err; } + +/* Compare to arm/arm/machdep.c sys_sigreturn() */ +abi_long get_ucontext_sigreturn(CPUARMState *env, abi_ulong target_sf, + abi_ulong *target_uc) +{ + *target_uc = target_sf; + + return 0; +} diff --git a/bsd-user/arm/target_arch_signal.h b/bsd-user/arm/target_arch_signal.h index 83ecfaafef..5a4a9d5345 100644 --- a/bsd-user/arm/target_arch_signal.h +++ b/bsd-user/arm/target_arch_signal.h @@ -91,5 +91,7 @@ abi_long set_sigtramp_args(CPUARMState *regs, int sig, struct target_sigaction *ka); abi_long get_mcontext(CPUARMState *regs, target_mcontext_t *mcp, int flags); abi_long set_mcontext(CPUARMState *regs, target_mcontext_t *mcp, int srflag); +abi_long get_ucontext_sigreturn(CPUARMState *regs, abi_ulong target_sf, + abi_ulong *target_uc); #endif /* !_TARGET_ARCH_SIGNAL_H_ */ -- 2.33.0