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

Commit beeca087 authored by Paul Mackerras's avatar Paul Mackerras
Browse files

Don't call a NULL ack function in the generic IRQ code.



Some IRQ controllers don't need an ack function (e.g. OpenPIC on
PPC platforms) and for them we'd rather not have the overhead
of doing an indirect call to a function that does nothing.

Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
parent 20c8c210
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -117,6 +117,7 @@ fastcall unsigned int __do_IRQ(unsigned int irq, struct pt_regs *regs)
		/*
		 * No locking required for CPU-local interrupts:
		 */
		if (desc->handler->ack)
			desc->handler->ack(irq);
		action_ret = handle_IRQ_event(irq, regs, desc->action);
		desc->handler->end(irq);
@@ -124,6 +125,7 @@ fastcall unsigned int __do_IRQ(unsigned int irq, struct pt_regs *regs)
	}

	spin_lock(&desc->lock);
	if (desc->handler->ack)
		desc->handler->ack(irq);
	/*
	 * REPLAY is when Linux resends an IRQ that was dropped earlier