Kernel Recipes 2019 - ftrace: Where modifying a running kernel all started
Ftrace’s most powerful feature is the function tracer (and function graph tracer which is built from it). But to have this enabled on production systems, it had to have its overhead be negligible when disabled. As the function tracer uses gcc’s profiling mechanism, which adds a call to “mcount” (or more recently fentry, don’t worry if you don’t know what this is, it will all be explained) at the start of almost all functions, it had to do something about the overhead that causes. The solution was to turn those calls into “nops” (an instruction that the CPU simply ignores). But this was no easy feat. It took a lot to come up with a solution (and also turning a few network cards into bricks). This talk will explain the history of how ftrace came about implementing the function tracer, and brought with it the possibility of static branches and soon static calls!
Steven Rostedt
Видео Kernel Recipes 2019 - ftrace: Where modifying a running kernel all started канала hupstream
Steven Rostedt
Видео Kernel Recipes 2019 - ftrace: Where modifying a running kernel all started канала hupstream
Показать
Комментарии отсутствуют
Информация о видео
Другие видео канала
Steven Rostedt - Learning the Linux Kernel with tracingKernel Recipes 2019 - Faster IO through io_uringKernel Recipes 2019 - CVEs are dead, long live the CVE!OCI, CRI, ??: Making Sense of the Container Runtime Landscape in Kubernetes - Phil Estes, IBMKernel Recipes 2019 - Kernel hacking behind closed doorsArguing with Linus Torvalds - Steven RostedtKernel Recipes 2017 - Understanding the Linux Kernel via Ftrace - Steven RostedtKernel Recipes 2019 - BPF at FacebookKernel Recipes 2016 - Who needs a Real-Time Operating System (Not You!) - Steven RostedtReal Time is Coming to Linux; What Does that Mean to You? - Steven Rostedt, VMwareUSENIX ATC '17: Performance Superpowers with Enhanced BPFKernel Recipes 2019 - The ubiquity but also the necessity of eBPF as a technology...Kernel Recipes 2017 - An introduction to the Linux DRM subsystem - Maxime RipardKernel Recipes 2019 - RCU in 2019Strace: Monitoring The Kernel-User-Space Conversation - Michael KerriskKernel Developer Workspaces: Linaro's Mark Brown - Travel EditionKernel Recipes 2019 - GNU poke, an extensible editor for structured binary dataCS 134 OS—22: RCU—IntroKernel Security Is Cool AgainsambaXP 2021: Samba Multichannel/io_uring Status Update