Mary
3aeeb8167b
aya: Correctly set the kernel code version for Debian kernel
...
Fix BPF syscall failure related to the kernel code version.
2 years ago
Mary
f1d891836e
aya: Correctly set the kernel code version for Ubuntu kernel
...
Fix BPF syscall failure related to the kernel code version.
2 years ago
Alessandro Decina
b5c2928b0e
Merge pull request #582 from marysaka/feature/no-kern-read-sanitizer
...
aya: Add sanitize code for kernels without bpf_probe_read_kernel
2 years ago
Mary
1132b6e01b
aya: Add sanitize code for kernels without bpf_probe_read_kernel
...
Required for kernel before 5.5.
Also move Features to aya-obj.
2 years ago
Alessandro Decina
edd9928314
Merge pull request #580 from marysaka/fix/bpf_create_map_panic
...
aya: Do not use unwrap with btf_fd in bpf_create_map
2 years ago
Alessandro Decina
858f77bf2c
Merge pull request #581 from marysaka/fix/datasec-struct-conversion
...
aya-obj: fix DATASEC to STRUCT conversion
2 years ago
Mary
4e33fa011e
aya-obj: fix DATASEC to STRUCT conversion
...
This fix the following issues:
- Previously the DATASEC name wasn't sanitized resulting on "Invalid
name" returned by old kernels.
- The newly created BTF struct had a size of 0 making old kernels refuse
it.
This was tested on Debian 10 with kernel 4.19.0-21.
2 years ago
Mary
7c25fe90a9
aya: Do not use unwrap with btf_fd in bpf_create_map
...
Fixes a crash when trying to create a map of type BPF_MAP_TYPE_PERCPU_ARRAY when btf_fd is None.
Tested on Ubuntu 18.04 (4.15.0-202-generic)
2 years ago
Alessandro Decina
542ada3fe7
Merge pull request #572 from alessandrod/reloc-fixes
...
Add tests for relocations + fixes
2 years ago
Alessandro Decina
3a8380df26
integration-test: expand full path for IntegrationTest
2 years ago
Alessandro Decina
93ac3e94bc
aya: support relocations across multiple text sections + fixes
...
Fix R_BPF_64_64 text relocations in sections other than .text (for
instance .text.unlikely). Also fix misc bugs triggered by integration
tests.
2 years ago
Alessandro Decina
b2b9bd2edf
integration tests: add relocation tests
2 years ago
Alessandro Decina
b25a089819
aya-obj: change two drain() calls to into_iter()
2 years ago
Alessandro Decina
401ea5e848
aya, aya-obj: refactor map relocations
...
Clearly split the code between `.maps`, `maps` and data maps (bss, data,
rodata). Sprinkle comments.
Remove MapKind which was effectively only needed since we used to have
one variant - BpfSectionKind::Data - to represent all data maps. Instead
add explicit BpfSectionKind::{Data, Rodata, Bss} variants and match on
those when we initialize maps.
2 years ago
Alessandro Decina
5c4f1d69a6
aya-obj: rework `maps` section parsing
...
Avoid allocations and add comments explaining how things work.
2 years ago
Alessandro Decina
bc8f4ef1c8
integration-tests: rename relocations to btf_relocations
...
In preparation of adding actual ELF relocation tests
2 years ago
Alessandro Decina
23ce42da68
Merge pull request #573 from vadorovsky/integration-release
...
integration-tests: Build eBPF programs always with release profile
2 years ago
Michal Rostecki
ed9c2a1780
integration-tests: Build eBPF programs always with release profile
...
Also, add the `codegen-unit` option to the profile.
2 years ago
vadorovsky
fcc8a0d50d
Merge pull request #570 from aya-rs/dependabot/cargo/num_enum-0.6
...
build(deps): update num_enum requirement from 0.5 to 0.6
2 years ago
dependabot[bot]
b10a31183b
build(deps): update num_enum requirement from 0.5 to 0.6
...
Updates the requirements on [num_enum](https://github.com/illicitonion/num_enum ) to permit the latest version.
- [Release notes](https://github.com/illicitonion/num_enum/releases )
- [Commits](https://github.com/illicitonion/num_enum/compare/0.5.0...0.6.0 )
---
updated-dependencies:
- dependency-name: num_enum
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
2 years ago
Alessandro Decina
04f4841ede
Merge pull request #567 from Tuetuopay/tests-fedora-38
...
tests: use fedora 38 beta with testing repo
2 years ago
Tuetuopay
3655cd1e02
tests: use fedora 38 beta with testing repo
...
Now that bpf-linker uses llvm 16, the easiest way is to use Fedora 38
Beta with the testing repos as they have it, without resorting to
Rawhide.
See https://packages.fedoraproject.org/pkgs/llvm/llvm/ .
2 years ago
Alessandro Decina
b13070a342
Merge pull request #557 from drewvis/main
...
Add check for empty tracefs mounts
2 years ago
Alessandro Decina
bcb2972a96
aya: make it possible to use set_global() with slices of Pod(s)
2 years ago
drewvis
8f64cf8cd5
Added code check comment
2 years ago
drewvis
3a2c0cd1dd
Add check for empty tracefs mounts
2 years ago
Alessandro Decina
8ef00c4c63
Revert "aya: make it possible to use set_global() with slices of Pod(s)"
...
This reverts commit b614ffd603
.
2 years ago
Alessandro Decina
dfbe1207c1
aya-obj: fix compilation with nightly
2 years ago
Alessandro Decina
b614ffd603
aya: make it possible to use set_global() with slices of Pod(s)
2 years ago
Alessandro Decina
6404108aa9
Merge pull request #554 from 0xrawsec/fix-issue-552
...
fix issue #552
2 years ago
Quentin JEROME
d031ce78bf
fix issue #552
2 years ago
Alessandro Decina
d6319f95c9
Merge pull request #548 from kriomant/feature-xdp-attach-by-index
...
aya: Allow to attach XDP probe by interface index
2 years ago
Mikhail Trishchenkov
ce60854934
Don't leak libc types
2 years ago
Mikhail Trishchenkov
896e3ab313
Fix formatting
2 years ago
Mikhail Trishchenkov
676b5cdc0d
Rename method and fix comment
2 years ago
Mikhail Trishchenkov
2e3c1779be
aya: Allow to attach XDP probe by interface index
2 years ago
Alessandro Decina
113e3ef018
Merge pull request #539 from marysaka/fix/map_data_clone
...
aya: Fix MapData Clone implementation
2 years ago
Mary
94049ec661
aya: Fix MapData Clone implementation
...
The Clone implementation of MapData was previously not storing the
result of the dup operation.
2 years ago
Dave Tucker
8684a5783d
Merge pull request #537 from aya-rs/codegen
...
Update libbpf to a41e6ef3251cba858021b90c33abb9efdb17f575
2 years ago
dave-tucker
24f15ea25f
[codegen] Update libbpf to a41e6ef3251cba858021b90c33abb9efdb17f575Update libbpf to a41e6ef3251cba858021b90c33abb9efdb17f575
...
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
M aya-obj/src/generated/linux_bindings_riscv64.rs
M aya-obj/src/generated/linux_bindings_x86_64.rs
M bpf/aya-bpf-bindings/src/aarch64/bindings.rs
M bpf/aya-bpf-bindings/src/armv7/bindings.rs
M bpf/aya-bpf-bindings/src/riscv64/bindings.rs
M bpf/aya-bpf-bindings/src/x86_64/bindings.rs
2 years ago
vadorovsky
7e4454d061
Merge pull request #532 from Tuetuopay/cpudevmap-bindings
...
xtask: generate userspace bindings for bpf_{cpu,dev}map_val
2 years ago
Tuetuopay
23e7c65244
xtask: generate userspace bindings for bpf_{cpu,dev}map_val
2 years ago
Dave Tucker
d9878a6791
Merge pull request #524 from dave-tucker/prog_list
...
aya: Add loaded_programs() API to list all loaded programs
2 years ago
Dave Tucker
de4905a24b
aya: Add loaded_programs() API to list all loaded programs
...
This uses a Programs iterator to yield all loaded bpf programs using
bpf_prog_get_next_id.
Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
2 years ago
Dave Tucker
56c143831e
Merge pull request #523 from dave-tucker/fix_perf_link
...
aya: Fix is_perf_link_supported
2 years ago
Dave Tucker
ce79de7ff6
aya: Fix is_perf_link_supported
...
This was mistakenly comparing the exit code of the syscall, which is
always -1 and not the corresponding error-code. Added unit tests to
ensure we don't regress.
Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
2 years ago
Alessandro Decina
d7d6442671
Merge pull request #522 from dave-tucker/perf_link
...
Use bpf_link for perf_attach programs (Kprobe/Uprobe/Tracepoint etc...)
2 years ago
Dave Tucker
7479c1dd6c
aya: More discrete feature logging
...
Just use the Debug formatter vs. printing a message for each probe.
Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
2 years ago
Dave Tucker
d0b3d3b2fa
aya: Enable bpf_link for perf_attach programs
...
This adds support for bpf_link to PerfEvent, Tracepoint, Kprobe and
Uprobe programs.
Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
2 years ago
Dave Tucker
763b92a2e0
aya: Add probe for bpf_link_create for perf programs
...
Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
2 years ago