@@ -254,7 +254,6 @@ static inline void handle_one_irq(unsigned int irq)
struct thread_info *curtp, *irqtp;
unsigned long saved_sp_limit;
struct irq_desc *desc;
- void *handler;
/* Switch to the irq stack to handle this */
curtp = current_thread_info();
@@ -269,10 +268,6 @@ static inline void handle_one_irq(unsigned int irq)
desc = irq_desc + irq;
saved_sp_limit = current->thread.ksp_limit;
- handler = desc->handler;
- if (handler == NULL)
- handler = &__do_IRQ;
-
irqtp->task = curtp->task;
irqtp->flags = 0;
@@ -284,7 +279,7 @@ static inline void handle_one_irq(unsigned int irq)
current->thread.ksp_limit = (unsigned long)irqtp +
_ALIGN_UP(sizeof(struct thread_info), 16);
- call_handle_irq(irq, desc, irqtp, handler);
+ call_handle_irq(irq, desc, irqtp, desc->handle_irq);
current->thread.ksp_limit = saved_sp_limit;
irqtp->task = NULL;
We should no longer have any irq code that needs __do_IRQ(), so remove the fallback to __do_IRQ(). Signed-off-by: Michael Ellerman <michael@ellerman.id.au> --- arch/powerpc/kernel/irq.c | 7 +------ 1 files changed, 1 insertions(+), 6 deletions(-)