Commit Graph

2236 Commits (a3282e1d1415eef2673a40c16f000cadac94f3ba)
 

Author SHA1 Message Date
Tamir Duberstein 9a47495227 aya,aya-obj: preserve pointer provenance 9 months ago
Tamir Duberstein b500a6326b tests: use `cfg!` to tidy up 9 months ago
Tamir Duberstein 122c49fca4 *: appease clippy
While I'm here convert a String to a PathBuf in an error to avoid lossy
conversions.

See https://rust-lang.github.io/rust-clippy/master/index.html#io_other_error.
9 months ago
tamird f49a761c27 aya-obj, aya-ebpf-bindings: regenerate
libbpf commit: 20ea95b4505c477af3b6ff6ce9d19cee868ddc5d
9 months ago
Tamir Duberstein 5d5b63dcb1 gen: run on ubuntu-latest
ubuntu-20.04 is being deprecated.

See https://github.com/actions/runner-images/issues/11101.
9 months ago
aorhant 9e1bcd0ab8 aya: Fix PerCpuHashMap NotFound
PerCpuHashMap was never returning MapError::KeyNotFound because
bpf_map_lookup_elem_per_cpu was replacing Ok(None) with
Ok(Some(zeroed_value)).

Update bpf_map_lookup_elem_per_cpu to map the Option value.
9 months ago
tamird 39e40ba5c7 public-api: regenerate 9 months ago
tamird ae317961ef public-api: regenerate 9 months ago
Tamir Duberstein 9e52d2c123 Correctly specify git dependency
Fixes #1178.
9 months ago
dependabot[bot] 8724cc1b2d
Merge pull request #1177 from aya-rs/dependabot/cargo/cargo-crates-b42da3d535 9 months ago
dependabot[bot] 5e5cd29922
build(deps): update rand requirement
Updates the requirements on [rand](https://github.com/rust-random/rand) to permit the latest version.

Updates `rand` to 0.8.5
- [Release notes](https://github.com/rust-random/rand/releases)
- [Changelog](https://github.com/rust-random/rand/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-random/rand/compare/0.8.0...0.8.5)

---
updated-dependencies:
- dependency-name: rand
  dependency-type: direct:production
  dependency-group: cargo-crates
...

Signed-off-by: dependabot[bot] <support@github.com>
9 months ago
Tamir Duberstein c608a2d3d2 Update public-api to 0.44.0 9 months ago
tamird ade2e2a739 aya-obj, aya-ebpf-bindings: regenerate
libbpf commit: 20ea95b4505c477af3b6ff6ce9d19cee868ddc5d
10 months ago
Tamir Duberstein 8af5f38056 gen: run automatically 10 months ago
Tamir Duberstein 83b791223f gen: remove pointless "update"
libbpf is a submodule, so its version is already effectively pinned.
`xtask codegen` also runs `git submodule update` which reverts the
action of updating to `origin/HEAD`. Remove the cruft.
10 months ago
Tamir Duberstein 76d1b9f46e gen: use peter-evans/create-pull-request@v7
We already use this for the lint job on main.
10 months ago
Tamir Duberstein c8f14b18d4 codegen: tidy up
Move some code out of a loop, where it appears to be nonsense.
10 months ago
Tamir Duberstein 9198335100 codegen: remove outdated workaround
bindgen can handle these macros now.
10 months ago
Tamir Duberstein ed92e7eb66 aya-tool: use write_all 10 months ago
tamird 76ca85c8c3 public-api: regenerate 10 months ago
Tamir Duberstein 942ea51906 Avoid handwritten assembly 10 months ago
Tamir Duberstein 8ea11ef9e8 Remove duplication
Use `BPF_PROG_TYPE_TRACEPOINT` instead of `BPF_PROG_TYPE_SOCKET_FILTER`
as the former seems to work with more feature detection functions.
10 months ago
Tamir Duberstein b010b0f028 Avoid raw slice construction
The safety requirements of this transmutation are simpler.
10 months ago
Tamir Duberstein 94c857261a aya-obj: use generated constants 10 months ago
tamird e82253c915 chore(aya-obj, aya-ebpf-bindings): Regenerate bindings
libbpf commit: d4a841a32b04d69194ab5bdac359a51938a206ce

Files changed:
M	aya-obj/src/generated/linux_bindings_aarch64.rs
M	aya-obj/src/generated/linux_bindings_armv7.rs
M	aya-obj/src/generated/linux_bindings_mips.rs
M	aya-obj/src/generated/linux_bindings_powerpc64.rs
M	aya-obj/src/generated/linux_bindings_riscv64.rs
M	aya-obj/src/generated/linux_bindings_s390x.rs
M	aya-obj/src/generated/linux_bindings_x86_64.rs
M	xtask/public-api/aya-obj.txt
10 months ago
Tamir Duberstein 2319770f5b codegen: generate additional userspace constants 10 months ago
Tamir Duberstein ee7861a6ed codegen: avoid lossy string conversion
This can't possibly work right if lossy conversion is required.
10 months ago
Tyrone Wu 665d4f20bb chore: remove aya_obj -> obj alias
When `aya::obj` was migrated to be its own crate `aya-obj`, the `obj`
alias was created to preserve existing imports that relied on
`crate::obj`.

This resulted in 3 ways to import `aya-obj` objects:
- `use aya_obj::*`
- `use obj::*`
- `use crate::obj::*`

The `obj` alias is now removed to avoid confusion, and all `obj` imports
are funneled through `aya_obj`.
10 months ago
Dave Tucker 67a0595f87
Merge pull request #1159 from dave-tucker/codegen-pr-message
ci: Update codegen PR template
10 months ago
Dave Tucker 921e45747b
Merge pull request #690 from dave-tucker/netlink-errors
aya: Return error messages from netlink
10 months ago
Dave Tucker 39cf6c12f2 feat(aya): Return error messages from netlink
This returns error strings from netlink since they are more informative
than the raw os error. For example:

"Device or Resource Busy" vs. "XDP program already attached".

Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
10 months ago
Dave Tucker 5d27e62b6a ci: Update codegen PR template
Updated to match the commit message

Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
10 months ago
Dave Tucker 0865e08dcf
Merge pull request #1158 from aya-rs/codegen
Update libbpf to d4a841a32b04d69194ab5bdac359a51938a206ce
10 months ago
dave-tucker b686d6a245 chore(aya-obj, aya-ebpf-bindings): Regenerate bindings
libbpf commit: d4a841a32b04d69194ab5bdac359a51938a206ce

Files changed:
M	aya-obj/src/generated/linux_bindings_aarch64.rs
M	aya-obj/src/generated/linux_bindings_armv7.rs
M	aya-obj/src/generated/linux_bindings_mips.rs
M	aya-obj/src/generated/linux_bindings_powerpc64.rs
M	aya-obj/src/generated/linux_bindings_riscv64.rs
M	aya-obj/src/generated/linux_bindings_s390x.rs
M	aya-obj/src/generated/linux_bindings_x86_64.rs
M	xtask/public-api/aya-obj.txt
10 months ago
Dave Tucker 5942fe3702
Merge pull request #1157 from dave-tucker/codegen-improvements
ci: Improve Codegen Workflow
10 months ago
Dave Tucker 34be19a24d ci: Improve Codegen Workflow
1. Bless public-api changes
2. (Hopefully) fix the commit message

Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
10 months ago
Dave Tucker 9ddee3552d
Merge pull request #1156 from dave-tucker/nlmsgerr_attrs
chore(codegen): Add nlmsgerr_attrs
10 months ago
Dave Tucker b16ca6f570 chore(codegen): Add nlmsgerr_attrs
This is required for nicer netlink error messages

Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
10 months ago
Dave Tucker 2f757b2091
Merge pull request #482 from ishanjain28/add_mips_support
Added MIPS bindings
10 months ago
Dave Tucker 2eaae09c31 chore(aya-ebpf-cty): Add mips support
Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
10 months ago
Dave Tucker 1495a93c45 ci: Include mips architecture in tests
Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
10 months ago
Dave Tucker 1ccac3c135 feat(ebpf): Implement FromPtRegs for mips
Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
10 months ago
Ishan Jain 3ff609114e feat(aya): Added MIPS bindings
Updated `aya-obj/src/generated/mod.rs` and
`bpf/aya-bpf-bindings/src/lib.rs to use the mips bindings.
10 months ago
Dave Tucker 66da8742fe
Merge pull request #1155 from aya-rs/codegen
Update libbpf to 324f3c3846d99c8a1e1384a55591f893f0ae5de4
10 months ago
dave-tucker 701a933345 [codegen] Update libbpf to 324f3c3846d99c8a1e1384a55591f893f0ae5de4
Update libbpf to 324f3c3846d99c8a1e1384a55591f893f0ae5de4

Files changed:
M	aya-obj/src/generated/btf_internal_bindings.rs
M	aya-obj/src/generated/linux_bindings_aarch64.rs
M	aya-obj/src/generated/linux_bindings_armv7.rs
A	aya-obj/src/generated/linux_bindings_mips.rs
M	aya-obj/src/generated/linux_bindings_powerpc64.rs
M	aya-obj/src/generated/linux_bindings_riscv64.rs
M	aya-obj/src/generated/linux_bindings_s390x.rs
M	aya-obj/src/generated/linux_bindings_x86_64.rs
M	ebpf/aya-ebpf-bindings/src/aarch64/bindings.rs
M	ebpf/aya-ebpf-bindings/src/armv7/bindings.rs
A	ebpf/aya-ebpf-bindings/src/mips/bindings.rs
A	ebpf/aya-ebpf-bindings/src/mips/helpers.rs
M	ebpf/aya-ebpf-bindings/src/powerpc64/bindings.rs
M	ebpf/aya-ebpf-bindings/src/riscv64/bindings.rs
M	ebpf/aya-ebpf-bindings/src/s390x/bindings.rs
M	ebpf/aya-ebpf-bindings/src/x86_64/bindings.rs
10 months ago
Dave Tucker fdd25cd434
Merge pull request #1154 from dave-tucker/fix-codegen
chore(codegen): Fix duplicate BPF_F_LINK
10 months ago
Dave Tucker d92284e4f8 chore(codegen): Fix duplicate BPF_F_LINK
Per the comment added in the code, there are 2 definitions of
BPF_F_LINK in the kernel headers. Once is in an anonymous enum which
bindgen will constify, and once is via a #define macro. The values are
identical. The fix is to exclude BPF_F_LINK from the list of variables
in bindgen removing one of the duplicate definitions.

Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
10 months ago
Dave Tucker b960fd27b3
Merge pull request #1152 from dave-tucker/codegen-mips
ci: Install libc6-dev-mips-cross for codegen
10 months ago
Dave Tucker 3b41205059 ci: Install libc6-dev-mips-cross for codegen
Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
10 months ago
Dave Tucker fd30e2e809
Merge pull request #1151 from dave-tucker/task-fd-query
chore(xtask): Add bindings for bpf_task_fd_type
10 months ago