diff -ruN libbpf-rs-0.16.0/Cargo.toml libbpf-rs-0.16.0-downgrade-to-0.4.0/Cargo.toml --- libbpf-rs-0.16.0/Cargo.toml 1969-12-31 16:00:01.000000000 -0800 +++ libbpf-rs-0.16.0-downgrade-to-0.4.0/Cargo.toml 2022-02-15 16:15:59.255663607 -0800 @@ -27,7 +27,7 @@ version = "1.4" [dependencies.libbpf-sys] -version = "0.6.0-1" +version = "0.4.0-2" [dependencies.nix] version = "0.22" diff -ruN libbpf-rs-0.16.0/src/object.rs libbpf-rs-0.16.0-downgrade-to-0.4.0/src/object.rs --- libbpf-rs-0.16.0/src/object.rs 1973-11-29 13:33:09.000000000 -0800 +++ libbpf-rs-0.16.0-downgrade-to-0.4.0/src/object.rs 2022-02-15 16:15:43.089602484 -0800 @@ -53,9 +53,6 @@ pin_root_path: ptr::null(), attach_prog_fd: 0, kconfig: ptr::null(), - btf_custom_path: ptr::null(), - __bindgen_padding_0: <[u8; 6]>::default(), - __bindgen_padding_1: <[u8; 4]>::default(), } } diff -ruN libbpf-rs-0.16.0/src/perf_buffer.rs libbpf-rs-0.16.0-downgrade-to-0.4.0/src/perf_buffer.rs --- libbpf-rs-0.16.0/src/perf_buffer.rs 1973-11-29 13:33:09.000000000 -0800 +++ libbpf-rs-0.16.0-downgrade-to-0.4.0/src/perf_buffer.rs 2022-02-15 16:20:53.001774261 -0800 @@ -106,15 +106,14 @@ lost_cb: self.lost_cb, })); + let opts = libbpf_sys::perf_buffer_opts { + sample_cb: c_sample_cb, + lost_cb: c_lost_cb, + ctx: callback_struct_ptr as *mut _, + }; + let ptr = unsafe { - libbpf_sys::perf_buffer__new( - self.map.fd(), - self.pages as libbpf_sys::size_t, - c_sample_cb, - c_lost_cb, - callback_struct_ptr as *mut _, - std::ptr::null(), - ) + libbpf_sys::perf_buffer__new(self.map.fd(), self.pages as libbpf_sys::size_t, &opts) }; let err = unsafe { libbpf_sys::libbpf_get_error(ptr as *const _) }; if err != 0 {