lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <87tv3o84io.fsf@vitty.brq.redhat.com>
Date:   Tue, 18 Feb 2020 13:27:11 +0100
From:   Vitaly Kuznetsov <vkuznets@...hat.com>
To:     linmiaohe <linmiaohe@...wei.com>
Cc:     kvm@...r.kernel.org, linux-kernel@...r.kernel.org, x86@...nel.org,
        pbonzini@...hat.com, sean.j.christopherson@...el.com,
        wanpengli@...cent.com, jmattson@...gle.com, joro@...tes.org,
        tglx@...utronix.de, mingo@...hat.com, bp@...en8.de, hpa@...or.com
Subject: Re: [PATCH] KVM: apic: rename apic_lvt_vector and apic_lvt_enabled

linmiaohe <linmiaohe@...wei.com> writes:

> From: Miaohe Lin <linmiaohe@...wei.com>
>
> As the func apic_lvt_enabled() is only used once with APIC_LVTT as the
> second argument, we can eliminate the argument and hardcode lvt_type as
> APIC_LVTT. And also rename apic_lvt_enabled() to apic_lvtt_enabled() to
> indicates it's used for APIC_LVTT only. Similar as apic_lvt_vector().
>
> Suggested-by: Krish Sadhukhan <krish.sadhukhan@...cle.com>
> Suggested-by: Vitaly Kuznetsov <vkuznets@...hat.com>
> Signed-off-by: Miaohe Lin <linmiaohe@...wei.com>
> ---
>  arch/x86/kvm/lapic.c | 13 ++++++-------
>  1 file changed, 6 insertions(+), 7 deletions(-)
>
> diff --git a/arch/x86/kvm/lapic.c b/arch/x86/kvm/lapic.c
> index eafc631d305c..4f14ec7525f6 100644
> --- a/arch/x86/kvm/lapic.c
> +++ b/arch/x86/kvm/lapic.c
> @@ -289,14 +289,14 @@ static inline void kvm_apic_set_x2apic_id(struct kvm_lapic *apic, u32 id)
>  	recalculate_apic_map(apic->vcpu->kvm);
>  }
>  
> -static inline int apic_lvt_enabled(struct kvm_lapic *apic, int lvt_type)
> +static inline int apic_lvtt_enabled(struct kvm_lapic *apic)
>  {
> -	return !(kvm_lapic_get_reg(apic, lvt_type) & APIC_LVT_MASKED);
> +	return !(kvm_lapic_get_reg(apic, APIC_LVTT) & APIC_LVT_MASKED);
>  }
>  
> -static inline int apic_lvt_vector(struct kvm_lapic *apic, int lvt_type)
> +static inline int apic_lvtt_vector(struct kvm_lapic *apic)
>  {
> -	return kvm_lapic_get_reg(apic, lvt_type) & APIC_VECTOR_MASK;
> +	return kvm_lapic_get_reg(apic, APIC_LVTT) & APIC_VECTOR_MASK;
>  }
>  
>  static inline int apic_lvtt_oneshot(struct kvm_lapic *apic)
> @@ -1475,10 +1475,9 @@ static void apic_update_lvtt(struct kvm_lapic *apic)
>  static bool lapic_timer_int_injected(struct kvm_vcpu *vcpu)
>  {
>  	struct kvm_lapic *apic = vcpu->arch.apic;
> -	u32 reg = kvm_lapic_get_reg(apic, APIC_LVTT);
>  
>  	if (kvm_apic_hw_enabled(apic)) {
> -		int vec = reg & APIC_VECTOR_MASK;
> +		int vec = apic_lvtt_vector(apic);
>  		void *bitmap = apic->regs + APIC_ISR;
>  
>  		if (vcpu->arch.apicv_active)
> @@ -2278,7 +2277,7 @@ int apic_has_pending_timer(struct kvm_vcpu *vcpu)
>  {
>  	struct kvm_lapic *apic = vcpu->arch.apic;
>  
> -	if (apic_enabled(apic) && apic_lvt_enabled(apic, APIC_LVTT))
> +	if (apic_enabled(apic) && apic_lvtt_enabled(apic))
>  		return atomic_read(&apic->lapic_timer.pending);
>  
>  	return 0;

Reviewed-by: Vitaly Kuznetsov <vkuznets@...hat.com>

Thanks!

-- 
Vitaly

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ