]> www.infradead.org Git - nvme.git/commit
KVM: guest_memfd: make kvm_gmem_prepare_folio() operate on a single struct kvm
authorPaolo Bonzini <pbonzini@redhat.com>
Thu, 11 Jul 2024 22:27:50 +0000 (18:27 -0400)
committerPaolo Bonzini <pbonzini@redhat.com>
Fri, 26 Jul 2024 18:46:14 +0000 (14:46 -0400)
commit6dd761d92f6600342860c618639489bb9c3843ea
tree50dadfdb33a1a82d2b7f28181e7656b24b930a57
parentb85524314a3db687a87b190fd878aa1206b94b52
KVM: guest_memfd: make kvm_gmem_prepare_folio() operate on a single struct kvm

This is now possible because preparation is done by kvm_gmem_get_pfn()
instead of fallocate().  In practice this is not a limitation, because
even though guest_memfd can be bound to multiple struct kvm, for
hardware implementations of confidential computing only one guest
(identified by an ASID on SEV-SNP, or an HKID on TDX) will be able
to access it.

In the case of intra-host migration (not implemented yet for SEV-SNP,
but we can use SEV-ES as an idea of how it will work), the new struct
kvm inherits the same ASID and preparation need not be repeated.

Reviewed-by: Michael Roth <michael.roth@amd.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
virt/kvm/guest_memfd.c