aboutsummaryrefslogtreecommitdiffstats
path: root/tools/testing/selftests/kvm/lib/x86_64/svm.c
diff options
context:
space:
mode:
authorPeter Gonda <pgonda@google.com>2021-10-21 10:43:02 -0700
committerPaolo Bonzini <pbonzini@redhat.com>2021-11-11 10:35:27 -0500
commit7a6ab3cf398a11233845ed248aea7141dc9d510d (patch)
tree689df59f99eae02ca2e4e5820b8055b4d0bff993 /tools/testing/selftests/kvm/lib/x86_64/svm.c
parentKVM: SEV: Add support for SEV-ES intra host migration (diff)
downloadlinux-dev-7a6ab3cf398a11233845ed248aea7141dc9d510d.tar.xz
linux-dev-7a6ab3cf398a11233845ed248aea7141dc9d510d.zip
selftest: KVM: Add open sev dev helper
Refactors out open path support from open_kvm_dev_path_or_exit() and adds new helper for SEV device path. Signed-off-by: Peter Gonda <pgonda@google.com> Suggested-by: Sean Christopherson <seanjc@google.com> Cc: Marc Orr <marcorr@google.com> Cc: Sean Christopherson <seanjc@google.com> Cc: David Rientjes <rientjes@google.com> Cc: Brijesh Singh <brijesh.singh@amd.com> Cc: Tom Lendacky <thomas.lendacky@amd.com> Cc: Paolo Bonzini <pbonzini@redhat.com> Cc: kvm@vger.kernel.org Cc: linux-kernel@vger.kernel.org Message-Id: <20211021174303.385706-5-pgonda@google.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'tools/testing/selftests/kvm/lib/x86_64/svm.c')
-rw-r--r--tools/testing/selftests/kvm/lib/x86_64/svm.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/tools/testing/selftests/kvm/lib/x86_64/svm.c b/tools/testing/selftests/kvm/lib/x86_64/svm.c
index 161eba7cd128..0ebc03ce079c 100644
--- a/tools/testing/selftests/kvm/lib/x86_64/svm.c
+++ b/tools/testing/selftests/kvm/lib/x86_64/svm.c
@@ -13,6 +13,8 @@
#include "processor.h"
#include "svm_util.h"
+#define SEV_DEV_PATH "/dev/sev"
+
struct gpr64_regs guest_regs;
u64 rflags;
@@ -172,3 +174,14 @@ void nested_svm_check_supported(void)
exit(KSFT_SKIP);
}
}
+
+/*
+ * Open SEV_DEV_PATH if available, otherwise exit the entire program.
+ *
+ * Return:
+ * The opened file descriptor of /dev/sev.
+ */
+int open_sev_dev_path_or_exit(void)
+{
+ return open_path_or_exit(SEV_DEV_PATH, 0);
+}