1
2
3
/* automatically generated by rust-bindgen */

pub type __off_t = :: std :: os :: raw :: c_long ; pub type off_t = __off_t ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct __sigset_t { pub __val : [ :: std :: os :: raw :: c_ulong ; 16usize ] , } # [ test ] fn bindgen_test_layout___sigset_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < __sigset_t > ( ) , 128usize , concat ! ( "Size of: " , stringify ! ( __sigset_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < __sigset_t > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( __sigset_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < __sigset_t > ( ) ) ) . __val as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( __sigset_t ) , "::" , stringify ! ( __val ) ) ) ; } pub type sigset_t = __sigset_t ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct iovec { pub iov_base : * mut :: std :: os :: raw :: c_void , pub iov_len : usize , } # [ test ] fn bindgen_test_layout_iovec ( ) { assert_eq ! ( :: std :: mem :: size_of :: < iovec > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( iovec ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < iovec > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( iovec ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < iovec > ( ) ) ) . iov_base as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( iovec ) , "::" , stringify ! ( iov_base ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < iovec > ( ) ) ) . iov_len as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( iovec ) , "::" , stringify ! ( iov_len ) ) ) ; } pub type __kernel_rwf_t = :: std :: os :: raw :: c_int ; pub type __u8 = :: std :: os :: raw :: c_uchar ; pub type __u16 = :: std :: os :: raw :: c_ushort ; pub type __s32 = :: std :: os :: raw :: c_int ; pub type __u32 = :: std :: os :: raw :: c_uint ; pub type __u64 = :: std :: os :: raw :: c_ulonglong ; # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub struct io_uring_sqe { pub opcode : __u8 , pub flags : __u8 , pub ioprio : __u16 , pub fd : __s32 , pub off : __u64 , pub addr : __u64 , pub len : __u32 , pub __bindgen_anon_1 : io_uring_sqe__bindgen_ty_1 , pub user_data : __u64 , pub __bindgen_anon_2 : io_uring_sqe__bindgen_ty_2 , } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union io_uring_sqe__bindgen_ty_1 { pub rw_flags : __kernel_rwf_t , pub fsync_flags : __u32 , pub poll_events : __u16 , _bindgen_union_align : u32 , } # [ test ] fn bindgen_test_layout_io_uring_sqe__bindgen_ty_1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < io_uring_sqe__bindgen_ty_1 > ( ) , 4usize , concat ! ( "Size of: " , stringify ! ( io_uring_sqe__bindgen_ty_1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < io_uring_sqe__bindgen_ty_1 > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( io_uring_sqe__bindgen_ty_1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_sqe__bindgen_ty_1 > ( ) ) ) . rw_flags as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_sqe__bindgen_ty_1 ) , "::" , stringify ! ( rw_flags ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_sqe__bindgen_ty_1 > ( ) ) ) . fsync_flags as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_sqe__bindgen_ty_1 ) , "::" , stringify ! ( fsync_flags ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_sqe__bindgen_ty_1 > ( ) ) ) . poll_events as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_sqe__bindgen_ty_1 ) , "::" , stringify ! ( poll_events ) ) ) ; } # [ repr ( C ) ] # [ derive ( Copy , Clone ) ] pub union io_uring_sqe__bindgen_ty_2 { pub buf_index : __u16 , pub __pad2 : [ __u64 ; 3usize ] , _bindgen_union_align : [ u64 ; 3usize ] , } # [ test ] fn bindgen_test_layout_io_uring_sqe__bindgen_ty_2 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < io_uring_sqe__bindgen_ty_2 > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( io_uring_sqe__bindgen_ty_2 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < io_uring_sqe__bindgen_ty_2 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( io_uring_sqe__bindgen_ty_2 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_sqe__bindgen_ty_2 > ( ) ) ) . buf_index as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_sqe__bindgen_ty_2 ) , "::" , stringify ! ( buf_index ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_sqe__bindgen_ty_2 > ( ) ) ) . __pad2 as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_sqe__bindgen_ty_2 ) , "::" , stringify ! ( __pad2 ) ) ) ; } # [ test ] fn bindgen_test_layout_io_uring_sqe ( ) { assert_eq ! ( :: std :: mem :: size_of :: < io_uring_sqe > ( ) , 64usize , concat ! ( "Size of: " , stringify ! ( io_uring_sqe ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < io_uring_sqe > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( io_uring_sqe ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_sqe > ( ) ) ) . opcode as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_sqe ) , "::" , stringify ! ( opcode ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_sqe > ( ) ) ) . flags as * const _ as usize } , 1usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_sqe ) , "::" , stringify ! ( flags ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_sqe > ( ) ) ) . ioprio as * const _ as usize } , 2usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_sqe ) , "::" , stringify ! ( ioprio ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_sqe > ( ) ) ) . fd as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_sqe ) , "::" , stringify ! ( fd ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_sqe > ( ) ) ) . off as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_sqe ) , "::" , stringify ! ( off ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_sqe > ( ) ) ) . addr as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_sqe ) , "::" , stringify ! ( addr ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_sqe > ( ) ) ) . len as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_sqe ) , "::" , stringify ! ( len ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_sqe > ( ) ) ) . user_data as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_sqe ) , "::" , stringify ! ( user_data ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct io_uring_cqe { pub user_data : __u64 , pub res : __s32 , pub flags : __u32 , } # [ test ] fn bindgen_test_layout_io_uring_cqe ( ) { assert_eq ! ( :: std :: mem :: size_of :: < io_uring_cqe > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( io_uring_cqe ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < io_uring_cqe > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( io_uring_cqe ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_cqe > ( ) ) ) . user_data as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_cqe ) , "::" , stringify ! ( user_data ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_cqe > ( ) ) ) . res as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_cqe ) , "::" , stringify ! ( res ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_cqe > ( ) ) ) . flags as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_cqe ) , "::" , stringify ! ( flags ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct io_sqring_offsets { pub head : __u32 , pub tail : __u32 , pub ring_mask : __u32 , pub ring_entries : __u32 , pub flags : __u32 , pub dropped : __u32 , pub array : __u32 , pub resv1 : __u32 , pub resv2 : __u64 , } # [ test ] fn bindgen_test_layout_io_sqring_offsets ( ) { assert_eq ! ( :: std :: mem :: size_of :: < io_sqring_offsets > ( ) , 40usize , concat ! ( "Size of: " , stringify ! ( io_sqring_offsets ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < io_sqring_offsets > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( io_sqring_offsets ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_sqring_offsets > ( ) ) ) . head as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( io_sqring_offsets ) , "::" , stringify ! ( head ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_sqring_offsets > ( ) ) ) . tail as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( io_sqring_offsets ) , "::" , stringify ! ( tail ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_sqring_offsets > ( ) ) ) . ring_mask as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( io_sqring_offsets ) , "::" , stringify ! ( ring_mask ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_sqring_offsets > ( ) ) ) . ring_entries as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( io_sqring_offsets ) , "::" , stringify ! ( ring_entries ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_sqring_offsets > ( ) ) ) . flags as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( io_sqring_offsets ) , "::" , stringify ! ( flags ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_sqring_offsets > ( ) ) ) . dropped as * const _ as usize } , 20usize , concat ! ( "Offset of field: " , stringify ! ( io_sqring_offsets ) , "::" , stringify ! ( dropped ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_sqring_offsets > ( ) ) ) . array as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( io_sqring_offsets ) , "::" , stringify ! ( array ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_sqring_offsets > ( ) ) ) . resv1 as * const _ as usize } , 28usize , concat ! ( "Offset of field: " , stringify ! ( io_sqring_offsets ) , "::" , stringify ! ( resv1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_sqring_offsets > ( ) ) ) . resv2 as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( io_sqring_offsets ) , "::" , stringify ! ( resv2 ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct io_cqring_offsets { pub head : __u32 , pub tail : __u32 , pub ring_mask : __u32 , pub ring_entries : __u32 , pub overflow : __u32 , pub cqes : __u32 , pub resv : [ __u64 ; 2usize ] , } # [ test ] fn bindgen_test_layout_io_cqring_offsets ( ) { assert_eq ! ( :: std :: mem :: size_of :: < io_cqring_offsets > ( ) , 40usize , concat ! ( "Size of: " , stringify ! ( io_cqring_offsets ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < io_cqring_offsets > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( io_cqring_offsets ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_cqring_offsets > ( ) ) ) . head as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( io_cqring_offsets ) , "::" , stringify ! ( head ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_cqring_offsets > ( ) ) ) . tail as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( io_cqring_offsets ) , "::" , stringify ! ( tail ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_cqring_offsets > ( ) ) ) . ring_mask as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( io_cqring_offsets ) , "::" , stringify ! ( ring_mask ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_cqring_offsets > ( ) ) ) . ring_entries as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( io_cqring_offsets ) , "::" , stringify ! ( ring_entries ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_cqring_offsets > ( ) ) ) . overflow as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( io_cqring_offsets ) , "::" , stringify ! ( overflow ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_cqring_offsets > ( ) ) ) . cqes as * const _ as usize } , 20usize , concat ! ( "Offset of field: " , stringify ! ( io_cqring_offsets ) , "::" , stringify ! ( cqes ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_cqring_offsets > ( ) ) ) . resv as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( io_cqring_offsets ) , "::" , stringify ! ( resv ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct io_uring_params { pub sq_entries : __u32 , pub cq_entries : __u32 , pub flags : __u32 , pub sq_thread_cpu : __u32 , pub sq_thread_idle : __u32 , pub resv : [ __u32 ; 5usize ] , pub sq_off : io_sqring_offsets , pub cq_off : io_cqring_offsets , } # [ test ] fn bindgen_test_layout_io_uring_params ( ) { assert_eq ! ( :: std :: mem :: size_of :: < io_uring_params > ( ) , 120usize , concat ! ( "Size of: " , stringify ! ( io_uring_params ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < io_uring_params > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( io_uring_params ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_params > ( ) ) ) . sq_entries as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_params ) , "::" , stringify ! ( sq_entries ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_params > ( ) ) ) . cq_entries as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_params ) , "::" , stringify ! ( cq_entries ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_params > ( ) ) ) . flags as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_params ) , "::" , stringify ! ( flags ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_params > ( ) ) ) . sq_thread_cpu as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_params ) , "::" , stringify ! ( sq_thread_cpu ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_params > ( ) ) ) . sq_thread_idle as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_params ) , "::" , stringify ! ( sq_thread_idle ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_params > ( ) ) ) . resv as * const _ as usize } , 20usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_params ) , "::" , stringify ! ( resv ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_params > ( ) ) ) . sq_off as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_params ) , "::" , stringify ! ( sq_off ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_params > ( ) ) ) . cq_off as * const _ as usize } , 80usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_params ) , "::" , stringify ! ( cq_off ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct io_uring_sq { pub khead : * mut :: std :: os :: raw :: c_uint , pub ktail : * mut :: std :: os :: raw :: c_uint , pub kring_mask : * mut :: std :: os :: raw :: c_uint , pub kring_entries : * mut :: std :: os :: raw :: c_uint , pub kflags : * mut :: std :: os :: raw :: c_uint , pub kdropped : * mut :: std :: os :: raw :: c_uint , pub array : * mut :: std :: os :: raw :: c_uint , pub sqes : * mut io_uring_sqe , pub sqe_head : :: std :: os :: raw :: c_uint , pub sqe_tail : :: std :: os :: raw :: c_uint , pub ring_sz : usize , } # [ test ] fn bindgen_test_layout_io_uring_sq ( ) { assert_eq ! ( :: std :: mem :: size_of :: < io_uring_sq > ( ) , 80usize , concat ! ( "Size of: " , stringify ! ( io_uring_sq ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < io_uring_sq > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( io_uring_sq ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_sq > ( ) ) ) . khead as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_sq ) , "::" , stringify ! ( khead ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_sq > ( ) ) ) . ktail as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_sq ) , "::" , stringify ! ( ktail ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_sq > ( ) ) ) . kring_mask as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_sq ) , "::" , stringify ! ( kring_mask ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_sq > ( ) ) ) . kring_entries as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_sq ) , "::" , stringify ! ( kring_entries ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_sq > ( ) ) ) . kflags as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_sq ) , "::" , stringify ! ( kflags ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_sq > ( ) ) ) . kdropped as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_sq ) , "::" , stringify ! ( kdropped ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_sq > ( ) ) ) . array as * const _ as usize } , 48usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_sq ) , "::" , stringify ! ( array ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_sq > ( ) ) ) . sqes as * const _ as usize } , 56usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_sq ) , "::" , stringify ! ( sqes ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_sq > ( ) ) ) . sqe_head as * const _ as usize } , 64usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_sq ) , "::" , stringify ! ( sqe_head ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_sq > ( ) ) ) . sqe_tail as * const _ as usize } , 68usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_sq ) , "::" , stringify ! ( sqe_tail ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_sq > ( ) ) ) . ring_sz as * const _ as usize } , 72usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_sq ) , "::" , stringify ! ( ring_sz ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct io_uring_cq { pub khead : * mut :: std :: os :: raw :: c_uint , pub ktail : * mut :: std :: os :: raw :: c_uint , pub kring_mask : * mut :: std :: os :: raw :: c_uint , pub kring_entries : * mut :: std :: os :: raw :: c_uint , pub koverflow : * mut :: std :: os :: raw :: c_uint , pub cqes : * mut io_uring_cqe , pub ring_sz : usize , } # [ test ] fn bindgen_test_layout_io_uring_cq ( ) { assert_eq ! ( :: std :: mem :: size_of :: < io_uring_cq > ( ) , 56usize , concat ! ( "Size of: " , stringify ! ( io_uring_cq ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < io_uring_cq > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( io_uring_cq ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_cq > ( ) ) ) . khead as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_cq ) , "::" , stringify ! ( khead ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_cq > ( ) ) ) . ktail as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_cq ) , "::" , stringify ! ( ktail ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_cq > ( ) ) ) . kring_mask as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_cq ) , "::" , stringify ! ( kring_mask ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_cq > ( ) ) ) . kring_entries as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_cq ) , "::" , stringify ! ( kring_entries ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_cq > ( ) ) ) . koverflow as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_cq ) , "::" , stringify ! ( koverflow ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_cq > ( ) ) ) . cqes as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_cq ) , "::" , stringify ! ( cqes ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring_cq > ( ) ) ) . ring_sz as * const _ as usize } , 48usize , concat ! ( "Offset of field: " , stringify ! ( io_uring_cq ) , "::" , stringify ! ( ring_sz ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct io_uring { pub sq : io_uring_sq , pub cq : io_uring_cq , pub ring_fd : :: std :: os :: raw :: c_int , } # [ test ] fn bindgen_test_layout_io_uring ( ) { assert_eq ! ( :: std :: mem :: size_of :: < io_uring > ( ) , 144usize , concat ! ( "Size of: " , stringify ! ( io_uring ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < io_uring > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( io_uring ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring > ( ) ) ) . sq as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( io_uring ) , "::" , stringify ! ( sq ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring > ( ) ) ) . cq as * const _ as usize } , 80usize , concat ! ( "Offset of field: " , stringify ! ( io_uring ) , "::" , stringify ! ( cq ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < io_uring > ( ) ) ) . ring_fd as * const _ as usize } , 136usize , concat ! ( "Offset of field: " , stringify ! ( io_uring ) , "::" , stringify ! ( ring_fd ) ) ) ; } extern "C" { pub fn io_uring_setup ( entries : :: std :: os :: raw :: c_uint , p : * mut io_uring_params ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn io_uring_enter ( fd : :: std :: os :: raw :: c_uint , to_submit : :: std :: os :: raw :: c_uint , min_complete : :: std :: os :: raw :: c_uint , flags : :: std :: os :: raw :: c_uint , sig : * mut sigset_t ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn io_uring_register ( fd : :: std :: os :: raw :: c_int , opcode : :: std :: os :: raw :: c_uint , arg : * mut :: std :: os :: raw :: c_void , nr_args : :: std :: os :: raw :: c_uint ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn io_uring_queue_init ( entries : :: std :: os :: raw :: c_uint , ring : * mut io_uring , flags : :: std :: os :: raw :: c_uint ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn io_uring_queue_mmap ( fd : :: std :: os :: raw :: c_int , p : * mut io_uring_params , ring : * mut io_uring ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn io_uring_queue_exit ( ring : * mut io_uring ) ; } extern "C" { pub fn io_uring_peek_cqe ( ring : * mut io_uring , cqe_ptr : * mut * mut io_uring_cqe ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn io_uring_wait_cqe ( ring : * mut io_uring , cqe_ptr : * mut * mut io_uring_cqe ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn io_uring_submit ( ring : * mut io_uring ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn io_uring_get_sqe ( ring : * mut io_uring ) -> * mut io_uring_sqe ; } extern "C" { pub fn _io_uring_prep_rw ( op : :: std :: os :: raw :: c_int , sqe : * mut io_uring_sqe , fd : :: std :: os :: raw :: c_int , addr : * mut :: std :: os :: raw :: c_void , len : :: std :: os :: raw :: c_uint , offset : off_t ) ; } extern "C" { pub fn _io_uring_cqe_seen ( ring : * mut io_uring , cqe : * mut io_uring_cqe ) ; } extern "C" { pub fn _io_uring_prep_readv ( sqe : * mut io_uring_sqe , fd : :: std :: os :: raw :: c_int , iovecs : * mut iovec , nr_vecs : :: std :: os :: raw :: c_uint , offset : off_t ) ; } extern "C" { pub fn _io_uring_prep_read_fixed ( sqe : * mut io_uring_sqe , fd : :: std :: os :: raw :: c_int , buf : * mut :: std :: os :: raw :: c_void , nbytes : :: std :: os :: raw :: c_uint , offset : off_t ) ; } extern "C" { pub fn _io_uring_prep_writev ( sqe : * mut io_uring_sqe , fd : :: std :: os :: raw :: c_int , iovecs : * mut iovec , nr_vecs : :: std :: os :: raw :: c_uint , offset : off_t ) ; } extern "C" { pub fn _io_uring_prep_write_fixed ( sqe : * mut io_uring_sqe , fd : :: std :: os :: raw :: c_int , buf : * mut :: std :: os :: raw :: c_void , nbytes : :: std :: os :: raw :: c_uint , offset : off_t ) ; } extern "C" { pub fn _io_uring_prep_fsync ( sqe : * mut io_uring_sqe , fd : :: std :: os :: raw :: c_int , fsync_flags : :: std :: os :: raw :: c_uint ) ; } extern "C" { pub fn _io_uring_prep_nop ( sqe : * mut io_uring_sqe ) ; }