Unmapped Private Memory for Confidential Guests
summary
Proposes kernel-side infrastructure to back confidential guests with pages that user space cannot access, implemented as a private mem slot in KVM using a memfd back end; nested page faults consult that slot and KVM uses a new KVM exit memory fault (and a vmg exit) so the VMM allocates pages and issues ioctls to flip page state. Demonstrates working conversions, but highlights 2x memory growth risk, a ~3x slowdown for frequent flip patterns, direct‑map splitting, batching and race concerns.
AI-written summary · about
chapters (14)
- 0:00Introduction to UPM
- 1:48Private memory slot structure
- 7:07Pros and cons of UPM
- 11:22Kernel direct map handling
- 13:50Page state change requests
- 15:34Host kernel thread access
- 17:21Q&A and discussion
- 19:50Encrypted disk approaches
- 24:08Grub-based decryption
- 25:15Initrd-based decryption
- 28:03TPM-based approaches
- 30:16Hardware TPM comparison
- 33:07Guest-side decryption layer
- 34:28Open questions and summary
related talks
18mGuest Memory Protection -- Current Status and Future
50mProtected KVM on Arm64: A Technical Deep Dive
07mLightning Talk: Confidential VMs in Kubevirt: Securing VMs With Kube...
16mTaming the Incoherent Cache Issue in Confidential VMs
30mRestricted Address Spaces for Container Security
49mKVM Address Space Isolation
28mConfidential Devices (TEE I/O): A series of modest proposals
28mProviding Confidential Guest Services with a Secure VM Service Module on AMD
