aboutsummaryrefslogtreecommitdiff
path: root/sys/amd64/isa/nmi.c
diff options
context:
space:
mode:
authorJake Burkholder <jake@FreeBSD.org>2001-01-21 19:25:07 +0000
committerJake Burkholder <jake@FreeBSD.org>2001-01-21 19:25:07 +0000
commita448b62ac998ab4ae5e85fc7235cbb5c5dbe60ef (patch)
treea8fab5ee465b0d67b785fe50774997a21db3fdd5 /sys/amd64/isa/nmi.c
parent96b15e09d91b60bbe41d2a3ff239e9a38022ab57 (diff)
Make intr_nesting_level per-process, rather than per-cpu. Setup
interrupt threads to run with it always >= 1, so that malloc can detect M_WAITOK from "interrupt" context. This is also necessary in order to context switch from sched_ithd() directly. Reviewed By: peter
Notes
Notes: svn path=/head/; revision=71337
Diffstat (limited to 'sys/amd64/isa/nmi.c')
-rw-r--r--sys/amd64/isa/nmi.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/amd64/isa/nmi.c b/sys/amd64/isa/nmi.c
index 00f5f23d359f..b9328ae84fc6 100644
--- a/sys/amd64/isa/nmi.c
+++ b/sys/amd64/isa/nmi.c
@@ -577,6 +577,7 @@ inthand_add(const char *name, int irq, driver_intr_t handler, void *arg,
if (errcode)
panic("inthand_add: Can't create "
"interrupt thread");
+ p->p_intr_nesting_level = 1;
p->p_rtprio.type = RTP_PRIO_ITHREAD;
p->p_stat = SWAIT; /* we're idle */