diff options
author | Pavel Begunkov <asml.silence@gmail.com> | 2021-08-15 10:40:19 +0100 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2021-08-23 13:10:37 -0600 |
commit | 761bcac1573efc99042d59add94d468bf17127f0 (patch) | |
tree | 92649083475dcdae19c841ecc27b2cc4f8a10ccb | |
parent | 48dcd38d73c22b22bf9dc1c01b0ca0b8414b31da (diff) | |
download | linux-761bcac1573efc99042d59add94d468bf17127f0.tar.bz2 |
io_uring: don't inflight-track linked timeouts
Tracking linked timeouts as infligh was needed to make sure that io-wq
is not destroyed by io_uring_cancel_generic() racing with
io_async_cancel_one() accessing it. Now, cancellations issued by linked
timeouts are done in the task context, so it's already synchronised.
Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>
Link: https://lore.kernel.org/r/e1b05cf47cb69df2305efdbee8cf7ba36f46c1a3.1628981736.git.asml.silence@gmail.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
-rw-r--r-- | fs/io_uring.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/fs/io_uring.c b/fs/io_uring.c index 86466e12c74d..5b95ab661f31 100644 --- a/fs/io_uring.c +++ b/fs/io_uring.c @@ -5701,8 +5701,6 @@ static int io_timeout_prep(struct io_kiocb *req, const struct io_uring_sqe *sqe, data->mode = io_translate_timeout_mode(flags); hrtimer_init(&data->timer, CLOCK_MONOTONIC, data->mode); - if (is_timeout_link) - io_req_track_inflight(req); return 0; } |