On 29.05.19 18:32, Julien Grall wrote:
It would have been nice to at least fix up the commit message with the typoes 
(and rewording) I mentioned in my previous e-mail.
Your commit message needs to explained why this is fine to keep the interrupt 
masked a bit longer. I wrote the explanation in my previous e-mail so you can 
borrow the rationale from there.
xen/arm: gic: Defer the decision to unmask interrupts to do_{LPI, IRQ}()

Having irqs enabled here leaves a room for trapping and going through the trap
path again if we have a new guest interrupt arrived (even with the same or
lower priority, after `desc->handler->end(desc)` in `do_IRQ()`).
Keeping interrupts disabled during guest interrupts processing allows as
avoiding excessive traps (and wasting cpu cycles for trap path) while the new
interrupts would be processed in the loop anyway. Processing guest interrupts by
the loop should not introduce significant additional latency because
vgic_inject_irq(...) already masking the interrupts in most of the cases.


--
Sincerely,
Andrii Anisov.

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

Reply via email to