Commit 382cb030 authored by Pavel Begunkov's avatar Pavel Begunkov Committed by Jens Axboe

io-wq: remove unused io-wq refcounting

iowq->refs is initialised to one and killed on exit, so it's not used
and we can kill it.
Signed-off-by: default avatarPavel Begunkov <asml.silence@gmail.com>
Link: https://lore.kernel.org/r/401007393528ea7c102360e69a29b64498e15db2.1623634181.git.asml.silence@gmail.comSigned-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent c7f405d6
...@@ -109,8 +109,6 @@ struct io_wq { ...@@ -109,8 +109,6 @@ struct io_wq {
struct io_wq_hash *hash; struct io_wq_hash *hash;
refcount_t refs;
atomic_t worker_refs; atomic_t worker_refs;
struct completion worker_done; struct completion worker_done;
...@@ -949,7 +947,6 @@ struct io_wq *io_wq_create(unsigned bounded, struct io_wq_data *data) ...@@ -949,7 +947,6 @@ struct io_wq *io_wq_create(unsigned bounded, struct io_wq_data *data)
} }
wq->task = get_task_struct(data->task); wq->task = get_task_struct(data->task);
refcount_set(&wq->refs, 1);
atomic_set(&wq->worker_refs, 1); atomic_set(&wq->worker_refs, 1);
init_completion(&wq->worker_done); init_completion(&wq->worker_done);
return wq; return wq;
...@@ -1038,7 +1035,6 @@ void io_wq_put_and_exit(struct io_wq *wq) ...@@ -1038,7 +1035,6 @@ void io_wq_put_and_exit(struct io_wq *wq)
WARN_ON_ONCE(!test_bit(IO_WQ_BIT_EXIT, &wq->state)); WARN_ON_ONCE(!test_bit(IO_WQ_BIT_EXIT, &wq->state));
io_wq_exit_workers(wq); io_wq_exit_workers(wq);
if (refcount_dec_and_test(&wq->refs))
io_wq_destroy(wq); io_wq_destroy(wq);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment