Creates a ring of at least entries submission entries (a power of two, the kernel rounds up)
and maps it. flags are IORING_SETUP_* flags. Returns 0, or the negative errno of the failing
step: -ENOSYS where the kernel has no io_uring, -EPERM where policy forbids it (a seccomp filter,
kernel.io_uring_disabled), -ENOMEM when the locked-memory limit of an old kernel is too small.
IORING_SETUP_NO_MMAP, SQE_MIXED, CQE_MIXED and SQ_REWIND change the memory layout in ways this
type does not follow: they return -EINVAL; drive such rings with the system calls directly.
ring_init :: (ring: *Ring, entries: u32, flags: u32 = 0) -> s32
Parameters
- ring: *Ring
- entries: u32
- flags: u32 = 0
Returns
- s32