io_uring: reap poll completions while waiting for refs to drop on exit
authorJens Axboe <axboe@kernel.dk>
Wed, 17 Jun 2020 21:00:04 +0000 (15:00 -0600)
committerJens Axboe <axboe@kernel.dk>
Wed, 17 Jun 2020 21:05:08 +0000 (15:05 -0600)
commit56952e91acc93ed624fe9da840900defb75f1323
tree0e3cbc16f147b9fdd243a296b2d139df000bf2cc
parent9d8426a09195e2dcf2aa249de2aaadd792d491c7
io_uring: reap poll completions while waiting for refs to drop on exit

If we're doing polled IO and end up having requests being submitted
async, then completions can come in while we're waiting for refs to
drop. We need to reap these manually, as nobody else will be looking
for them.

Break the wait into 1/20th of a second time waits, and check for done
poll completions if we time out. Otherwise we can have done poll
completions sitting in ctx->poll_list, which needs us to reap them but
we're just waiting for them.

Cc: stable@vger.kernel.org
Signed-off-by: Jens Axboe <axboe@kernel.dk>
fs/io_uring.c