The rapid growth of io_uring
The rapid growth of io_uring
Posted Feb 10, 2020 1:33 UTC (Mon) by dcoutts (subscriber, #5387)In reply to: The rapid growth of io_uring by andresfreund
Parent article: The rapid growth of io_uring
So if I understand what you mean then in principle we could have a completion ring of e.g. 1k entries, and submit 10k IORING_OP_POLL_ADD operations on sockets, and this can't lead to loosing any completions. At most, if the completion ring is empty we have to collect completions before submitting new operations (which is completely reasonable). If so, that's excellent.
So is this pattern of use with sockets expected to perform well, e.g. compared to epoll? If so, that's fantastic, we really can use just one system for both disk I/O and network I/O. The one-shot behaviour of IORING_OP_POLL_ADD is entirely adequate (covering epoll's EPOLLONESHOT which is its most useful mode).
