public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 0/8] Basic SEV-SNP Selftests
@ 2024-11-14 23:40 Pratik R. Sampat
  2024-11-14 23:40 ` [PATCH v4 1/8] KVM: SEV: Disable SEV-SNP on FW validation failure Pratik R. Sampat
                   ` (9 more replies)
  0 siblings, 10 replies; 21+ messages in thread
From: Pratik R. Sampat @ 2024-11-14 23:40 UTC (permalink / raw)
  To: kvm
  Cc: seanjc, pbonzini, pgonda, thomas.lendacky, michael.roth, shuah,
	linux-kselftest, linux-kernel, sos-linux-ext-patches,
	pratikrajesh.sampat

This patch series extends the sev_init2 and the sev_smoke test to
exercise the SEV-SNP VM launch workflow.

Primarily, it introduces the architectural defines, its support in the SEV
library and extends the tests to interact with the SEV-SNP ioctl()
wrappers.

Patch 1 - Do not advertize SNP on incompatible firmware
Patch 2 - SNP test for KVM_SEV_INIT2
Patch 3 - Add VMGEXIT helper
Patch 4 - Introduce SEV+ VM type check
Patch 5 - SNP iotcl() plumbing for the SEV library
Patch 6 - Force set GUEST_MEMFD for SNP
Patch 7 - Cleanups of smoke test - Decouple policy from type
Patch 8 - SNP smoke test

v4:
1. Remove SNP FW API version check in the test and ensure the KVM
   capability advertizes the presence of the feature. Retain the minimum
   version definitions to exercise these API versions in the smoke test.
2. Retained only the SNP smoke test and SNP_INIT2 test
3. The SNP architectural defined merged with SNP_INIT2 test patch
4. SNP shutdown merged with SNP smoke test patch
5. Add SEV VM type check to abstract comparisons and reduce clutter
6. Define a SNP default policy which sets bits based on the presence of
   SMT
7. Decouple privatization and encryption for it to be SNP agnostic
8. Assert for only positive tests using vm_ioctl()
9. Dropped tested-by tags

In summary - based on comments from Sean, I have primarily reduced the
scope of this patch series to focus on breaking down the SNP smoke test
patch (v3 - patch2) to first introduce SEV-SNP support and use this
interface to extend the sev_init2 and the sev_smoke test.

The rest of the v3 patchset that introduces ioctl, pre fault, fallocate
and negative tests, will be re-worked and re-introduced subsequently in
future patch series post addressing the issues discussed.

v3:
https://lore.kernel.org/kvm/20240905124107.6954-1-pratikrajesh.sampat@amd.com/
1. Remove the assignments for the prefault and fallocate test type
   enums.
2. Fix error message for sev launch measure and finish.
3. Collect tested-by tags [Peter, Srikanth]

Any feedback/review is highly appreciated!

Pratik R. Sampat (8):
  KVM: SEV: Disable SEV-SNP on FW validation failure
  KVM: selftests: SEV-SNP test for KVM_SEV_INIT2
  KVM: selftests: Add VMGEXIT helper
  KVM: selftests: Introduce SEV VM type check
  KVM: selftests: Add library support for interacting with SNP
  KVM: selftests: Force GUEST_MEMFD flag for SNP VM type
  KVM: selftests: Abstractions for SEV to decouple policy from type
  KVM: selftests: Add a basic SEV-SNP smoke test

 arch/x86/kvm/svm/sev.c                        |  4 +-
 drivers/crypto/ccp/sev-dev.c                  |  6 ++
 include/linux/psp-sev.h                       |  3 +
 .../selftests/kvm/include/x86_64/processor.h  |  1 +
 .../selftests/kvm/include/x86_64/sev.h        | 55 ++++++++++-
 tools/testing/selftests/kvm/lib/kvm_util.c    |  7 +-
 .../selftests/kvm/lib/x86_64/processor.c      |  4 +-
 tools/testing/selftests/kvm/lib/x86_64/sev.c  | 98 ++++++++++++++++++-
 .../selftests/kvm/x86_64/sev_init2_tests.c    | 13 +++
 .../selftests/kvm/x86_64/sev_smoke_test.c     | 96 ++++++++++++++----
 10 files changed, 258 insertions(+), 29 deletions(-)

-- 
2.43.0


^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2025-01-13 20:10 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-11-14 23:40 [PATCH v4 0/8] Basic SEV-SNP Selftests Pratik R. Sampat
2024-11-14 23:40 ` [PATCH v4 1/8] KVM: SEV: Disable SEV-SNP on FW validation failure Pratik R. Sampat
2025-01-10  5:21   ` [sos-linux-ext-patches] " Nikunj A. Dadhania
2025-01-10 21:50     ` Pratik Rajesh Sampat
2025-01-13  4:10       ` Nikunj A. Dadhania
2024-11-14 23:40 ` [PATCH v4 2/8] KVM: selftests: SEV-SNP test for KVM_SEV_INIT2 Pratik R. Sampat
2025-01-10  5:52   ` [sos-linux-ext-patches] " Nikunj A. Dadhania
2025-01-10  6:07     ` Nikunj A. Dadhania
2025-01-10 21:55     ` Pratik Rajesh Sampat
2024-11-14 23:40 ` [PATCH v4 3/8] KVM: selftests: Add VMGEXIT helper Pratik R. Sampat
2024-11-14 23:41 ` [PATCH v4 4/8] KVM: selftests: Introduce SEV VM type check Pratik R. Sampat
2025-01-13  8:18   ` Nikunj A. Dadhania
2025-01-13 20:10     ` Pratik Rajesh Sampat
2024-11-14 23:41 ` [PATCH v4 5/8] KVM: selftests: Add library support for interacting with SNP Pratik R. Sampat
2025-01-13  8:32   ` Nikunj A. Dadhania
2025-01-13 20:10     ` Pratik Rajesh Sampat
2024-11-14 23:41 ` [PATCH v4 6/8] KVM: selftests: Force GUEST_MEMFD flag for SNP VM type Pratik R. Sampat
2024-11-14 23:41 ` [PATCH v4 7/8] KVM: selftests: Abstractions for SEV to decouple policy from type Pratik R. Sampat
2024-11-14 23:41 ` [PATCH v4 8/8] KVM: selftests: Add a basic SEV-SNP smoke test Pratik R. Sampat
2024-11-15  6:15 ` [PATCH v4 0/8] Basic SEV-SNP Selftests Aithal, Srikanth
2025-01-07 15:32 ` Pratik Rajesh Sampat

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox