[1,2] are small preps for the future that should change nothing functionally. [3] helps to reduce CPU usage on exit. We don't care about latency and CQEs when io_uring is going away, so checking it every HZ/20 should be enough Please, check the assumptions, because I hope that nobody expects ->iopoll() to do real work but not just completing. Pavel Begunkov (3): io_uring: partially inline io_iopoll_getevents() io_uring: remove nr_events arg from iopoll_check() io_uring: don't burn CPU for iopoll on exit fs/io_uring.c | 39 ++++++++++++++++++--------------------- 1 file changed, 18 insertions(+), 21 deletions(-) -- 2.24.0