diff --git a/liburing b/liburing index 45f0735..10a9ff8 160000 --- a/liburing +++ b/liburing @@ -1 +1 @@ -Subproject commit 45f0735219a615ae848033c47c7e2d85d101d43e +Subproject commit 10a9ff846dd62d2975f791c21731aafe1f8562bb diff --git a/rusturing.c b/rusturing.c index 0b5e98d..541d031 100644 --- a/rusturing.c +++ b/rusturing.c @@ -41,8 +41,8 @@ extern inline void rust_io_uring_prep_rw(int op, } extern inline void rust_io_uring_prep_splice(struct io_uring_sqe *sqe, - int fd_in, loff_t off_in, - int fd_out, loff_t off_out, + int fd_in, int64_t off_in, + int fd_out, int64_t off_out, unsigned int nbytes, unsigned int splice_flags) { diff --git a/src/lib.rs b/src/lib.rs index a9bb200..5ad5070 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -117,6 +117,9 @@ pub struct io_uring { pub cq: io_uring_cq, pub flags: libc::c_uint, pub ring_fd: libc::c_int, + + pub features: libc::c_uint, + pub pad: [libc::c_uint; 3], } #[derive(Debug)] @@ -136,6 +139,8 @@ pub struct io_uring_sq { pub ring_sz: libc::size_t, pub ring_ptr: *mut libc::c_void, + + pub pad: [libc::c_uint; 4], } #[derive(Debug)] @@ -151,6 +156,8 @@ pub struct io_uring_cq { pub ring_sz: libc::size_t, pub ring_ptr: *mut libc::c_void, + + pub pad: [libc::c_uint; 4], } #[repr(C)] @@ -298,6 +305,8 @@ extern { pub fn io_uring_get_probe() -> *mut io_uring_probe; + pub fn io_uring_free_probe(probe: *mut io_uring_probe); + pub fn io_uring_dontfork(ring: *mut io_uring) -> libc::c_int; pub fn io_uring_queue_exit(ring: *mut io_uring);