[v3 PATCH 0/2] KVM: guest_memfd: use write for population

From: Nikita Kalyazin
Date: Mon Mar 03 2025 - 08:08:57 EST


This series is rebased on top of Fuad's v4 for shared mapping of
guest_memfd [1].

Change since v2 [2]:
- David/Mike D: Only compile support for the write syscall if
CONFIG_KVM_GMEM_SHARED_MEM introduced in [1] is enabled.

In non-CoCo use cases where the host can access guest memory,
guest_memfd can be allocated and populated via the write syscall. Even
though the same can also be achieved via userspace mapping and memcpy
from userspace, write provides a more performant option because it 1)
avoids double initialisation as the kernel does not need to zero pages
and 2) does not require setting up page tables.

Nikita

[1] https://lore.kernel.org/kvm/20250218172500.807733-4-tabba@xxxxxxxxxx/T/
[2] https://lore.kernel.org/kvm/20241129123929.64790-1-kalyazin@xxxxxxxxxx/T/

Nikita Kalyazin (2):
KVM: guest_memfd: add generic population via write
KVM: selftests: update guest_memfd write tests

.../testing/selftests/kvm/guest_memfd_test.c | 85 +++++++++++++++--
virt/kvm/guest_memfd.c | 94 ++++++++++++++++++-
2 files changed, 170 insertions(+), 9 deletions(-)


base-commit: 005f6404708d430abab7fab9b422d0daf6e0c2fe
--
2.47.1