[kvm-unit-tests PATCH 3/5] x86: move struct invpcid_desc descriptor to processor.h

Maxim Levitsky
2024-09-07T00:54:49Z

Move struct invpcid_desc descriptor to processor.h so that
it can be used in tests that are external to pcid.c

Signed-off-by: Maxim Levitsky <mlevitsk@redhat.com>
---
lib/x86/processor.h | 7 ++++++-
x86/pcid.c | 6 ------
2 files changed, 6 insertions(+), 7 deletions(-)

diff --git a/lib/x86/processor.h b/lib/x86/processor.h
index 9248a06b2..bb54ec610 100644
--- a/lib/x86/processor.h
+++ b/lib/x86/processor.h
@@ -836,8 +836,13 @@ static inline void invlpg(volatile void *va)
asm volatile("invlpg (%0)" ::"r" (va) : "memory");
}

+struct invpcid_desc {
+ u64 pcid : 12;
+ u64 rsv : 52;
+ u64 addr : 64;
+};

-static inline int invpcid_safe(unsigned long type, void *desc)
+static inline int invpcid_safe(unsigned long type, struct invpcid_desc *desc)
{
/* invpcid (%rax), %rbx */
return asm_safe(".byte 0x66,0x0f,0x38,0x82,0x18", "a" (desc), "b" (type));
diff --git a/x86/pcid.c b/x86/pcid.c
index c503efb83..7425e0fe8 100644
--- a/x86/pcid.c
+++ b/x86/pcid.c
@@ -4,12 +4,6 @@
#include "processor.h"
#include "desc.h"

-struct invpcid_desc {
- u64 pcid : 12;
- u64 rsv : 52;
- u64 addr : 64;
-};
-
static void test_pcid_enabled(void)
{
int passed = 0;
--
2.26.3