Re: [PATCH v6 8/9] KVM: VMX: Open code VMX preemption timer rate mask in its accessor

From: Zhao Liu
Date: Fri Mar 15 2024 - 11:32:44 EST


On Fri, Mar 08, 2024 at 05:27:24PM -0800, Sean Christopherson wrote:
> Date: Fri, 8 Mar 2024 17:27:24 -0800
> From: Sean Christopherson <seanjc@xxxxxxxxxx>
> Subject: [PATCH v6 8/9] KVM: VMX: Open code VMX preemption timer rate mask
> in its accessor
> X-Mailer: git-send-email 2.44.0.278.ge034bb2e1d-goog
>
> From: Xin Li <xin3.li@xxxxxxxxx>
>
> Use vmx_misc_preemption_timer_rate() to get the rate in hardware_setup(),
> and open code the rate's bitmask in vmx_misc_preemption_timer_rate() so
> that the function looks like all the helpers that grab values from
> VMX_BASIC and VMX_MISC MSR values.
>
> No functional change intended.
>
> Cc: Shan Kang <shan.kang@xxxxxxxxx>
> Cc: Kai Huang <kai.huang@xxxxxxxxx>
> Signed-off-by: Xin Li <xin3.li@xxxxxxxxx>
> [sean: split to separate patch, write changelog]
> Signed-off-by: Sean Christopherson <seanjc@xxxxxxxxxx>
> ---
> arch/x86/include/asm/vmx.h | 3 +--
> arch/x86/kvm/vmx/vmx.c | 2 +-
> 2 files changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/arch/x86/include/asm/vmx.h b/arch/x86/include/asm/vmx.h
> index 6ff179b11235..90ed559076d7 100644
> --- a/arch/x86/include/asm/vmx.h
> +++ b/arch/x86/include/asm/vmx.h
> @@ -148,7 +148,6 @@ static inline u32 vmx_basic_vmcs_mem_type(u64 vmx_basic)
> return (vmx_basic & GENMASK_ULL(53, 50)) >> 50;
> }
>
> -#define VMX_MISC_PREEMPTION_TIMER_RATE_MASK GENMASK_ULL(4, 0)
> #define VMX_MISC_SAVE_EFER_LMA BIT_ULL(5)
> #define VMX_MISC_ACTIVITY_HLT BIT_ULL(6)
> #define VMX_MISC_ACTIVITY_SHUTDOWN BIT_ULL(7)
> @@ -162,7 +161,7 @@ static inline u32 vmx_basic_vmcs_mem_type(u64 vmx_basic)
>
> static inline int vmx_misc_preemption_timer_rate(u64 vmx_misc)
> {
> - return vmx_misc & VMX_MISC_PREEMPTION_TIMER_RATE_MASK;
> + return vmx_misc & GENMASK_ULL(4, 0);
> }

I feel keeping VMX_MISC_PREEMPTION_TIMER_RATE_MASK is clearer than
GENMASK_ULL(4, 0), and the former improves code readability.

May not need to drop VMX_MISC_PREEMPTION_TIMER_RATE_MASK?

Thanks,
Zhao