Hello!

> >             /*
> >              * Reestablish the pending state on the distributor and the
> > -            * CPU interface.  It may have already been pending, but that
> > -            * is fine, then we are only setting a few bits that were
> > -            * already set.
> > -            */
> > -           if (lr.state & LR_STATE_PENDING) {
> > -                   vgic_dist_irq_set_pending(vcpu, lr.irq);
> 
> this looks wrong: You should still be setting the pending state on the
> distributor, perhaps this is an ordering issue with the last patch?

 No, explained in the commit msg:
--- cut ---
Additionally, remove unnecessary vgic_set_lr() and LR_STATE_PENDING check
in vgic_unqueue_irqs(), because all these things are now done by the
following vgic_retire_lr().
--- cut ---
 The last patch touches vgic_irq_clear_queued(). LR_STATE_PENDING check was 
included in vgic_retire_lr() by
cff9211eb1a1f58ce7f5a2d596b617928fd4be0e ("arm/arm64: KVM: Fix arch timer 
behavior for disabled interrupts "), so i simply removed
duplicated code.

Kind regards,
Pavel Fedin
Expert Engineer
Samsung Electronics Research center Russia


--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to