From: Max Kellermann Date: Tue, 28 Jan 2025 13:39:25 +0000 (+0100) Subject: io_uring/io-wq: pass io_wq to io_get_next_work() X-Git-Tag: v6.15-rc1~124^2~41 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=7d568502ef90e645e3f1afe4e10467d5952ddf87;p=thirdparty%2Fkernel%2Flinux.git io_uring/io-wq: pass io_wq to io_get_next_work() The only caller has already determined this pointer, so let's skip the redundant dereference. Signed-off-by: Max Kellermann Link: https://lore.kernel.org/r/20250128133927.3989681-7-max.kellermann@ionos.com Signed-off-by: Jens Axboe --- diff --git a/io_uring/io-wq.c b/io_uring/io-wq.c index 6e31f312b61a1..f7d328feb7225 100644 --- a/io_uring/io-wq.c +++ b/io_uring/io-wq.c @@ -485,13 +485,12 @@ static bool io_wait_on_hash(struct io_wq *wq, unsigned int hash) } static struct io_wq_work *io_get_next_work(struct io_wq_acct *acct, - struct io_worker *worker) + struct io_wq *wq) __must_hold(acct->lock) { struct io_wq_work_node *node, *prev; struct io_wq_work *work, *tail; unsigned int stall_hash = -1U; - struct io_wq *wq = worker->wq; wq_list_for_each(node, prev, &acct->work_list) { unsigned int work_flags; @@ -576,7 +575,7 @@ static void io_worker_handle_work(struct io_wq_acct *acct, * can't make progress, any work completion or insertion will * clear the stalled flag. */ - work = io_get_next_work(acct, worker); + work = io_get_next_work(acct, wq); if (work) { /* * Make sure cancelation can find this, even before