Skip to content

Commit

Permalink
[MIPS] local_irq_restore wasn't safe to be used in other macros mode.
Browse files Browse the repository at this point in the history
    
It always left the assembler in reorder mode possibly causing disaster.
    
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
  • Loading branch information
Ralf Baechle committed Feb 7, 2006
1 parent 75bdb42 commit 2e66fe2
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions include/asm-mips/interrupt.h
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,7 @@ __asm__ __volatile__( \

__asm__ (
" .macro local_irq_restore flags \n"
" .set push \n"
" .set noreorder \n"
" .set noat \n"
#if defined(CONFIG_CPU_MIPSR2) && defined(CONFIG_IRQ_CPU)
Expand Down Expand Up @@ -141,8 +142,7 @@ __asm__ (
" mtc0 \\flags, $12 \n"
#endif
" irq_disable_hazard \n"
" .set at \n"
" .set reorder \n"
" .set pop \n"
" .endm \n");

#define local_irq_restore(flags) \
Expand Down

0 comments on commit 2e66fe2

Please sign in to comment.