aya/xtask/public-api
Andrew Werner e2cf734490 aya: Implement RingBuf
This implements the userspace binding for RingBuf.

Instead of streaming the samples as heap buffers, the process_ring
function takes a callback to which we pass the event's byte region,
roughly following [libbpf]'s API design. This avoids a copy and allows
marking the consumer pointer in a timely manner.

[libbpf]: https://github.com/libbpf/libbpf/blob/master/src/ringbuf.c

Additionally, integration tests are added to demonstrate the usage
of the new APIs and to ensure that they work end-to-end.

Co-authored-by: William Findlay <william@williamfindlay.com>
Co-authored-by: Tatsuyuki Ishi <ishitatsuyuki@gmail.com>
..
aya-bpf-bindings.txt xtask: Add cargo-public-api
aya-bpf-cty.txt xtask: Add cargo-public-api
aya-bpf-macros.txt xtask: Add cargo-public-api
aya-bpf.txt aya: Implement RingBuf
aya-log-common.txt aya-log: s/Result<usize, ()>/Option<NonZeroUsize>/
aya-log-ebpf-macros.txt xtask: Add cargo-public-api
aya-log-ebpf.txt xtask: Add cargo-public-api
aya-log-parser.txt xtask: Add cargo-public-api
aya-log.txt xtask: bless API with new nightly
aya-obj.txt xtask: bless public-api
aya-tool.txt xtask: bless API with new nightly
aya.txt aya: Implement RingBuf