Hi Alistair, > > Ok! > > So on my x86 machine I see this > > --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=285545, > si_uid=1000, si_status=0, si_utime=0, si_stime=0} --- > wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], > WNOHANG|WSTOPPED|WCONTINUED, NULL) = 285545 > wait4(-1, 0x7ffe3eeb8210, WNOHANG|WSTOPPED|WCONTINUED, NULL) = 0 > rt_sigreturn({mask=[INT]}) = 0 > close(3) = 0 > > It all looks ok.
This was fixed in the meantime (hooray!), sorry I didn't think anyone would still look at the old thread. The commit is given below. Since then we've been able to build riscv32 stages for Gentoo just fine using qemu-user, see https://www.gentoo.org/downloads/#riscv Cheers, Andreas commit f0907ff4cae743f1a4ef3d0a55a047029eed06ff Author: Richard Henderson <richard.hender...@linaro.org> AuthorDate: Fri Apr 5 11:58:14 2024 -1000 Commit: Richard Henderson <richard.hender...@linaro.org> CommitDate: Tue Apr 9 07:43:11 2024 -1000 linux-user: Fix waitid return of siginfo_t and rusage The copy back to siginfo_t should be conditional only on arg3, not the specific values that might have been written. The copy back to rusage was missing entirely. Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2262 Signed-off-by: Richard Henderson <richard.hender...@linaro.org> Tested-by: Alex Fan <alex.fa...@gmail.com> Reviewed-by: Philippe Mathieu-Daudé <phi...@linaro.org> > > Maybe the host_to_target_siginfo() function in QEMU is the issue? > Something in here? > https://github.com/qemu/qemu/blob/master/linux-user/signal.c#L335 > > Nothing jumps out with a quick look though > > Alistair > > > > > > > > > -- > > Andreas K. Hüttel > > dilfri...@gentoo.org > > Gentoo Linux developer > > (council, toolchain, base-system, perl, libreoffice) > -- Andreas K. Hüttel dilfri...@gentoo.org Gentoo Linux developer (council, toolchain, base-system, perl, libreoffice)
signature.asc
Description: This is a digitally signed message part.