io_uring/nop: add support for IORING_SETUP_CQE_MIXED
authorJens Axboe <axboe@kernel.dk>
Thu, 7 Aug 2025 20:22:16 +0000 (14:22 -0600)
committerJens Axboe <axboe@kernel.dk>
Sun, 24 Aug 2025 17:41:13 +0000 (11:41 -0600)
commitd2b110c1ac7c3ae35f2087d05642cf38cee999fa
tree853da1ea39e269ddf6c2d88150e4500fe6bebd5a
parent599faa8b8bdc19594452dbd4093e6289d14899d3
io_uring/nop: add support for IORING_SETUP_CQE_MIXED

This adds support for setting IORING_NOP_CQE32 as a flag for a NOP
command, in which case a 32b CQE will be posted rather than a regular
one. This is the default if the ring has been setup with
IORING_SETUP_CQE32. If the ring has been setup with
IORING_SETUP_CQE_MIXED, then 16b CQEs will be posted without this flag
set, and 32b CQEs if this flag is set. For the latter case, sqe->off is
what will be posted as cqe->big_cqe[0] and sqe->addr is what will be
posted as cqe->big_cqe[1].

Signed-off-by: Jens Axboe <axboe@kernel.dk>
include/uapi/linux/io_uring.h
io_uring/nop.c