Commit d4729fbd authored by Pavel Begunkov's avatar Pavel Begunkov Committed by Jens Axboe
Browse files

io_uring: don't clear REQ_F_LINK_TIMEOUT



REQ_F_LINK_TIMEOUT is a hint that to look for linked timeouts to cancel,
we're leaving it even when it's already fired. Hence don't care to clear
it in io_kill_linked_timeout(), it's safe and is called only once.

Signed-off-by: default avatarPavel Begunkov <asml.silence@gmail.com>
Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent c15b79de
Loading
Loading
Loading
Loading
+2 −4
Original line number Diff line number Diff line
@@ -1766,7 +1766,6 @@ static bool io_kill_linked_timeout(struct io_kiocb *req)
	__must_hold(&req->ctx->completion_lock)
{
	struct io_kiocb *link = req->link;
	bool cancelled = false;

	/*
	 * Can happen if a linked timeout fired and link had been like
@@ -1782,11 +1781,10 @@ static bool io_kill_linked_timeout(struct io_kiocb *req)
		if (ret != -1) {
			io_cqring_fill_event(link, -ECANCELED);
			io_put_req_deferred(link, 1);
			cancelled = true;
			return true;
		}
	}
	req->flags &= ~REQ_F_LINK_TIMEOUT;
	return cancelled;
	return false;
}

static void io_fail_links(struct io_kiocb *req)