Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d3e17deb authored by Thomas Gleixner's avatar Thomas Gleixner
Browse files

genirq: Provide a lockdep helper



Some irq chips need to call genirq functions for nested chips from
their callbacks. That upsets lockdep. So they need to set a different
lock class for those nested chips. Provide a helper function to avoid
open access to irq_desc.

Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
parent 3b903891
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -191,6 +191,15 @@ static inline void __set_irq_handler_unlocked(int irq,
	desc->handle_irq = handler;
}

static inline void
irq_set_lockdep_class(unsigned int irq, struct lock_class_key *class)
{
	struct irq_desc *desc = irq_to_desc(irq);

	if (desc)
		lockdep_set_class(&desc->lock, class);
}

#ifdef CONFIG_IRQ_PREFLOW_FASTEOI
static inline void
__irq_set_preflow_handler(unsigned int irq, irq_preflow_handler_t handler)