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>
Wed, 20 Aug 2025 19:04:27 +0000 (13:04 -0600)
commit9d185007c45bb1ef4e628c1cc0e5a7e0c7a4a116
treebcacc13d0edfda03aebf86cc8ffcdab0cf0a89a1
parent72d893be981d7f88c9b5fa5c690444e53d0efbb9
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