io_uring: expand main struct io_kiocb flags to 64-bits
authorJens Axboe <axboe@kernel.dk>
Mon, 29 Jan 2024 03:05:47 +0000 (20:05 -0700)
committerJens Axboe <axboe@kernel.dk>
Thu, 8 Feb 2024 20:27:03 +0000 (13:27 -0700)
commit4bcb982cce74e18155fba0d97394ca9634e0d8f0
treecfbaa74fe21d99a8175d9f23b1b8d3a579bd2562
parent5492a490e64ed47483a0b28f10ba07eef4a47edb
io_uring: expand main struct io_kiocb flags to 64-bits

We're out of space here, and none of the flags are easily reclaimable.
Bump it to 64-bits and re-arrange the struct a bit to avoid gaps.

Add a specific bitwise type for the request flags, io_request_flags_t.
This will help catch violations of casting this value to a smaller type
on 32-bit archs, like unsigned int.

This creates a hole in the io_kiocb, so move nr_tw up and rsrc_node down
to retain needing only cacheline 0 and 1 for non-polled opcodes.

No functional changes intended in this patch.

Signed-off-by: Jens Axboe <axboe@kernel.dk>
include/linux/io_uring_types.h
include/trace/events/io_uring.h
io_uring/filetable.h
io_uring/io_uring.c