io_uring: kill off ->inflight_entry field
authorPavel Begunkov <asml.silence@gmail.com>
Fri, 24 Sep 2021 21:00:02 +0000 (22:00 +0100)
committerJens Axboe <axboe@kernel.dk>
Tue, 19 Oct 2021 11:49:54 +0000 (05:49 -0600)
->inflight_entry is not used anymore after converting everything to
single linked lists, remove it. Also adjust io_kiocb layout, so all hot
bits are in first 3 cachelines.

Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>
Link: https://lore.kernel.org/r/fd8d68087ede26c4e1707ce6b175aa1eb2381f2b.1632516769.git.asml.silence@gmail.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
fs/io_uring.c

index b8f60cf..eff24d8 100644 (file)
@@ -868,18 +868,15 @@ struct io_kiocb {
        struct percpu_ref               *fixed_rsrc_refs;
 
        /* used with ctx->iopoll_list with reads/writes */
-       struct list_head                inflight_entry;
+       struct io_wq_work_node          comp_list;
        struct io_task_work             io_task_work;
        /* for polled requests, i.e. IORING_OP_POLL_ADD and async armed poll */
        struct hlist_node               hash_node;
        struct async_poll               *apoll;
-       struct io_wq_work               work;
-       const struct cred               *creds;
-
-       struct io_wq_work_node          comp_list;
-
        /* store used ubuf, so we can prevent reloading */
        struct io_mapped_ubuf           *imu;
+       struct io_wq_work               work;
+       const struct cred               *creds;
 };
 
 struct io_tctx_node {