Long Live Asynchronous Page Fault!
summary
KVM implements an asynchronous page fault protocol that tags missing pages with a CR2 token and a shared APF reason; page‑ready used to be delivered as a pagefault but is now sent as an interrupt and acknowledged by the guest (landed across Linux 5.8/Linux 5.9). An NMI can clobber CR2 and break APF; DAX file truncation can cause an infinite sync‑fault loop. Proposed fixes include reporting errors to the guest, using a machine check exception, using Intel virtualization exceptions, or handling leases at the file server.
AI-written summary · about
chapters (4)
- 0:00Start
- 7:48Example of a faulty scenario
- 16:24KVM async page fault error handling
- 18:48Various Proposals
related talks
37mHardware Error Handling Improvement for Reliable KVM Hypervisor
27mMitigating speculative execution attacks with ASI - follow up
36mShared Virtual Addressing for High Performance Arm Infrastructure Platforms
22mPreserving guest memory across kexec
43mpkernfs: Persisting guest memory and kernel/device state safely...
26mCooperative DMA in a memory-oversubscribed environment
19mIdentifying and Eliminating Contention from Booting Concurrent SNP VMs
45mDynamic vCPU priority boosting in KVM for latency sensitive workloads
