/* SPDX-License-Identifier: (GPL-2.0 WITH Linux-syscall-note) OR MIT */ /* * Header file for the io_uring query interface. */ #ifndef LINUX_IO_URING_QUERY_H #define LINUX_IO_URING_QUERY_H #include struct io_uring_query_hdr { __u64 next_entry; __u64 query_data; __u32 query_op; __u32 size; __s32 result; __u32 __resv[3]; }; enum { IO_URING_QUERY_OPCODES = 0, __IO_URING_QUERY_MAX, }; /* Doesn't require a ring */ struct io_uring_query_opcode { /* The number of supported IORING_OP_* opcodes */ __u32 nr_request_opcodes; /* The number of supported IORING_[UN]REGISTER_* opcodes */ __u32 nr_register_opcodes; /* Bitmask of all supported IORING_FEAT_* flags */ __u64 feature_flags; /* Bitmask of all supported IORING_SETUP_* flags */ __u64 ring_setup_flags; /* Bitmask of all supported IORING_ENTER_** flags */ __u64 enter_flags; /* Bitmask of all supported IOSQE_* flags */ __u64 sqe_flags; }; #endif