Hi Andrii,
On 12/12/18 6:20 PM, Andrii Anisov wrote:
From: Andrii Anisov <andrii_ani...@epam.com>
Under desc->lock taken:
An IRQ with _IRQ_GUEST flag set always has an action.
An IRQ with _IRQ_DISABLED flag cleared always has an action.
Those flags checks cover all accesses to desc->action in do_IRQ,
so we can skip desc->action check in non-debug build.
Keep in place for debug build to help diagnostics potential
misconfiguration.
Signed-off-by: Andrii Anisov <andrii_ani...@epam.com>
Acked-by: Julien Grall <julien.gr...@arm.com>
Cheers,
---
xen/arch/arm/irq.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/xen/arch/arm/irq.c b/xen/arch/arm/irq.c
index d6a0273..4a02cc1 100644
--- a/xen/arch/arm/irq.c
+++ b/xen/arch/arm/irq.c
@@ -209,12 +209,14 @@ void do_IRQ(struct cpu_user_regs *regs, unsigned int irq,
int is_fiq)
spin_lock(&desc->lock);
desc->handler->ack(desc);
+#ifndef NDEBUG
if ( !desc->action )
{
printk("Unknown %s %#3.3x\n",
is_fiq ? "FIQ" : "IRQ", irq);
goto out;
}
+#endif
if ( test_bit(_IRQ_GUEST, &desc->status) )
{
--
Julien Grall
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel