lkml.org 
[lkml]   [2021]   [Mar]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCHv3 3/6] arm64: irq: rework root IRQ handler registration
On Mon, Mar 15, 2021 at 11:56:26AM +0000, Mark Rutland wrote:
> If we accidentally unmask IRQs before we've registered a root IRQ
> handler, handle_arch_irq will be NULL, and the IRQ exception handler
> will branch to a bogus address.
>
> To make this easier to debug, this patch initialises handle_arch_irq to
> a default handler which will panic(), making such problems easier to
> debug. When we add support for FIQ handlers, we can follow the same
> approach.
>
> When we add support for a root FIQ handler, it's possible to have root
> IRQ handler without an root FIQ handler, and in theory the inverse is
> also possible. To permit this, and to keep the IRQ/FIQ registration
> logic similar, this patch removes the panic in the absence of a root IRQ
> controller. Instead, set_handle_irq() logs when a handler is registered,
> which is sufficient for debug purposes.
>
> Signed-off-by: Mark Rutland <mark.rutland@arm.com>
> Tested-by: Hector Martin <marcan@marcan.st>
> Cc: Catalin Marinas <catalin.marinas@arm.com>
> Cc: James Morse <james.morse@arm.com>
> Cc: Marc Zyngier <maz@kernel.org>
> Cc: Thomas Gleixner <tglx@linutronix.de>
> Cc: Will Deacon <will@kernel.org>
> ---
> arch/arm64/kernel/irq.c | 12 ++++++++----
> 1 file changed, 8 insertions(+), 4 deletions(-)

Acked-by: Will Deacon <will@kernel.org>

Will

\
 
 \ /
  Last update: 2021-03-24 17:51    [W:0.104 / U:0.216 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site