Skip to content

Commit

Permalink
De-optimize and decomplicate the spurious interrupt handler.
Browse files Browse the repository at this point in the history
Signed-off-by: Thiemo Seufer <ths@networkno.de>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
  • Loading branch information
Thiemo Seufer authored and Ralf Baechle committed Oct 29, 2005
1 parent 942b6f6 commit b59a950
Showing 1 changed file with 5 additions and 8 deletions.
13 changes: 5 additions & 8 deletions arch/mips/kernel/entry.S
Original file line number Diff line number Diff line change
Expand Up @@ -128,28 +128,25 @@ FEXPORT(syscall_exit_work)
/*
* Common spurious interrupt handler.
*/
.text
.align 5
LEAF(spurious_interrupt)
/*
* Someone tried to fool us by sending an interrupt but we
* couldn't find a cause for it.
*/
PTR_LA t1, irq_err_count
#ifdef CONFIG_SMP
lui t1, %hi(irq_err_count)
1: ll t0, %lo(irq_err_count)(t1)
1: ll t0, (t1)
addiu t0, 1
sc t0, %lo(irq_err_count)(t1)
sc t0, (t1)
#if R10000_LLSC_WAR
beqzl t0, 1b
#else
beqz t0, 1b
#endif
#else
lui t1, %hi(irq_err_count)
lw t0, %lo(irq_err_count)(t1)
lw t0, (t1)
addiu t0, 1
sw t0, %lo(irq_err_count)(t1)
sw t0, (t1)
#endif
j ret_from_irq
END(spurious_interrupt)

0 comments on commit b59a950

Please sign in to comment.