[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [RFC v2 04/16] gic: drop interrupts enabling on interrupts processing
From: Andrii Anisov <andrii_anisov@xxxxxxxx> This reduces the number of context switches in case we have coming guest interrupts from different sources at a high rate. What is likely for multimedia use-cases. Having irqs unlocked here makes us go through trap path again in case we have a new guest interrupt arrived (even with the same priority, after `desc->handler->end(desc)`), what is just a processor cycles wasting. We will catch them all in the `gic_interrupt() function loop anyway. And the guest irqs arrival prioritization is meaningless here, it is only effective at guest's level. Signed-off-by: Andrii Anisov <andrii_anisov@xxxxxxxx> --- The patch message is improved. --- xen/arch/arm/gic.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/xen/arch/arm/gic.c b/xen/arch/arm/gic.c index f576b66..ecaa3d6 100644 --- a/xen/arch/arm/gic.c +++ b/xen/arch/arm/gic.c @@ -406,10 +406,8 @@ void gic_interrupt(struct cpu_user_regs *regs, int is_fiq) if ( likely(irq >= 16 && irq < 1020) ) { - local_irq_enable(); isb(); do_IRQ(regs, irq, is_fiq); - local_irq_disable(); } #ifdef CONFIG_GICV3 else if ( is_lpi(irq) ) -- 2.7.4 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |