Isolation aware smp_call_function/queue_work_on APIs
summary
Proposal introduces a new CPU mask block_interference_cpu_mask and fail variants of smp_call_function/queue_work_on-style APIs that return -EIO when a target CPU is marked, so user-triggered IPI paths (clock device binds, perf_event attach, MSI writes, some GPU init paths) can be converted to fail instead of interrupting isolated CPUs. Mask is writable from user space after init (needs a safe place like cpuset), conversion covers ~30% of sites so far, it reduces but does not eliminate interference, and diagnostic hooks like a tracepoint/BPF probe are recommended.
AI-written summary · about
chapters (7)
- 0:00Introduction to CPU isolation
- 2:27Proposed interference blocking API
- 12:19Real-world use cases and examples
- 20:12Handling user space failures gracefully
- 25:12Selective interference blocking
- 27:19Debugging and tracing tools
- 31:13Q&A and closing remarks
related talks
23mCPU Isolation state of the art
32mA mechanism to isolate CPU topology information in the Linux kernel -- CPU Namespace
42mProtecting the Linux Kernel from Confidential Computing Threats in Virtual Environments
43mAddress Space Isolation for Enhanced Safety of the Linux Kernel
26mReinventing Seccomp for Fun and Profiles
50mMPK/PKS Linux Kernel Compartmentalization
34mA Journey into Linux Interrupt Handling Bottom Halves
55mSecure IO BoF
