diff --git a/libbpf-rs-downgrade-libbpf-sys-040.patch b/libbpf-rs-downgrade-libbpf-sys-040.patch new file mode 100644 index 0000000..0f00568 --- /dev/null +++ b/libbpf-rs-downgrade-libbpf-sys-040.patch @@ -0,0 +1,51 @@ +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 { diff --git a/rust-libbpf-rs.spec b/rust-libbpf-rs.spec index 515e173..5c23446 100644 --- a/rust-libbpf-rs.spec +++ b/rust-libbpf-rs.spec @@ -17,7 +17,7 @@ Source: %{crates_source} Patch0: libbpf-rs-fix-metadata.diff # Downgrade libbpf-sys to 0.4.0-2; this patch is meant for Fedora 35 and lower # where libbpf is still at 0.4.0 -Patch1: libbpf-rs-downgrade-libbpf-sys.patch +Patch1: libbpf-rs-downgrade-libbpf-sys-040.patch # Downgrade libbpf-sys to 0.5.0-2 (for Fedora 36) Patch2: libbpf-rs-downgrade-libbpf-sys-050.patch