aya-ebpf-bindings v0.1.2
New Features
- Added MIPS bindings
Updated
aya-obj/src/generated/mod.rsand `bpf/aya-bpf-bindings/src/lib.rs to use the mips bindings.
Other
-
support hardware breakpoints Implement
PerfEventConfig::Breakpoint, allowing users to attach hardware breakpoints. GenerateHW_BREAKPOINT_*andstruct bpf_perf_event_datain support of this feature and update the type ofPerfEventContextaccordingly.Add a test exercising R, W, RW, and X breakpoints. Note that R breakpoints are unsupported on x86, and this is asserted in the test.
Extend the VM integration test harness and supporting infrastructure (e.g.
download_kernel_images.sh) to download kernel debug packages and mountSystem.mapin initramfs. This is needed (at least) on the aarch 6.1 Debian kernel which was not compiled withCONFIG_KALLSYMS_ALL=yfor some reason, and the locations of globals are not available in kallsyms. To attach breakpoints to these symbols in the test pipeline, we need to read them from System.map and apply the KASLR offset to get their real address. TheSystem.mapfile is not provided in the kernel package by default, so we need to extract it from the corresponding debug package. The KASLR offset is computed usinggunzipwhich appears in kallsyms on all Debian kernels tested. -
extract CARGO_CFG_BPF_TARGET_ARCH logic
-
run clippy with target=bpf This build warnings from integration tests and makes
aya-ebpf's build script stricter. -
reorder-keys Group non-workspace keys before workspace ones for readability.
-
hook up loongarch64 This causes rustfmt to format those files.
Squish some other conditional compilation to get rustfmt sorting.
-
do not attempt to run rustfmt This can be done externally. Do so in CI.
This is an attempt to resolve the inconsistency between CI and local rustfmt in the generated bindings.
Restore running CI on generated branches; the presence of a PR is apparently not enough.
-
tidy up Move some code out of a loop, where it appears to be nonsense.
-
add archs powerpc64 and s390x to aya bpfman, a project using aya, has a requirement to support powerpc64 and s390x architectures. Adding these two architectures to aya.
Commit Statistics
- 30 commits contributed to the release.
- 9 commits were understood as conventional.
- 1 unique issue was worked on: #1139
Commit Details
view details
- #1139
- Fix aya-ebpf-* riscv64 build (1fe12b9)
- Uncategorized
- LLM-generated CHANGELOG updates (e5d7452)
- Support hardware breakpoints (ab38afe)
- Extract CARGO_CFG_BPF_TARGET_ARCH logic (f610453)
- Run clippy with target=bpf (fe99fa1)
- Lint all crates; enable strict pointer lints (5f5305c)
- Aya-obj, aya-ebpf-bindings: regenerate (bd0424c)
- Reorder-keys (49a828e)
- Introduce workspace lints, warn on unused crates (a43e40a)
- Hook up loongarch64 (6252b4c)
- Do not attempt to run rustfmt (56ebe14)
- Aya-obj, aya-ebpf-bindings: regenerate (2bb2302)
- Bump edition to 2024 (f0a9f19)
- Use #[expect(...)] rather than #[allow(...)] (4101a5a)
- Aya-obj, aya-ebpf-bindings: regenerate (ce0e93c)
- Aya-obj, aya-ebpf-bindings: regenerate (f49a761)
- Tidy up (c8f14b1)
- Merge pull request #482 from ishanjain28/add_mips_support (2f757b2)
- Added MIPS bindings (3ff6091)
- Merge pull request #1155 from aya-rs/codegen (66da874)
- [codegen] Update libbpf to 324f3c3846d99c8a1e1384a55591f893f0ae5de4 (701a933)
- Release aya-ebpf-cty v0.2.2, aya-ebpf-bindings v0.1.1, aya-ebpf-macros v0.1.1, aya-ebpf v0.1.1 (59082f5)
- Merge pull request #974 from Billy99/billy99-arch-ppc64-s390x (ab5e688)
- Add archs powerpc64 and s390x to aya (b513af1)
- Merge pull request #1010 from aya-rs/codegen (bdbd042)
- [codegen] Update libbpf to b07dfe3b2a6cb0905e883510f22f9f7c0bb66d0dUpdate libbpf to b07dfe3b2a6cb0905e883510f22f9f7c0bb66d0d (e217727)
- Merge pull request #978 from aya-rs/codegen (06aa5c8)
- [codegen] Update libbpf to c1a6c770c46c6e78ad6755bf596c23a4e6f6b216 (8b50a6a)
- Allowlist expected cfgs (e4f9ed8)
- Deny warnings (b603c66)