summaryrefslogtreecommitdiffstats
path: root/sys/amd64
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2001-06-29 04:18:10 +0000
committerjhb <jhb@FreeBSD.org>2001-06-29 04:18:10 +0000
commitcc8833dfe93c8b4278dc447d08a183bffab6c910 (patch)
tree38e5253870c41c276ecc4266590b17b6709760cf /sys/amd64
parentac6b9aa8ec6bb97e1c3251f6f8dc873cd19cee4e (diff)
downloadFreeBSD-src-cc8833dfe93c8b4278dc447d08a183bffab6c910.zip
FreeBSD-src-cc8833dfe93c8b4278dc447d08a183bffab6c910.tar.gz
Grab Giant around trap_pfault() for now.
Diffstat (limited to 'sys/amd64')
-rw-r--r--sys/amd64/amd64/trap.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/amd64/amd64/trap.c b/sys/amd64/amd64/trap.c
index 5167ceb..09cc034 100644
--- a/sys/amd64/amd64/trap.c
+++ b/sys/amd64/amd64/trap.c
@@ -337,7 +337,9 @@ restart:
*/
eva = rcr2();
enable_intr();
+ mtx_lock(&Giant);
i = trap_pfault(&frame, TRUE, eva);
+ mtx_unlock(&Giant);
#if defined(I586_CPU) && !defined(NO_F00F_HACK)
if (i == -2) {
/*
@@ -448,7 +450,9 @@ restart:
*/
eva = rcr2();
enable_intr();
+ mtx_lock(&Giant);
(void) trap_pfault(&frame, FALSE, eva);
+ mtx_unlock(&Giant);
goto out;
case T_DNA:
OpenPOWER on IntegriCloud