Messages in this thread Patch in this message | | | Subject | Re: [RFC v2-fix-v3 1/1] x86/tdx: Skip WBINVD instruction for TDX guest | From | "Kuppuswamy, Sathyanarayanan" <> | Date | Tue, 8 Jun 2021 17:14:27 -0700 |
| |
On 6/8/21 5:07 PM, Dan Williams wrote: > That works too, but I assume if ACPI_FLUSH_CPU_CACHE() itself is going > to be changed rather than sprinkling protected_guest_has() checks in a > few places it will need to assert why changing all of those at once is > correct. Otherwise I expect Rafael to ask why this global change of > the ACPI_FLUSH_CPU_CACHE() policy is ok.
Yes. I am fixing it as below.
--- a/arch/x86/include/asm/acenv.h +++ b/arch/x86/include/asm/acenv.h @@ -10,10 +10,15 @@ #define _ASM_X86_ACENV_H
#include <asm/special_insns.h> +#include <asm/protected_guest.h>
/* Asm macros */
-#define ACPI_FLUSH_CPU_CACHE() wbinvd() +#define ACPI_FLUSH_CPU_CACHE() \ +do { \ + if (!prot_guest_has(PR_GUEST_DISABLE_WBINVD)) \ + wbinvd(); \ +} while (0)
-- Sathyanarayanan Kuppuswamy Linux Kernel Developer
| |