From 5ebe32c611f85d54d26a9b8dbdfa6dccd2a363d2 Mon Sep 17 00:00:00 2001 From: John Baldwin Date: Tue, 7 Aug 2001 17:31:42 +0000 Subject: [PATCH] Grab Giant arond page faults. ia64 boots again in the simulator now. --- sys/ia64/ia64/trap.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/sys/ia64/ia64/trap.c b/sys/ia64/ia64/trap.c index 5422a2f55657..402851595b82 100644 --- a/sys/ia64/ia64/trap.c +++ b/sys/ia64/ia64/trap.c @@ -286,6 +286,7 @@ trap(int vector, int imm, struct trapframe *framep) p->p_addr->u_pcb.pcb_onfault = 0; goto out; } + mtx_lock(&Giant); /* * It is only a kernel address space fault iff: @@ -405,11 +406,10 @@ trap(int vector, int imm, struct trapframe *framep) #endif trapsignal(p, i, ucode); out: - if (user) { + if (user) userret(p, framep, sticks); - if (mtx_owned(&Giant)) - mtx_unlock(&Giant); - } + if (mtx_owned(&Giant)) + mtx_unlock(&Giant); return; dopanic: