Re: [PATCH 18/22] KVM: SVM: add GMET bit definitions

From: Borislav Petkov

Date: Mon Mar 23 2026 - 08:31:07 EST


On Sat, Mar 21, 2026 at 01:09:27AM +0100, Paolo Bonzini wrote:
> GMET (Guest Mode Execute Trap) is an AMD virtualization feature,
> essentially the nested paging version of SMEP. Hyper-V uses it;
> add it in preparation for making it available to hypervisors
> running under KVM.
>
> Cc: Borislav Petkov (AMD) <bp@xxxxxxxxx>
> Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>
> ---
> arch/x86/include/asm/cpufeatures.h | 1 +
> arch/x86/include/asm/svm.h | 1 +
> 2 files changed, 2 insertions(+)
>
> diff --git a/arch/x86/include/asm/cpufeatures.h b/arch/x86/include/asm/cpufeatures.h
> index 123c023fe42c..95469c7d357f 100644
> --- a/arch/x86/include/asm/cpufeatures.h
> +++ b/arch/x86/include/asm/cpufeatures.h
> @@ -382,6 +382,7 @@
> #define X86_FEATURE_AVIC (15*32+13) /* "avic" Virtual Interrupt Controller */
> #define X86_FEATURE_V_VMSAVE_VMLOAD (15*32+15) /* "v_vmsave_vmload" Virtual VMSAVE VMLOAD */
> #define X86_FEATURE_VGIF (15*32+16) /* "vgif" Virtual GIF */
> +#define X86_FEATURE_GMET (15*32+17) /* "gmet" Guest Mode Execution Trap */

s!"gmet"!!

With that:

Acked-by: Borislav Petkov (AMD) <bp@xxxxxxxxx>

> #define X86_FEATURE_X2AVIC (15*32+18) /* "x2avic" Virtual x2apic */
> #define X86_FEATURE_V_SPEC_CTRL (15*32+20) /* "v_spec_ctrl" Virtual SPEC_CTRL */
> #define X86_FEATURE_VNMI (15*32+25) /* "vnmi" Virtual NMI */
> diff --git a/arch/x86/include/asm/svm.h b/arch/x86/include/asm/svm.h
> index e2a29e1144a7..47353bef947c 100644
> --- a/arch/x86/include/asm/svm.h
> +++ b/arch/x86/include/asm/svm.h
> @@ -239,6 +239,7 @@ struct __attribute__ ((__packed__)) vmcb_control_area {
> #define SVM_NESTED_CTL_NP_ENABLE BIT(0)
> #define SVM_NESTED_CTL_SEV_ENABLE BIT(1)
> #define SVM_NESTED_CTL_SEV_ES_ENABLE BIT(2)
> +#define SVM_NESTED_CTL_GMET_ENABLE BIT(3)
>
>
> #define SVM_TSC_RATIO_RSVD 0xffffff0000000000ULL
> --

Thx.

--
Regards/Gruss,
Boris.

https://people.kernel.org/tglx/notes-about-netiquette