[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <871qwtwrpa.fsf@redhat.com>
Date: Mon, 16 May 2022 15:08:17 +0200
From: Vitaly Kuznetsov <vkuznets@...hat.com>
To: Yury Norov <yury.norov@...il.com>
Cc: Borislav Petkov <bp@...en8.de>,
Dave Hansen <dave.hansen@...ux.intel.com>,
"H . Peter Anvin" <hpa@...or.com>, Ingo Molnar <mingo@...hat.com>,
Jim Mattson <jmattson@...gle.com>,
Joerg Roedel <joro@...tes.org>,
Paolo Bonzini <pbonzini@...hat.com>,
Sean Christopherson <seanjc@...gle.com>,
Thomas Gleixner <tglx@...utronix.de>,
Wanpeng Li <wanpengli@...cent.com>, kvm@...r.kernel.org,
x86@...nel.org,
Andy Shevchenko <andriy.shevchenko@...ux.intel.com>,
David Laight <David.Laight@...LAB.COM>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Joe Perches <joe@...ches.com>,
Julia Lawall <Julia.Lawall@...ia.fr>,
Michał Mirosław <mirq-linux@...e.qmqm.pl>,
Nicholas Piggin <npiggin@...il.com>,
Nicolas Palix <nicolas.palix@...g.fr>,
Peter Zijlstra <peterz@...radead.org>,
Rasmus Villemoes <linux@...musvillemoes.dk>,
Matti Vaittinen <Matti.Vaittinen@...rohmeurope.com>,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 11/22] KVM: x86: hyper-v: replace bitmap_weight() with
hweight64()
Yury Norov <yury.norov@...il.com> writes:
> kvm_hv_flush_tlb() applies bitmap API to a u64 variable valid_bank_mask.
> Since valid_bank_mask has a fixed size, we can use hweight64() and avoid
> excessive bloating.
>
> CC: Borislav Petkov <bp@...en8.de>
> CC: Dave Hansen <dave.hansen@...ux.intel.com>
> CC: H. Peter Anvin <hpa@...or.com>
> CC: Ingo Molnar <mingo@...hat.com>
> CC: Jim Mattson <jmattson@...gle.com>
> CC: Joerg Roedel <joro@...tes.org>
> CC: Paolo Bonzini <pbonzini@...hat.com>
> CC: Sean Christopherson <seanjc@...gle.com>
> CC: Thomas Gleixner <tglx@...utronix.de>
> CC: Vitaly Kuznetsov <vkuznets@...hat.com>
> CC: Wanpeng Li <wanpengli@...cent.com>
> CC: kvm@...r.kernel.org
> CC: linux-kernel@...r.kernel.org
> CC: x86@...nel.org
> Signed-off-by: Yury Norov <yury.norov@...il.com>
> ---
> arch/x86/kvm/hyperv.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/arch/x86/kvm/hyperv.c b/arch/x86/kvm/hyperv.c
> index 41585f0edf1e..b652b856df2b 100644
> --- a/arch/x86/kvm/hyperv.c
> +++ b/arch/x86/kvm/hyperv.c
> @@ -1855,7 +1855,7 @@ static u64 kvm_hv_flush_tlb(struct kvm_vcpu *vcpu, struct kvm_hv_hcall *hc)
> all_cpus = flush_ex.hv_vp_set.format !=
> HV_GENERIC_SET_SPARSE_4K;
>
> - if (hc->var_cnt != bitmap_weight((unsigned long *)&valid_bank_mask, 64))
> + if (hc->var_cnt != hweight64(valid_bank_mask))
> return HV_STATUS_INVALID_HYPERCALL_INPUT;
>
> if (all_cpus)
> @@ -1956,7 +1956,7 @@ static u64 kvm_hv_send_ipi(struct kvm_vcpu *vcpu, struct kvm_hv_hcall *hc)
> valid_bank_mask = send_ipi_ex.vp_set.valid_bank_mask;
> all_cpus = send_ipi_ex.vp_set.format == HV_GENERIC_SET_ALL;
>
> - if (hc->var_cnt != bitmap_weight(&valid_bank_mask, 64))
> + if (hc->var_cnt != hweight64(valid_bank_mask))
> return HV_STATUS_INVALID_HYPERCALL_INPUT;
>
> if (all_cpus)
(please Cc: me on the whole series next time)
Acked-by: Vitaly Kuznetsov <vkuznets@...hat.com>
--
Vitaly
Powered by blists - more mailing lists