summaryrefslogtreecommitdiffstats
path: root/arch/sparc/mm/asyncd.c
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>1998-03-17 22:05:47 +0000
committerRalf Baechle <ralf@linux-mips.org>1998-03-17 22:05:47 +0000
commit27cfca1ec98e91261b1a5355d10a8996464b63af (patch)
tree8e895a53e372fa682b4c0a585b9377d67ed70d0e /arch/sparc/mm/asyncd.c
parent6a76fb7214c477ccf6582bd79c5b4ccc4f9c41b1 (diff)
Look Ma' what I found on my harddisk ...
o New faster syscalls for 2.1.x, too o Upgrade to 2.1.89. Don't try to run this. It's flaky as hell. But feel free to debug ...
Diffstat (limited to 'arch/sparc/mm/asyncd.c')
-rw-r--r--arch/sparc/mm/asyncd.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/arch/sparc/mm/asyncd.c b/arch/sparc/mm/asyncd.c
index 46635db97..d9b17deed 100644
--- a/arch/sparc/mm/asyncd.c
+++ b/arch/sparc/mm/asyncd.c
@@ -1,4 +1,4 @@
-/* $Id: asyncd.c,v 1.10 1997/05/15 21:14:24 davem Exp $
+/* $Id: asyncd.c,v 1.11 1997/12/14 23:24:34 ecd Exp $
* The asyncd kernel daemon. This handles paging on behalf of
* processes that receive page faults due to remote (async) memory
* accesses.
@@ -239,7 +239,8 @@ int asyncd(void *unused)
current->session = 1;
current->pgrp = 1;
sprintf(current->comm, "asyncd");
- current->blocked = ~0UL; /* block all signals */
+ sigfillset(&current->blocked); /* block all signals */
+ recalc_sigpending(current);
/* Give asyncd a realtime priority. */
current->policy = SCHED_FIFO;
@@ -259,7 +260,9 @@ int asyncd(void *unused)
save_flags(flags); cli();
while (!async_queue) {
- current->signal = 0;
+ spin_lock_irq(&current->sigmask_lock);
+ flush_signals(current);
+ spin_unlock_irq(&current->sigmask_lock);
interruptible_sleep_on(&asyncd_wait);
}