1use libc;
2use crate::io_uring_params;
3
4#[allow(non_upper_case_globals)]
6const __NR_io_uring_setup: libc::c_long = 425;
7#[allow(non_upper_case_globals)]
8const __NR_io_uring_enter: libc::c_long = 426;
9#[allow(non_upper_case_globals)]
10const __NR_io_uring_register: libc::c_long = 427;
11
12pub unsafe fn io_uring_register(fd: libc::c_int, opcode: libc::c_uint, arg: *const libc::c_void, nr_args: libc::c_uint)
13 -> libc::c_int
14{
15 libc::syscall(
16 __NR_io_uring_register,
17 fd,
18 opcode,
19 arg,
20 nr_args
21 ) as libc::c_int
22}
23
24pub unsafe fn io_uring_setup(entries: libc::c_uint, p: *mut io_uring_params)
25 -> libc::c_int
26{
27 libc::syscall(
28 __NR_io_uring_setup,
29 entries,
30 p
31 ) as libc::c_int
32}
33
34pub unsafe fn io_uring_enter(fd: libc::c_int, to_submit: libc::c_uint, min_complete: libc::c_uint, flags: libc::c_uint, sig: *const libc::sigset_t)
35 -> libc::c_int
36{
37 libc::syscall(
38 __NR_io_uring_enter,
39 fd,
40 to_submit,
41 min_complete,
42 flags,
43 sig,
44 core::mem::size_of::<libc::sigset_t>()
45 ) as libc::c_int
46}