summaryrefslogtreecommitdiffstats
path: root/sys/kern/kern_synch.c
diff options
context:
space:
mode:
authorgallatin <gallatin@FreeBSD.org>2002-07-17 02:23:44 +0000
committergallatin <gallatin@FreeBSD.org>2002-07-17 02:23:44 +0000
commitb6368d35106f2181ca1d6536cbb3e1fab2a5b3c0 (patch)
tree5924547463c69dff00bd745cf367d4a708e9a16e /sys/kern/kern_synch.c
parent3abb526f86a27b005f352fb91f605228876fa8f7 (diff)
downloadFreeBSD-src-b6368d35106f2181ca1d6536cbb3e1fab2a5b3c0.zip
FreeBSD-src-b6368d35106f2181ca1d6536cbb3e1fab2a5b3c0.tar.gz
Allow alphas to do crashdumps: Refuse to run anything in choosethread()
after a panic which is not an interrupt thread, or the thread which caused the panic. Also, remove panicstr checks from msleep() and from cv_wait() in order to allow threads to go to sleep and yeild the cpu to the panicing thread, or to an interrupt thread which might be doing the crashdump. Reviewed by: jhb (and it was mostly his idea too)
Diffstat (limited to 'sys/kern/kern_synch.c')
-rw-r--r--sys/kern/kern_synch.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/sys/kern/kern_synch.c b/sys/kern/kern_synch.c
index d07f090..f54c2d1 100644
--- a/sys/kern/kern_synch.c
+++ b/sys/kern/kern_synch.c
@@ -477,11 +477,11 @@ msleep(ident, mtx, priority, wmesg, timo)
}
}
mtx_lock_spin(&sched_lock);
- if (cold || panicstr) {
+ if (cold ) {
/*
- * After a panic, or during autoconfiguration,
- * just give interrupts a chance, then just return;
- * don't run any other procs or panic below,
+ * During autoconfiguration, just give interrupts
+ * a chance, then just return.
+ * Don't run any other procs or panic below,
* in case this is the idle process and already asleep.
*/
if (mtx != NULL && priority & PDROP)
OpenPOWER on IntegriCloud