Real-time Scheduling Fault Simulation
summary
A practical survey of ways to inject scheduling faults into Linux shows concrete experiments with strace error injection, the kernel fault-injection framework, eBPF/BPFTrace and Kprobes; strace can force syscall failures but breaks on forks, the fault-injection fs lacks scheduler hooks, BPFTrace can override syscalls via BPFTrace kprobe override but cannot sleep and hits verifier limits, and Kprobes risk locking and recursion issues. The scheduler core (schedule/pick_next_task) is not exported so reliable early/late wake manipulations require kernel patches; work-in-progress tooling and examples exist but no production-ready injector yet.
AI-written summary · about
chapters (13)
- 0:00Real-time scheduling simulation
- 1:50Linux real-time scheduling history
- 3:13Linux real-time scheduling classes
- 7:07Disrupting real-time scheduling
- 8:54User-space fault injection
- 11:22Kernel fault injection framework
- 13:35eBPF for scheduling disruption
- 18:15Disrupting at scheduling points
- 21:13Linux scheduler deep dive
- 25:15Kernel patching challenges
- 29:31Scheduler disruption challenges
- 30:56Future work and next steps
- 33:05Q&A
related talks
30mScheduling at Scale: eBPF Schedulers with Sched_ext
18mScheduler Tracing With ftrace + eBPF
31mMaximizing Error Injection Realism with System Calls
44mDeep Analysis of Exploitable Linux Kernel Vulnerabilities 2017-2019
59mProposing a new tracer to monitor RT task behavior
49mDebugging Methodologies for Realtime Issues in Linux Systems
44mGetting Around to It: Deferred Work in the Linux Kernel
33mLinux Kernel Live Patching
