diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2005-08-09 11:23:49 -0400 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2005-10-29 14:32:00 -0400 |
commit | d9912d87840b321678c85396c6adf15ced2c228d (patch) | |
tree | 100585d6cb7ddc9a76b5fff7895ae72c3b67984c /arch/mips/kernel/irq_cpu.c | |
parent | d3ffd085536c1801da74c098e25fd3985671e15d (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.c | 2 |
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 | ||