Speaker
Florent Revest
(Google LLC)
Description
We'll first go through the history of "struct pt_regs" uses and abuses. Between ptrace, kprobe, ftrace, fprobe, kretprobe, rethook, perf, ebpf... There will be some ground to cover. This will be an opportunity to give an overview of all the tracing subsystems and how they build on one another by exchanging pt_regs structures.
We'll then spend time discussing "sparse pt_regs". These are structures created outside an exception entry and containing a light subset of registers. We'll discuss how they can propagate from one subsystem to the other and lead to subtle issues.
Primary author
Florent Revest
(Google LLC)