linux_io_uring_sys/
lib.rs1#![allow(non_camel_case_types, non_upper_case_globals)]
2#![allow(clippy::unreadable_literal, clippy::missing_safety_doc)]
3
4use libc::*;
5
6#[cfg(all(feature = "bindgen", not(feature = "overwrite")))]
7include!(concat!(env!("OUT_DIR"), "/sys.rs"));
8
9#[cfg(any(
10 not(feature = "bindgen"),
11 all(feature = "bindgen", feature = "overwrite")
12))]
13include!("sys.rs");
14
15pub unsafe fn io_uring_register(fd: c_int, opcode: c_uint, arg: *const c_void, nr_args: c_uint)
16 -> c_int
17{
18 syscall(
19 __NR_io_uring_register as c_long,
20 fd as c_long,
21 opcode as c_long,
22 arg as c_long,
23 nr_args as c_long
24 ) as _
25}
26
27pub unsafe fn io_uring_setup(entries: c_uint, p: *mut io_uring_params)
28 -> c_int
29{
30 syscall(
31 __NR_io_uring_setup as c_long,
32 entries as c_long,
33 p as c_long
34 ) as _
35}
36
37pub unsafe fn io_uring_enter(fd: c_int, to_submit: c_uint, min_complete: c_uint, flags: c_uint, sig: *const sigset_t)
38 -> c_int
39{
40 syscall(
41 __NR_io_uring_enter as c_long,
42 fd as c_long,
43 to_submit as c_long,
44 min_complete as c_long,
45 flags as c_long,
46 sig as c_long,
47 core::mem::size_of::<sigset_t>() as c_long
48 ) as _
49}