Tracing Linux kernel internals easily and ergonomically with retsnoop tool.
Real-world examples and deep dives into stack trace, function call trace, and
LBR (Last Branch Record) modes and how they could be used to solve real-world
problems.
The road to libbpf 1.0 was long, but we've finally arrived!
What's new in libbpf 1.0. Main breaking changes.
New and exciting features. And great lengths libbpf
goes to to ensure best user experience when dealing with
a complicated world of BPF.
The guide to using bpf_trace_printk() and bpf_printk() for debugging BPF
applications and logging extra information from BPF side to user-space. Tips
and tricks on how to use BPF CO-RE to perform feature detection and accommodate
kernel version differences in bpf_trace_printk() behavior.
Get started with your own BPF application quickly and painlessly with
libbpf-bootstrap scaffolding, which takes care of all the mundane setup steps
and lets you dive right into BPF fun and minimize the necessary boilerplate.
We'll take a look at what libbpf-bootstrap provides and how everything is tied
together.
BPF ring buffer (ringbuf) and how it is similar and different from BPF perf
buffer. BPF ringbuf's APIs, performance and usability advantages. With
examples of source code.
Why most BPF applications have to be portable across multiple Linux kernels
and how BPF CO-RE (Compile Once – Run Everywhere) technology makes that
possible and easy.
Description of BTF deduplication algorithm, which enables compact BTF type
information in Linux kernel. It enabled BPF CO-RE (Compile Once – Run
Everywhere), building modern portable BPF applications and many modern and
powerful BPF features in Linux kernel.