[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 1/4] xen/arm: gic: Ensure we have an ISB between ack and do_IRQ()
On 20/11/2018 18:10, Andrii Anisov wrote: Hello Julien, On 19.11.18 18:42, Julien Grall wrote:There are no issue about processing IRQs before the syncs. It is the same as if an IRQ was raised from ila different pCPUs.So why do you need that?From my understanding of gic-vgic code (old vgic), for the IRQs targeting the `current` vcpu, it leads to a faster processing under interrupts storm conditions. If it was all LRs set on previous switch to a guest, a the IRQ will have a chance to go directly to LR instead of setting on lr_pending queue. Also inflight_irqs queue have a chance to be shorter to insert. Do you have actual numbers? Also to be on the same page, what is your definition of interrupts storm? Bear in mind that the old vGIC will be phased out soon. If you are worried about performance, then I would recommend to try the new vGIC and see whether it improves. Moreover, maybe you can explain me, what's the point of interrupts enabling before for `do_IRQ()` call? Those interrupts would be grabbed and processed anyway, during run through the loop in `gic_interrupt()`. So I see the only outcome of interrupts enabling - spending more time for context switches. Well, if you re-enable the interrupts you give a chance for higher priority interrupts to come up. This will not happen if you have interrupts disabled. But you seem to base your assumption on interrupts storm (yet to be defined). If you have an interrupt storm, then you are already doomed as your guest/Xen will not have time to do any other work. In any case, you need to provide number to support your optimization. Cheers, -- Julien Grall _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |