All of lore.kernel.org
 help / color / mirror / Atom feed
* Spurious/undocumented EINTR from io_uring_enter
@ 2020-04-07 20:36 Joseph Christopher Sible
  2020-04-07 21:41 ` Jens Axboe
  0 siblings, 1 reply; 5+ messages in thread
From: Joseph Christopher Sible @ 2020-04-07 20:36 UTC (permalink / raw)
  To: 'io-uring@vger.kernel.org'

When a process is blocking in io_uring_enter, and a signal stops it for
any reason, it returns -EINTR to userspace. Two comments about this:

1. https://github.com/axboe/liburing/blob/master/man/io_uring_enter.2
   doesn't mention EINTR as a possible error that it can return.
2. When there's no signal handler, and a signal stopped the syscall for
   some other reason (e.g., SIGSTOP, SIGTSTP, or any signal when the
   process is being traced), other syscalls (e.g., read) will be
   restarted transparently, but this one will return to userspace
   with -EINTR just as if there were a signal handler.

Point 1 seems like a no-brainer. I'm not sure if point 2 is possible
to fix, though, especially since some other syscalls (e.g., epoll_wait)
have the same problem as this one.

Joseph C. Sible

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2020-04-08 18:58 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-07 20:36 Spurious/undocumented EINTR from io_uring_enter Joseph Christopher Sible
2020-04-07 21:41 ` Jens Axboe
2020-04-08 16:41   ` Joseph Christopher Sible
2020-04-08 17:49     ` Jens Axboe
2020-04-08 18:57       ` Joseph Christopher Sible

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.