[V3 00/11] KVM: selftests: Add simple SEV test
From: Peter Gonda
Date: Wed Aug 10 2022 - 11:20:51 EST
This patch series combines the work Michael Roth has done in supporting
SEV guests in selftests and the work Sean Christopherson suggested to
allow ucalls from SEV guests. And the work Sean has sent to consolidate
the ucall boilerplate code. Along with a very simple version of the
SEV selftests Michael originally proposed.
V3
* Addressed more of andrew.jones@ in ucall patches.
* Fix build in non-x86 archs.
V2
* Dropped RFC tag
* Correctly separated Sean's ucall patches into 2 as originally
intended.
* Addressed andrew.jones@ in ucall patches.
* Fixed ucall pool usage to work for other archs
V1
* https://lore.kernel.org/all/20220715192956.1873315-1-pgonda@xxxxxxxxxx/
Michael Roth (6):
KVM: selftests: move vm_phy_pages_alloc() earlier in file
KVM: selftests: sparsebit: add const where appropriate
KVM: selftests: add hooks for managing encrypted guest memory
KVM: selftests: handle encryption bits in page tables
KVM: selftests: add support for encrypted vm_vaddr_* allocations
KVM: selftests: add library for creating/interacting with SEV guests
Peter Gonda (3):
tools: Add atomic_test_and_set_bit()
KVM: selftests: Add ucall pool based implementation
KVM: selftests: Add simple sev vm testing
Sean Christopherson (2):
KVM: selftests: Consolidate common code for popuplating
KVM: selftests: Consolidate boilerplate code in get_ucall()
tools/arch/x86/include/asm/atomic.h | 7 +
tools/include/asm-generic/atomic-gcc.h | 15 +
tools/testing/selftests/kvm/.gitignore | 1 +
tools/testing/selftests/kvm/Makefile | 3 +
.../selftests/kvm/include/kvm_util_base.h | 25 ++
.../testing/selftests/kvm/include/sparsebit.h | 36 +--
.../selftests/kvm/include/ucall_common.h | 14 +-
.../selftests/kvm/include/x86_64/sev.h | 47 +++
.../testing/selftests/kvm/lib/aarch64/ucall.c | 38 +--
tools/testing/selftests/kvm/lib/kvm_util.c | 267 +++++++++++++-----
tools/testing/selftests/kvm/lib/riscv/ucall.c | 43 +--
tools/testing/selftests/kvm/lib/s390x/ucall.c | 40 +--
tools/testing/selftests/kvm/lib/sparsebit.c | 48 ++--
.../testing/selftests/kvm/lib/ucall_common.c | 139 +++++++++
.../selftests/kvm/lib/x86_64/processor.c | 15 +-
tools/testing/selftests/kvm/lib/x86_64/sev.c | 249 ++++++++++++++++
.../testing/selftests/kvm/lib/x86_64/ucall.c | 39 +--
.../selftests/kvm/x86_64/sev_all_boot_test.c | 131 +++++++++
18 files changed, 911 insertions(+), 246 deletions(-)
create mode 100644 tools/testing/selftests/kvm/include/x86_64/sev.h
create mode 100644 tools/testing/selftests/kvm/lib/ucall_common.c
create mode 100644 tools/testing/selftests/kvm/lib/x86_64/sev.c
create mode 100644 tools/testing/selftests/kvm/x86_64/sev_all_boot_test.c
--
2.37.1.559.g78731f0fdb-goog