From 569f75bd02d20043c4baf9fc38d937f37e7572b0 Mon Sep 17 00:00:00 2001
From: Ralf Baechle <ralf@linux-mips.org>
Date: Wed, 13 Jul 2005 18:20:33 +0000
Subject: [PATCH] Use an irq_enable_hazard hazard barrier in unmask_mips_irq. 
 This hasn't been an actual bug, so it's more a change to be 100% compliant
 with the requirements of the architecture spec.  Similar fix to mask_mips_irq
 where there was a slightly less theoretical chance of getting hit.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
---
 arch/mips/kernel/irq_cpu.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/arch/mips/kernel/irq_cpu.c b/arch/mips/kernel/irq_cpu.c
index 905ff843a68fb..060722e42c53f 100644
--- a/arch/mips/kernel/irq_cpu.c
+++ b/arch/mips/kernel/irq_cpu.c
@@ -40,11 +40,13 @@ static int mips_cpu_irq_base;
 static inline void unmask_mips_irq(unsigned int irq)
 {
 	set_c0_status(0x100 << (irq - mips_cpu_irq_base));
+	irq_enable_hazard();
 }
 
 static inline void mask_mips_irq(unsigned int irq)
 {
 	clear_c0_status(0x100 << (irq - mips_cpu_irq_base));
+	irq_disable_hazard();
 }
 
 static inline void mips_cpu_irq_enable(unsigned int irq)
-- 
GitLab