summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/powerpc/kernel/irq.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/arch/powerpc/kernel/irq.c b/arch/powerpc/kernel/irq.c
index a5fe12aa937..7d46e5d5b20 100644
--- a/arch/powerpc/kernel/irq.c
+++ b/arch/powerpc/kernel/irq.c
@@ -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->handle_irq;
- 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;