On Tue, Mar 25, 2025 at 04:19:33PM -0600, Uday Shankar wrote:
SIGCHLD from exiting children can arrive during io_uring_wait_cqe and cause it to return early with -EINTR. Since we don't have a handler for
Probably -EINTR needs to be handled, and libublksrv retry in case of -EINTR.
SIGCHLD, avoid this issue by ignoring SIGCHLD.
Signed-off-by: Uday Shankar ushankar@purestorage.com
tools/testing/selftests/ublk/kublk.c | 1 + 1 file changed, 1 insertion(+)
diff --git a/tools/testing/selftests/ublk/kublk.c b/tools/testing/selftests/ublk/kublk.c index ded1b93e7913011499ae5dae7b40f0e425982ee4..064a5bb6f12f35892065b8dfacb6f57f6fc16aee 100644 --- a/tools/testing/selftests/ublk/kublk.c +++ b/tools/testing/selftests/ublk/kublk.c @@ -890,6 +890,7 @@ static int cmd_dev_add(struct dev_ctx *ctx) exit(-1); }
- signal(SIGCHLD, SIG_IGN);
Reviewed-by: Ming Lei ming.lei@redhat.com
BTW, the SIGCHLD signal is ignored by default, looks it is good to do it explicitly, if the -EINTR from io_uring_enter() can be avoided in this way.
Thanks, Ming