Panic Attack

The crash/panic path and all its related machinery were always subject to polemics; it’s an area naturally full of trade-offs, conflicting views and antagonistic goals. From one side we have kdump (also called crash_kexec), that requires a minimum touching before the...

Resource control in production at Meta

Control groups (or cgroups for short) are one of the most fundamental technologies underpinning our modern love of containerisation and resource control. Back in 2016, we released a complete overhaul of how cgroups work internally: cgroup v2, released with Linux 4.5....

sched_ext: pluggable scheduling in the Linux kernel

Scheduling is a notoriously difficult problem. An effective scheduler should fully utilize a system, while also optimizing for cache locality, while also accounting for real time constraints, while also accounting for battery life and power management, while also...

stress-ng: finding kernel bugs through stress testing

Stress-ng is a tool that stress tests kernels using deliberately intense testing to shake out various kernel (and hardware) bugs. This talk describes the different stress test methods available in stress-ng, typical kernel test coverage and the future direction of the...

A unique way to maintain a Linux kernel subsystem

Steven Rostedt maintains the tracing subsystem of the Linux kernel. He has a unique workflow that incorporates several tools. He uses quilt on top of git to keep track of changes as well as a way to resolve conflicts when importing patches. Steven doesn’t type “make;...