From df053f095b67f8984ae31fd0ca1042f4e38c3378 Mon Sep 17 00:00:00 2001 From: Noah Kennedy Date: Sun, 29 Dec 2024 15:52:46 -0600 Subject: [PATCH] docs: update docs for load to mention include_bytes_aligned (#1119) * docs: update docs for load to mention include_bytes_aligned This macro is required if you are bundling programs statically into your binary, which is not an uncommon thing to do. This change updates the documentation for the load function to mention this macro and the need for alignment. --- aya/src/bpf.rs | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/aya/src/bpf.rs b/aya/src/bpf.rs index e0025f49..940c8f07 100644 --- a/aya/src/bpf.rs +++ b/aya/src/bpf.rs @@ -373,6 +373,10 @@ impl<'a> EbpfLoader<'a> { /// Loads eBPF bytecode from a buffer. /// + /// The buffer needs to be 4-bytes aligned. If you are bundling the bytecode statically + /// into your binary, it is recommended that you do so using + /// [`include_bytes_aligned`](crate::include_bytes_aligned). + /// /// # Examples /// /// ```no_run @@ -896,6 +900,10 @@ impl Ebpf { /// [maps](crate::maps) defined in it. If the kernel supports [BTF](Btf) /// debug info, it is automatically loaded from `/sys/kernel/btf/vmlinux`. /// + /// The buffer needs to be 4-bytes aligned. If you are bundling the bytecode statically + /// into your binary, it is recommended that you do so using + /// [`include_bytes_aligned`](crate::include_bytes_aligned). + /// /// For more loading options, see [EbpfLoader]. /// /// # Examples