Messages in this thread | | | From | Vitaly Kuznetsov <> | Subject | Re: [PATCH] KVM: apic: reuse smp_wmb() in kvm_make_request() | Date | Thu, 06 Feb 2020 11:47:02 +0100 |
| |
linmiaohe <linmiaohe@huawei.com> writes:
> From: Miaohe Lin <linmiaohe@huawei.com> > > There is already an smp_mb() barrier in kvm_make_request(). We reuse it > here. > > Signed-off-by: Miaohe Lin <linmiaohe@huawei.com> > --- > arch/x86/kvm/lapic.c | 9 ++++++--- > 1 file changed, 6 insertions(+), 3 deletions(-) > > diff --git a/arch/x86/kvm/lapic.c b/arch/x86/kvm/lapic.c > index eafc631d305c..ea871206a370 100644 > --- a/arch/x86/kvm/lapic.c > +++ b/arch/x86/kvm/lapic.c > @@ -1080,9 +1080,12 @@ static int __apic_accept_irq(struct kvm_lapic *apic, int delivery_mode, > result = 1; > /* assumes that there are only KVM_APIC_INIT/SIPI */ > apic->pending_events = (1UL << KVM_APIC_INIT); > - /* make sure pending_events is visible before sending > - * the request */ > - smp_wmb(); > + /* > + * Make sure pending_events is visible before sending > + * the request. > + * There is already an smp_wmb() in kvm_make_request(), > + * we reuse that barrier here. > + */
Let me suggest an alternative wording,
"kvm_make_request() provides smp_wmb() so pending_events changes are guaranteed to be visible"
But there is nothing wrong with yours, it's just longer than it could be :-)
Reviewed-by: Vitaly Kuznetsov <vkuznets@redhat.com>
> kvm_make_request(KVM_REQ_EVENT, vcpu); > kvm_vcpu_kick(vcpu); > }
-- Vitaly
| |