From: Maxime Bizon Date: Tue, 20 Dec 2005 05:32:19 +0000 (+0100) Subject: MIPS: R2: Fix local_irq_save() X-Git-Tag: v2.6.16-rc1~462^2~3 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=15265251c5c68fbabdf561cf704e3e305349715a;p=linux-2.6 MIPS: R2: Fix local_irq_save() local_irq_restore uses di which saves the whole status content, not just the IE bit resulting in local_irq_restore() to fail. This only happens if both CONFIG_CPU_MIPSR2 and CONFIG_IRQ_CPU are enabled. Signed-off-by: Maxime Bizon Signed-off-by: Ralf Baechle --- diff --git a/include/asm-mips/interrupt.h b/include/asm-mips/interrupt.h index a5735761f5..abdf54ee64 100644 --- a/include/asm-mips/interrupt.h +++ b/include/asm-mips/interrupt.h @@ -93,6 +93,7 @@ __asm__ ( " .set noat \n" #ifdef CONFIG_CPU_MIPSR2 " di \\result \n" + " andi \\result, 1 \n" #else " mfc0 \\result, $12 \n" " ori $1, \\result, 1 \n"