aboutsummaryrefslogtreecommitdiff
path: root/include/linux/io_uring_types.h
diff options
context:
space:
mode:
authorGravatar Pavel Begunkov <asml.silence@gmail.com> 2023-04-04 13:39:53 +0100
committerGravatar Jens Axboe <axboe@kernel.dk> 2023-04-04 09:30:39 -0600
commit36b9818a5a84cb7c977fb723babca1c8d74f288f (patch)
tree21011f4e42c9530225f3650baccd3712431cba4d /include/linux/io_uring_types.h
parentio_uring/rsrc: optimise io_rsrc_put allocation (diff)
downloadlinux-36b9818a5a84cb7c977fb723babca1c8d74f288f.tar.gz
linux-36b9818a5a84cb7c977fb723babca1c8d74f288f.tar.bz2
linux-36b9818a5a84cb7c977fb723babca1c8d74f288f.zip
io_uring/rsrc: don't offload node free
struct delayed_work rsrc_put_work was previously used to offload node freeing because io_rsrc_node_ref_zero() was previously called by RCU in the IRQ context. Now, as percpu refcounting is gone, we can do it eagerly at the spot without pushing it to a worker. Signed-off-by: Pavel Begunkov <asml.silence@gmail.com> Link: https://lore.kernel.org/r/13fb1aac1e8d068ad8fd4a0c6d0d157ab61b90c0.1680576071.git.asml.silence@gmail.com Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'include/linux/io_uring_types.h')
-rw-r--r--include/linux/io_uring_types.h3
1 files changed, 0 insertions, 3 deletions
diff --git a/include/linux/io_uring_types.h b/include/linux/io_uring_types.h
index 9492889f00c0..47496059e13a 100644
--- a/include/linux/io_uring_types.h
+++ b/include/linux/io_uring_types.h
@@ -330,9 +330,6 @@ struct io_ring_ctx {
struct io_rsrc_data *file_data;
struct io_rsrc_data *buf_data;
- struct delayed_work rsrc_put_work;
- struct callback_head rsrc_put_tw;
- struct llist_head rsrc_put_llist;
/* protected by ->uring_lock */
struct list_head rsrc_ref_list;