Il 21/03/2014 19:34, Eduardo Habkost ha scritto:
> + if (irqe.trig_mode == IOAPIC_EDGE_TRIG)
> + ioapic->irr &= ~(1 << irq);
> +
Now, every call to ioapic_service() for an edge interrupt clears the IRR
bit immediately (assuming the mask is unset).
If the IRR bit is immediately zero
Il 21/03/2014 19:34, Eduardo Habkost ha scritto:
+ if (irqe.trig_mode == IOAPIC_EDGE_TRIG)
+ ioapic-irr = ~(1 irq);
+
Now, every call to ioapic_service() for an edge interrupt clears the IRR
bit immediately (assuming the mask is unset).
If the IRR bit is immediately zero on
On Fri, Mar 21, 2014 at 10:27:59AM +0100, Paolo Bonzini wrote:
> This ensures that IRR bits are set in the KVM_GET_IRQCHIP result only if
> the interrupt is still sitting in the IOAPIC. After the next patches, it
> avoids spurious reinjection of the interrupt when KVM_SET_IRQCHIP is
> called.
>
This ensures that IRR bits are set in the KVM_GET_IRQCHIP result only if
the interrupt is still sitting in the IOAPIC. After the next patches, it
avoids spurious reinjection of the interrupt when KVM_SET_IRQCHIP is
called.
Reviewed-by: Alex Williamson
Signed-off-by: Paolo Bonzini
---
This ensures that IRR bits are set in the KVM_GET_IRQCHIP result only if
the interrupt is still sitting in the IOAPIC. After the next patches, it
avoids spurious reinjection of the interrupt when KVM_SET_IRQCHIP is
called.
Reviewed-by: Alex Williamson alex.william...@redhat.com
Signed-off-by:
On Fri, Mar 21, 2014 at 10:27:59AM +0100, Paolo Bonzini wrote:
This ensures that IRR bits are set in the KVM_GET_IRQCHIP result only if
the interrupt is still sitting in the IOAPIC. After the next patches, it
avoids spurious reinjection of the interrupt when KVM_SET_IRQCHIP is
called.
6 matches
Mail list logo