diff options
author | Ingo Molnar <mingo@kernel.org> | 2013-10-11 07:39:37 +0200 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2013-10-11 07:39:37 +0200 |
commit | ec0ad3d01f99d5e5b56a99a58f7003b99250dc65 (patch) | |
tree | 85066cbea1cf8da6d099019adefaca90aae39234 /arch/powerpc/kernel/irq.c | |
parent | 3354781a2184380046c8dd19144628d3c33991e6 (diff) | |
parent | 3f0116c3238a96bc18ad4b4acefe4e7be32fa861 (diff) |
Merge branch 'core/urgent' into sched/core
Merge in asm goto fix, to be able to apply the asm/rmwcc.h fix.
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'arch/powerpc/kernel/irq.c')
-rw-r--r-- | arch/powerpc/kernel/irq.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/powerpc/kernel/irq.c b/arch/powerpc/kernel/irq.c index 57d286a78f8..c7cb8c232d2 100644 --- a/arch/powerpc/kernel/irq.c +++ b/arch/powerpc/kernel/irq.c @@ -495,14 +495,15 @@ void __do_irq(struct pt_regs *regs) void do_IRQ(struct pt_regs *regs) { struct pt_regs *old_regs = set_irq_regs(regs); - struct thread_info *curtp, *irqtp; + struct thread_info *curtp, *irqtp, *sirqtp; /* Switch to the irq stack to handle this */ curtp = current_thread_info(); irqtp = hardirq_ctx[raw_smp_processor_id()]; + sirqtp = softirq_ctx[raw_smp_processor_id()]; /* Already there ? */ - if (unlikely(curtp == irqtp)) { + if (unlikely(curtp == irqtp || curtp == sirqtp)) { __do_irq(regs); set_irq_regs(old_regs); return; |