Commit 94d57442 authored by Anuj Gupta's avatar Anuj Gupta Committed by Jens Axboe
Browse files

io_uring: expose read/write attribute capability



After commit 9a213d3b80c0, we can pass additional attributes along with
read/write. However, userspace doesn't know that. Add a new feature flag
IORING_FEAT_RW_ATTR, to notify the userspace that the kernel has this
ability.

Signed-off-by: default avatarAnuj Gupta <anuj20.g@samsung.com>
Reviewed-by: default avatarLi Zetao <lizetao1@huawei.com>
Reviewed-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
Tested-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
Reviewed-by: default avatarPavel Begunkov <asml.silence@gmail.com>
Link: https://lore.kernel.org/r/20241205062109.1788-1-anuj20.g@samsung.com


Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent b08e0204
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -577,6 +577,7 @@ struct io_uring_params {
#define IORING_FEAT_REG_REG_RING	(1U << 13)
#define IORING_FEAT_RECVSEND_BUNDLE	(1U << 14)
#define IORING_FEAT_MIN_TIMEOUT		(1U << 15)
#define IORING_FEAT_RW_ATTR		(1U << 16)

/*
 * io_uring_register(2) opcodes and arguments
+2 −1
Original line number Diff line number Diff line
@@ -3713,7 +3713,8 @@ static __cold int io_uring_create(unsigned entries, struct io_uring_params *p,
			IORING_FEAT_EXT_ARG | IORING_FEAT_NATIVE_WORKERS |
			IORING_FEAT_RSRC_TAGS | IORING_FEAT_CQE_SKIP |
			IORING_FEAT_LINKED_FILE | IORING_FEAT_REG_REG_RING |
			IORING_FEAT_RECVSEND_BUNDLE | IORING_FEAT_MIN_TIMEOUT;
			IORING_FEAT_RECVSEND_BUNDLE | IORING_FEAT_MIN_TIMEOUT |
			IORING_FEAT_RW_ATTR;

	if (copy_to_user(params, p, sizeof(*p))) {
		ret = -EFAULT;