• Mark Rutland's avatar
    irq: remove handle_domain_{irq,nmi}() · 0953fb26
    Mark Rutland authored
    Now that entry code handles IRQ entry (including setting the IRQ regs)
    before calling irqchip code, irqchip code can safely call
    generic_handle_domain_irq(), and there's no functional reason for it to
    call handle_domain_irq().
    
    Let's cement this split of responsibility and remove handle_domain_irq()
    entirely, updating irqchip drivers to call generic_handle_domain_irq().
    
    For consistency, handle_domain_nmi() is similarly removed and replaced
    with a generic_handle_domain_nmi() function which also does not perform
    any entry logic.
    
    Previously handle_domain_{irq,nmi}() had a WARN_ON() which would fire
    when they were called in an inappropriate context. So that we can
    identify similar issues going forward, similar WARN_ON_ONCE() logic is
    added to the generic_handle_*() functions, and comments are updated for
    clarity and consistency.
    Signed-off-by: default avatarMark Rutland <mark.rutland@arm.com>
    Reviewed-by: default avatarMarc Zyngier <maz@kernel.org>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    0953fb26
irq-gic.c 42.8 KB