public inbox for [email protected]
 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: '[email protected]'

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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox