Supporting guest private memory in Protected KVM on Android
summary
Port of the proposed guest memory API to pKVM on Arm64 implements guest private memory as a FD-like interface and a kernel-only no-map attribute updated on hypervisor exits so the host never maps pages marked private. It leverages pKVM’s lack of encryption to do in-place sharing (no bounce copies), adds a three-state tracking model and a handshake on unshare where the host must unmap or acknowledge; prototype works for share-only workloads and unshare is exercised only by synthetic tests.
AI-written summary · about
chapters (11)
- 0:00Introduction
- 1:04Background on PKVM
- 3:13Guest memory challenges
- 6:04Key differences in PKVM
- 8:16Use case for DRM
- 11:28Problem statement
- 12:31State tracking solution
- 14:57Transition protocols
- 17:25Mapping and validation
- 19:14Testing and future work
- 20:15Q&A
related talks
22mPreserving guest memory across kexec
38mPanel Discussion: KVM-based Virtualization Contributor Q&A
11mAdvanced Parallel Memory Virtualization
38mKernel Hardening: Protecting the Protection Mechanisms
50mPanel Discussion: KVM-based Virtualization Contributor Q&A
37mHardware Error Handling Improvement for Reliable KVM Hypervisor
34mA New Proposal for Protecting Kernel Data Memory
26mCooperative DMA in a memory-oversubscribed environment
