* Jens Axboe:

> +/*
> + * Filled with the offset for mmap(2)
> + */
> +struct io_sqring_offsets {
> +     __u32 head;
> +     __u32 tail;
> +     __u32 ring_mask;
> +     __u32 ring_entries;
> +     __u32 flags;
> +     __u32 dropped;
> +     __u32 array;
> +     __u32 resv[3];
> +};
> +
> +struct io_cqring_offsets {
> +     __u32 head;
> +     __u32 tail;
> +     __u32 ring_mask;
> +     __u32 ring_entries;
> +     __u32 overflow;
> +     __u32 cqes;
> +     __u32 resv[4];
> +};
> +
> +/*
> + * io_uring_enter(2) flags
> + */
> +#define IORING_ENTER_GETEVENTS       (1U << 0)
> +
> +/*
> + * Passed in for io_uring_setup(2). Copied back with updated info on success
> + */
> +struct io_uring_params {
> +     __u32 sq_entries;
> +     __u32 cq_entries;
> +     __u32 flags;
> +     __u32 resv[7];
> +     struct io_sqring_offsets sq_off;
> +     struct io_cqring_offsets cq_off;
> +};

I still think it might be a good idea to have one reserved __u64 field
for alignment purposes.

Thanks,
Florian

Reply via email to