From: "Andreas K. Hüttel" <dilfridge@gentoo.org>
To: qemu-devel@nongnu.org, qemu-riscv@nongnu.org
Cc: "Alistair Francis" <alistair.francis@wdc.com>,
bmeng.cn@gmail.com, palmer@dabbelt.com,
"Andreas K. Hüttel" <dilfridge@gentoo.org>,
alistair23@gmail.com
Subject: Re: [PATCH v2 1/1] linux-user/signal: Decode waitid si_code
Date: Thu, 21 Jan 2021 17:15:20 +0200 [thread overview]
Message-ID: <2013655.G923GbCHz0@farino> (raw)
In-Reply-To: <24791910.1r3eYUQgxm@farino>
[-- Attachment #1: Type: text/plain, Size: 1933 bytes --]
Am Mittwoch, 20. Januar 2021, 22:12:30 EET schrieb Andreas K. Hüttel:
> > This patch just passes the waitid status directly back to the guest.
>
> This works at least as well as the previous versions, so ++ from me.
>
> Will do more testing over the next days to see if it maybe also improves the
> additional oddities I observed.
>
So the patch is good since it clearly resolves the linked bug.
However, something else is still broken (maybe related; unchanged compared to
the previous patch version). I keep seeing hanging "qemu-riscv32 /bin/bash
..." processes using 100% cpu. If I attach strace (on the host arch x86-64) to
qemu, I see an infinite loop:
waitid(P_ALL, -1, {}, WNOHANG|WEXITED, NULL) = 0
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], NULL, 8) = 0
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], NULL, 8) = 0
rt_sigprocmask(SIG_SETMASK, [CHLD], NULL, 8) = 0
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], NULL, 8) = 0
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], NULL, 8) = 0
rt_sigprocmask(SIG_SETMASK, [CHLD], NULL, 8) = 0
waitid(P_ALL, -1, {}, WNOHANG|WEXITED, NULL) = 0
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], NULL, 8) = 0
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], NULL, 8) = 0
rt_sigprocmask(SIG_SETMASK, [CHLD], NULL, 8) = 0
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], NULL, 8) = 0
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], NULL, 8) = 0
rt_sigprocmask(SIG_SETMASK, [CHLD], NULL, 8) = 0
...
Unfortunately I do not have a simple reproducer. This is somewhere in the
middle of our build system...
Otherwise, I can re-build glibc, gcc, binutils, make in the qemu chroot
without obvious problems, with one striking strange detail - "make" refuses to
run more than one concurrent process (even with MAKEOPTS="-j9"). Something is
off there.
--
Andreas K. Hüttel
dilfridge@gentoo.org
Gentoo Linux developer
(council, qa, toolchain, base-system, perl, libreoffice)
[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 963 bytes --]
next prev parent reply other threads:[~2021-01-21 15:17 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-01-19 18:24 [PATCH v2 1/1] linux-user/signal: Decode waitid si_code Alistair Francis
2021-01-20 20:12 ` Andreas K. Hüttel
2021-01-21 15:15 ` Andreas K. Hüttel [this message]
2021-02-12 21:44 ` Alistair Francis
2021-02-13 16:08 ` Laurent Vivier
2021-02-13 16:15 ` Laurent Vivier
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=2013655.G923GbCHz0@farino \
--to=dilfridge@gentoo.org \
--cc=alistair.francis@wdc.com \
--cc=alistair23@gmail.com \
--cc=bmeng.cn@gmail.com \
--cc=palmer@dabbelt.com \
--cc=qemu-devel@nongnu.org \
--cc=qemu-riscv@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).