aboutsummaryrefslogtreecommitdiffstats
path: root/arch/mips/kernel/irq_cpu.c
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2005-08-09 11:23:49 -0400
committerRalf Baechle <ralf@linux-mips.org>2005-10-29 14:32:00 -0400
commitd9912d87840b321678c85396c6adf15ced2c228d (patch)
tree100585d6cb7ddc9a76b5fff7895ae72c3b67984c /arch/mips/kernel/irq_cpu.c
parentd3ffd085536c1801da74c098e25fd3985671e15d (diff)
Inlining will result in back-to-back mtc0 mfc0 instructions. Break the
hazard by using back_to_back_c0_hazard(). Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/kernel/irq_cpu.c')
-rw-r--r--arch/mips/kernel/irq_cpu.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/mips/kernel/irq_cpu.c b/arch/mips/kernel/irq_cpu.c
index 060722e42c53..31c38c4971c0 100644
--- a/arch/mips/kernel/irq_cpu.c
+++ b/arch/mips/kernel/irq_cpu.c
@@ -55,6 +55,7 @@ static inline void mips_cpu_irq_enable(unsigned int irq)
55 55
56 local_irq_save(flags); 56 local_irq_save(flags);
57 unmask_mips_irq(irq); 57 unmask_mips_irq(irq);
58 back_to_back_c0_hazard();
58 local_irq_restore(flags); 59 local_irq_restore(flags);
59} 60}
60 61
@@ -64,6 +65,7 @@ static void mips_cpu_irq_disable(unsigned int irq)
64 65
65 local_irq_save(flags); 66 local_irq_save(flags);
66 mask_mips_irq(irq); 67 mask_mips_irq(irq);
68 back_to_back_c0_hazard();
67 local_irq_restore(flags); 69 local_irq_restore(flags);
68} 70}
69 71