From 89a61cd744a621efff2a4d7f0d99258f850338f2 Mon Sep 17 00:00:00 2001 From: Ulf Carlsson Date: Sun, 20 Jun 1999 16:02:52 +0000 Subject: I found that local_irq_save() didn't clear the interrupt flag, quite nasty. I got an oops from the SCSI code which lead me to this bug. This may be the cause of the random crashes and oopses I've had problems with, and even the waitqueue crashes.. --- include/asm-mips/system.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/asm-mips/system.h b/include/asm-mips/system.h index 852254828..ab62be3d4 100644 --- a/include/asm-mips/system.h +++ b/include/asm-mips/system.h @@ -1,4 +1,4 @@ -/* $Id: system.h,v 1.10 1999/06/13 16:35:55 ralf Exp $ +/* $Id: system.h,v 1.11 1999/06/17 13:30:39 ralf Exp $ * * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive @@ -114,7 +114,7 @@ __restore_flags(int flags) #define restore_flags(x) __restore_flags(x) /* For spinlocks etc */ -#define local_irq_save(x) __save_flags(x); +#define local_irq_save(x) __save_and_cli(x); #define local_irq_restore(x) __restore_flags(x); #define local_irq_disable() __cli(); #define local_irq_enable() __sti(); -- cgit v1.2.3