Speaker
Description
In the Linux kernel the Static Keys feature allows the inclusion of seldom used features in the fast-path code via the 'asm goto' compiler feature and code live-patching techniques. When disabled, a static key incurs zero overhead.
While looking into ways to extend functionality of the pwru [1] utility to trace networking events it became clear that a similar Static Keys feature would be a good addition to the BPF stack. A draft sketch of the BPF Static Keys API was introduced at the LSF/MM/BPF 2023 conference [2].
In this talk a complete BPF Static Keys API will be demonstrated together with examples of usage from C and Go programs, including an example of full introspection of the Linux + Cilium networking stack [3].
[1] https://github.com/cilium/pwru
[2] http://vger.kernel.org/bpfconf2023_material/anton-protopopov-lsf-mm-bpf-2023.pdf
[3] https://cilium.io/