On 11/5/20 1:23 PM, Peter Maydell wrote: > The function do_sigreturn() tries to store the PC, NPC and PSR in > uint32_t local variables, which implicitly drops the high half of > these fields for 64-bit guests. > > The usual effect was that a guest which used signals would crash on > return from a signal unless it was lucky enough to take it while the > PC was in the low 4GB of the address space. In particular, Debian > /bin/dash and /bin/bash would segfault after executing external > commands. > > Use abi_ulong, which is the type these fields all have in the > __siginfo_t struct. > > Signed-off-by: Peter Maydell <peter.mayd...@linaro.org> > --- > linux-user/sparc/signal.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-)
Reviewed-by: Richard Henderson <richard.hender...@linaro.org> r~