You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
aya/test/integration-ebpf/src
Friday Ortiz ab38afe95d
perf_event: support hardware breakpoints
Implement `PerfEventConfig::Breakpoint`, allowing users to attach
hardware breakpoints. Generate `HW_BREAKPOINT_*` and `struct
bpf_perf_event_data` in support of this feature and update the type of
`PerfEventContext` accordingly.

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
mount `System.map` in initramfs. This is needed (at least) on the aarch
6.1 Debian kernel which was not compiled with `CONFIG_KALLSYMS_ALL=y`
for 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. The `System.map` file 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 using `gunzip` which appears
in kallsyms on all Debian kernels tested.

Co-authored-by: Tamir Duberstein <tamird@gmail.com>
1 month ago
..
array.rs lint all crates; enable strict pointer lints 3 months ago
bpf_probe_read.rs lint all crates; enable strict pointer lints 3 months ago
lib.rs lint all crates; enable strict pointer lints 3 months ago
linear_data_structures.rs lint all crates; enable strict pointer lints 3 months ago
log.rs Add clippy coverage for doctests 1 month ago
map_test.rs feat: add `Ebpf::maps_disjoint_mut` 1 month ago
memmove_test.rs aya-ebpf: Make use of `Borrow` and `BorrowMut` in map methods 2 months ago
name_test.rs lint all crates; enable strict pointer lints 3 months ago
pass.rs lint all crates; enable strict pointer lints 3 months ago
perf_event_bp.rs perf_event: support hardware breakpoints 1 month ago
raw_tracepoint.rs aya-ebpf: reduce repetition and excessive traits 2 months ago
redirect.rs lint all crates; enable strict pointer lints 3 months ago
relocations.rs lint all crates; enable strict pointer lints 3 months ago
ring_buf.rs all: bump MSRV to 1.87.0 1 month ago
simple_prog.rs lint all crates; enable strict pointer lints 3 months ago
sk_storage.rs lints: enable clippy::as_underscore 2 months ago
strncmp.rs lint all crates; enable strict pointer lints 3 months ago
tcx.rs lint all crates; enable strict pointer lints 3 months ago
test.rs lsm: cgroup attachment type support 2 months ago
two_progs.rs lint all crates; enable strict pointer lints 3 months ago
uprobe_cookie.rs integration-ebpf: avoid mentioning the size 2 months ago
xdp_sec.rs lint all crates; enable strict pointer lints 3 months ago