We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Walking native stacks in BPF without frame pointers

Formal Metadata

Title
Walking native stacks in BPF without frame pointers
Title of Series
Number of Parts
542
Author
License
CC Attribution 2.0 Belgium:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Identifiers
Publisher
Release Date
Language

Content Metadata

Subject Area
Genre
Abstract
Implementing profilers and tracers in BPF offers a high degree of flexibility and allows for tools that have lower overhead and can make them suitable for production usage. BPF has a helper to unwind native stacks with frame pointers that works great. Unfortunately, most Linux distros and compilation pipelines omit frame pointers. We've built a BPF program that uses DWARF-unwind information to walk native stacks without frame pointers in BPF. We've integrated it into our continuous profiler project, Parca Agent.