patch-2.3.39 linux/arch/sparc64/mm/asyncd.c
Next file: linux/drivers/acorn/block/fd1772.c
Previous file: linux/arch/sparc/mm/sun4c.c
Back to the patch index
Back to the overall index
-  Lines: 20
-  Date:
Sat Jan  8 21:36:20 2000
-  Orig file: 
v2.3.38/linux/arch/sparc64/mm/asyncd.c
-  Orig date: 
Wed Dec 29 13:13:14 1999
diff -u --recursive --new-file v2.3.38/linux/arch/sparc64/mm/asyncd.c linux/arch/sparc64/mm/asyncd.c
@@ -1,4 +1,4 @@
-/*  $Id: asyncd.c,v 1.10 1999/12/15 22:25:02 davem Exp $
+/*  $Id: asyncd.c,v 1.11 2000/01/08 20:22:19 davem Exp $
  *  The asyncd kernel daemon. This handles paging on behalf of 
  *  processes that receive page faults due to remote (async) memory
  *  accesses. 
@@ -263,10 +263,11 @@
 		save_flags(flags); cli();
 
 		while (!async_queue) {
-			spin_lock_irq(¤t->sigmask_lock);
+			spin_lock(¤t->sigmask_lock);
 			flush_signals(current);
-			spin_unlock_irq(¤t->sigmask_lock);
+			spin_unlock(¤t->sigmask_lock);
 			interruptible_sleep_on(&asyncd_wait);
+			__sti(); cli(); /* acquire gloabl_irq_lock */
 		}
 
 		restore_flags(flags);
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)