genirq: Add return value to check_irq_resend()
authorThomas Gleixner <tglx@linutronix.de>
Fri, 6 Mar 2020 13:03:45 +0000 (14:03 +0100)
committerThomas Gleixner <tglx@linutronix.de>
Sun, 8 Mar 2020 10:06:41 +0000 (11:06 +0100)
commit1f85b1f5e1f5541272abedc19ba7b6c5b564c228
tree777fb3cb28164952979aaa23643d353dd52ee92e
parent008f1d60fe25810d4554916744b0975d76601b64
genirq: Add return value to check_irq_resend()

In preparation for an interrupt injection interface which can be used
safely by error injection mechanisms. e.g. PCI-E/ AER, add a return value
to check_irq_resend() so errors can be propagated to the caller.

Split out the software resend code so the ugly #ifdef in check_irq_resend()
goes away and the whole thing becomes readable.

Fix up the caller in debugfs. The caller in irq_startup() does not care
about the return value as this is unconditionally invoked for all
interrupts and the resend is best effort anyway.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Marc Zyngier <maz@kernel.org>
Link: https://lkml.kernel.org/r/20200306130623.775200917@linutronix.de
kernel/irq/debugfs.c
kernel/irq/internals.h
kernel/irq/resend.c