]> git.baikalelectronics.ru Git - kernel.git/commit
io_uring: halt SQO submission on ctx exit
authorPavel Begunkov <asml.silence@gmail.com>
Sun, 14 Mar 2021 20:57:11 +0000 (20:57 +0000)
committerJens Axboe <axboe@kernel.dk>
Mon, 15 Mar 2021 15:32:40 +0000 (09:32 -0600)
commit8d34f6bae9018060e4ee0011ece0eb0d53f78ec6
treedf125b1bb46ac33b5a53cf4b23255371492897da
parenteddb82cf19be0725f6ed1038c16530443659f4a7
io_uring: halt SQO submission on ctx exit

io_sq_thread_finish() is called in io_ring_ctx_free(), so SQPOLL task is
potentially running submitting new requests. It's not a disaster because
of using a "try" variant of percpu_ref_get, but is far from nice.

Remove ctx from the sqd ctx list earlier, before cancellation loop, so
SQPOLL can't find it and so won't submit new requests.

Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
fs/io_uring.c