summaryrefslogtreecommitdiffstats
path: root/sys/arm
diff options
context:
space:
mode:
authorcognet <cognet@FreeBSD.org>2005-06-16 13:21:52 +0000
committercognet <cognet@FreeBSD.org>2005-06-16 13:21:52 +0000
commit6a3b6acd6566d8047a0e38be1f62994773c9b19d (patch)
tree000f97474975fab88968ea0cdc719144095a64f0 /sys/arm
parent02006202bd9e88d5920da2ee1d800f63e15e9766 (diff)
downloadFreeBSD-src-6a3b6acd6566d8047a0e38be1f62994773c9b19d.zip
FreeBSD-src-6a3b6acd6566d8047a0e38be1f62994773c9b19d.tar.gz
Don't pass the kernel_pmap to pmap_fault_fixup() if the fault comes from
kernel mode, always use the curthread pmap instead. There are valid cases were we can fault on a user address from the kernel without pcb_onfault being set. Approved by: re (blanket)
Diffstat (limited to 'sys/arm')
-rw-r--r--sys/arm/arm/trap.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/arm/arm/trap.c b/sys/arm/arm/trap.c
index 1b96392..82e0aef 100644
--- a/sys/arm/arm/trap.c
+++ b/sys/arm/arm/trap.c
@@ -406,8 +406,8 @@ data_abort_handler(trapframe_t *tf)
#ifdef DEBUG
last_fault_code = fsr;
#endif
- if (pmap_fault_fixup(user ? vmspace_pmap(td->td_proc->p_vmspace) :
- kernel_pmap, va, ftype, user)) {
+ if (pmap_fault_fixup(vmspace_pmap(td->td_proc->p_vmspace), va, ftype,
+ user)) {
goto out;
}
OpenPOWER on IntegriCloud