diff -ruN libbpf-rs-0.16.0/Cargo.toml libbpf-rs-0.16.0-downgrade-to-0.5.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.5.0/Cargo.toml 2022-02-15 15:44:14.990476446 -0800 @@ -27,7 +27,7 @@ version = "1.4" [dependencies.libbpf-sys] -version = "0.6.0-1" +version = "0.5.0-2" [dependencies.nix] version = "0.22" diff -ruN libbpf-rs-0.16.0/src/perf_buffer.rs libbpf-rs-0.16.0-downgrade-to-0.5.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.5.0/src/perf_buffer.rs 2022-02-15 15:43:29.766306029 -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 {