summaryrefslogtreecommitdiffstats
path: root/fs/io_uring.c
diff options
context:
space:
mode:
authorPavel Begunkov <asml.silence@gmail.com>2021-10-06 16:06:48 +0100
committerJens Axboe <axboe@kernel.dk>2021-10-19 05:49:55 -0600
commit5a158c6b0d033893cc80c28b182e1207253768a5 (patch)
tree26d2117499dce036e24b189c4bc3b7e286320adb /fs/io_uring.c
parent756ab7c0ec71e5e1e8e6ea11af53324b23d5efd2 (diff)
downloadlinux-5a158c6b0d033893cc80c28b182e1207253768a5.tar.bz2
io_uring: reshuffle io_submit_state bits
struct io_submit_state's ->free_list and ->link are hotter and smaller than ->plug, place them first. Signed-off-by: Pavel Begunkov <asml.silence@gmail.com> Link: https://lore.kernel.org/r/6ad3c15849f50b27ad012c042c73e6e069d22df7.1633532552.git.asml.silence@gmail.com Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'fs/io_uring.c')
-rw-r--r--fs/io_uring.c14
1 files changed, 5 insertions, 9 deletions
diff --git a/fs/io_uring.c b/fs/io_uring.c
index 90bef813556e..04d6e35ea0df 100644
--- a/fs/io_uring.c
+++ b/fs/io_uring.c
@@ -308,19 +308,15 @@ struct io_submit_link {
};
struct io_submit_state {
- struct blk_plug plug;
+ /* inline/task_work completion list, under ->uring_lock */
+ struct io_wq_work_node free_list;
+ /* batch completion logic */
+ struct io_wq_work_list compl_reqs;
struct io_submit_link link;
bool plug_started;
bool need_plug;
-
- /*
- * Batch completion logic
- */
- struct io_wq_work_list compl_reqs;
-
- /* inline/task_work completion list, under ->uring_lock */
- struct io_wq_work_node free_list;
+ struct blk_plug plug;
};
struct io_ring_ctx {