diff --git a/ebpf/aya-ebpf/src/args.rs b/ebpf/aya-ebpf/src/args.rs index 8b7f84e6..ba153361 100644 --- a/ebpf/aya-ebpf/src/args.rs +++ b/ebpf/aya-ebpf/src/args.rs @@ -1,19 +1,4 @@ -use crate::bindings::bpf_raw_tracepoint_args; -#[cfg(any( - bpf_target_arch = "arm", - bpf_target_arch = "mips", - bpf_target_arch = "powerpc64", - bpf_target_arch = "x86_64", -))] -use crate::bindings::pt_regs; -#[cfg(any( - bpf_target_arch = "aarch64", - bpf_target_arch = "loongarch64", - bpf_target_arch = "s390x", -))] -use crate::bindings::user_pt_regs as pt_regs; -#[cfg(bpf_target_arch = "riscv64")] -use crate::bindings::user_regs_struct as pt_regs; +use crate::bindings::{bpf_raw_tracepoint_args, pt_regs}; mod sealed { #[expect(clippy::missing_safety_doc)] diff --git a/ebpf/aya-ebpf/src/bindings.rs b/ebpf/aya-ebpf/src/bindings.rs new file mode 100644 index 00000000..d227c48e --- /dev/null +++ b/ebpf/aya-ebpf/src/bindings.rs @@ -0,0 +1,16 @@ +#[cfg(any( + bpf_target_arch = "arm", + bpf_target_arch = "mips", + bpf_target_arch = "powerpc64", + bpf_target_arch = "x86_64", +))] +pub use aya_ebpf_bindings::bindings::pt_regs; +#[cfg(any( + bpf_target_arch = "aarch64", + bpf_target_arch = "loongarch64", + bpf_target_arch = "s390x", +))] +pub use aya_ebpf_bindings::bindings::user_pt_regs as pt_regs; +#[cfg(bpf_target_arch = "riscv64")] +pub use aya_ebpf_bindings::bindings::user_regs_struct as pt_regs; +pub use aya_ebpf_bindings::bindings::*; diff --git a/ebpf/aya-ebpf/src/lib.rs b/ebpf/aya-ebpf/src/lib.rs index 0e56bf59..b0e4e344 100644 --- a/ebpf/aya-ebpf/src/lib.rs +++ b/ebpf/aya-ebpf/src/lib.rs @@ -23,9 +23,8 @@ #![warn(clippy::cast_lossless, clippy::cast_sign_loss)] #![no_std] -pub use aya_ebpf_bindings::bindings; - mod args; +pub mod bindings; pub use args::Argument; pub mod btf_maps; #[expect(clippy::missing_safety_doc)] diff --git a/ebpf/aya-ebpf/src/programs/probe.rs b/ebpf/aya-ebpf/src/programs/probe.rs index 19390931..6c7266c6 100644 --- a/ebpf/aya-ebpf/src/programs/probe.rs +++ b/ebpf/aya-ebpf/src/programs/probe.rs @@ -1,21 +1,6 @@ use core::ffi::c_void; -#[cfg(any( - bpf_target_arch = "x86_64", - bpf_target_arch = "arm", - bpf_target_arch = "powerpc64", - bpf_target_arch = "mips" -))] -use crate::bindings::pt_regs; -#[cfg(any( - bpf_target_arch = "aarch64", - bpf_target_arch = "loongarch64", - bpf_target_arch = "s390x", -))] -use crate::bindings::user_pt_regs as pt_regs; -#[cfg(bpf_target_arch = "riscv64")] -use crate::bindings::user_regs_struct as pt_regs; -use crate::{Argument, EbpfContext, args::arg}; +use crate::{Argument, EbpfContext, args::arg, bindings::pt_regs}; pub struct ProbeContext { pub regs: *mut pt_regs, diff --git a/ebpf/aya-ebpf/src/programs/retprobe.rs b/ebpf/aya-ebpf/src/programs/retprobe.rs index 5902033d..c2aec986 100644 --- a/ebpf/aya-ebpf/src/programs/retprobe.rs +++ b/ebpf/aya-ebpf/src/programs/retprobe.rs @@ -1,21 +1,6 @@ use core::ffi::c_void; -#[cfg(any( - bpf_target_arch = "x86_64", - bpf_target_arch = "arm", - bpf_target_arch = "powerpc64", - bpf_target_arch = "mips" -))] -use crate::bindings::pt_regs; -#[cfg(any( - bpf_target_arch = "aarch64", - bpf_target_arch = "loongarch64", - bpf_target_arch = "s390x", -))] -use crate::bindings::user_pt_regs as pt_regs; -#[cfg(bpf_target_arch = "riscv64")] -use crate::bindings::user_regs_struct as pt_regs; -use crate::{Argument, EbpfContext, args::ret}; +use crate::{Argument, EbpfContext, args::ret, bindings::pt_regs}; pub struct RetProbeContext { pub regs: *mut pt_regs, diff --git a/xtask/public-api/aya-ebpf.txt b/xtask/public-api/aya-ebpf.txt index a181601e..a78b1758 100644 --- a/xtask/public-api/aya-ebpf.txt +++ b/xtask/public-api/aya-ebpf.txt @@ -1,7 +1,9 @@ pub mod aya_ebpf -pub use aya_ebpf::bindings pub use aya_ebpf::cty pub use aya_ebpf::macros +pub mod aya_ebpf::bindings +pub use aya_ebpf::bindings::<> +pub use aya_ebpf::bindings::pt_regs pub mod aya_ebpf::btf_maps pub mod aya_ebpf::btf_maps::array #[repr(transparent)] pub struct aya_ebpf::btf_maps::array::Array(_)