io-wq: fix IO_WQ_WORK_NO_CANCEL cancellation
authorPavel Begunkov <asml.silence@gmail.com>
Sun, 1 Mar 2020 16:18:19 +0000 (19:18 +0300)
committerJens Axboe <axboe@kernel.dk>
Mon, 2 Mar 2020 14:20:08 +0000 (07:20 -0700)
commitfc04c39bae01a607454f7619665309870c60937a
tree172b9b53f27f097655777788901405cf134f6723
parent98d54f81e36ba3bf92172791eba5ca5bd813989b
io-wq: fix IO_WQ_WORK_NO_CANCEL cancellation

To cancel a work, io-wq sets IO_WQ_WORK_CANCEL and executes the
callback. However, IO_WQ_WORK_NO_CANCEL works will just execute and may
return next work, which will be ignored and lost.

Cancel the whole link.

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