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@xxxxxxxxxx> --- 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