]> git.proxmox.com Git - mirror_qemu.git/commit
linux-user/riscv: Implement setup_sigtramp
authorRichard Henderson <richard.henderson@linaro.org>
Wed, 29 Sep 2021 13:05:47 +0000 (09:05 -0400)
committerLaurent Vivier <laurent@vivier.eu>
Fri, 1 Oct 2021 10:03:48 +0000 (12:03 +0200)
commit3c62b5d2015b8292d4453f8174abf5fadbc6cc0f
treebd484c82528a07167180dfc3d0e13ad2cc67be50
parentc790e4ebfed8174f65d685f5a4f3262873c237a5
linux-user/riscv: Implement setup_sigtramp

Create and record the rt signal trampoline.

This fixes a bug wrt libgcc fallback unwinding.  It expects
the stack pointer to point to the siginfo_t, whereas we had
inexplicably placed our private signal trampoline at the start
of the signal frame instead of the end.  Now moot because we
have removed it from the stack frame entirely.

Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20210929130553.121567-21-richard.henderson@linaro.org>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
linux-user/riscv/signal.c
linux-user/riscv/target_signal.h