eBPF Talk: introduce tracepoint

想弄清楚 tracepoint 的工作原理,实在太难了;网络上的资料比较少,而且不够深入,甚至是 kernel 文档。 Using the Linux Kernel Tracepoints 本文尝试从源代码的角度来分析 tracepoint 的工作原理。 抛砖引

eBPF Talk: bpf link 简介

bpf link 的引入是为了解决 bpf prog attachment 持久化的问题,并由此引入了 bpf link fd。 bpf: Introduce pinnable bpf_link abstraction since kernel 5.7 在引入了 bpf link 之后,常用的 bpf prog attachment 都实现了对应的 bpf link,比如 TRACING,

eBPF Talk: tracepoint __data_loc

书接上回:eBPF Talk: trace tracepoint 程序,本文将介绍在 bpf 里如何处理 tracepoint 中 __data_loc 描述的字段。 关于 tracepoint __data_loc 的资料超级少,网络上能找到的资料如下: tracepoint arguments are missing __data_loc char strings tracepoint: Support __data_loc fields

eBPF Talk: trace tracepoint 程序

此处指的是 trace tracepoint bpf 程序,而不是 trace tracepoint 事件。 eBPF Talk: trace XDP 程序 eBPF Talk: trace tc-bpf 程序 eBPF Talk: trace bpf2bpf 函数调用 eBPF Talk: trace freplace 程序 eBPF Talk: trace tailcall 程序?NO! eBPF Talk: trace kprobe 程序 eBPF Talk: trace tracepoint 程序 trace tracepoint 程

eBPF Talk: trace kprobe 程序

此处指的是 trace kprobe bpf 程序,而不是 trace kprobe 事件。 eBPF Talk: trace XDP 程序 eBPF Talk: trace tc-bpf 程序 eBPF Talk: trace bpf2bpf 函数调用 eBPF Talk: trace freplace 程序 eBPF Talk: trace tailcall 程序?NO! eBPF Talk: trace kprobe 程序 eBPF Talk: trace tracepoint 程序 trace kprobe 程

eBPF Talk: trace tailcall 程序?NO!

既然可以对 freplace 程序进行 trace,是否可以对 tailcall 程序进行 trace 呢? eBPF Talk: trace XDP 程序 eBPF Talk: trace tc-bpf 程序 eBPF Talk: trace bpf2bpf 函数调用 eBPF Talk: trace freplace 程序 eBPF Talk: trace tailcall 程序?NO! eBPF Talk: trace kprobe 程

eBPF Talk: trace freplace 程序

既然可以对 bpf2bpf 函数调用进行 trace,是否可以对 freplace 程序进行 trace 呢? eBPF Talk: trace XDP 程序 eBPF Talk: trace tc-bpf 程序 eBPF Talk: trace bpf2bpf 函数调用 eBPF Talk: trace freplace 程序 eBPF Talk: trace tailcall 程序?NO! eBPF Talk: trace

eBPF Talk: trace bpf2bpf 函数调用

如 trace XDP/tc-bpf 程序,bpf2bpf 函数调用也是可以被 trace 的。 eBPF Talk: trace XDP 程序 eBPF Talk: trace tc-bpf 程序 eBPF Talk: trace bpf2bpf 函数调用 eBPF Talk: trace freplace 程序 eBPF Talk: trace tailcall 程序?NO! eBPF Talk: trace kprobe 程序 eBPF Talk: trace

eBPF Talk: trace tc-bpf 程序

如 eBPF Talk: trace XDP 程序,使用 bpf 也是能够对 tc-bpf 程序进行 trace 的。 eBPF Talk: trace XDP 程序 eBPF Talk: trace tc-bpf 程序 eBPF Talk: trace bpf2bpf 函数调用 eBPF Talk: trace freplace 程序 eBPF Talk: trace tailcall 程序?NO! eBPF Talk: trace kprobe 程序 eBPF Talk: trace tracepoint