Explore the history and complexities of "struct pt_regs" in this 20-minute conference talk from the Linux Plumbers Conference. Dive into the various uses and abuses of pt_regs across different tracing subsystems, including ptrace, kprobe, ftrace, fprobe, kretprobe, rethook, perf, and eBPF. Gain an overview of how these tracing subsystems interact by exchanging pt_regs structures. Examine the concept of "sparse pt_regs," lightweight register subsets created outside exception entries, and understand their propagation between subsystems and potential subtle issues they may cause.
Overview
Syllabus
pt_regs - the good the bad and the ugly - Florent Revest
Taught by
Linux Plumbers Conference