diff options
author | 2021-12-17 11:31:46 -0800 | |
---|---|---|
committer | 2021-12-17 11:31:46 -0800 | |
commit | cb29eee3b28c79f26aff9e396a55bf2cb831e1d9 (patch) | |
tree | 8bf3f75bb38b5115f43df7acdb84d297ed91225f | |
parent | Merge tag 'dmaengine-fix-5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/dmaengine (diff) | |
parent | io-wq: drop wqe lock before creating new worker (diff) | |
download | linux-dev-cb29eee3b28c79f26aff9e396a55bf2cb831e1d9.tar.xz linux-dev-cb29eee3b28c79f26aff9e396a55bf2cb831e1d9.zip |
Merge tag 'io_uring-5.16-2021-12-17' of git://git.kernel.dk/linux-block
Pull io_uring fix from Jens Axboe:
"Just a single fix, fixing an issue with the worker creation change
that was merged last week"
* tag 'io_uring-5.16-2021-12-17' of git://git.kernel.dk/linux-block:
io-wq: drop wqe lock before creating new worker
-rw-r--r-- | fs/io-wq.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/io-wq.c b/fs/io-wq.c index 8d2bb818a3bb..5c4f582d6549 100644 --- a/fs/io-wq.c +++ b/fs/io-wq.c @@ -395,7 +395,9 @@ static void io_wqe_dec_running(struct io_worker *worker) if (atomic_dec_and_test(&acct->nr_running) && io_acct_run_queue(acct)) { atomic_inc(&acct->nr_running); atomic_inc(&wqe->wq->worker_refs); + raw_spin_unlock(&wqe->lock); io_queue_worker_create(worker, acct, create_worker_cb); + raw_spin_lock(&wqe->lock); } } |