diff options
author | dg <dg@FreeBSD.org> | 1995-07-16 05:39:22 +0000 |
---|---|---|
committer | dg <dg@FreeBSD.org> | 1995-07-16 05:39:22 +0000 |
commit | 1e377cd99d00399cbf82987ea0c1e1e32c72eb18 (patch) | |
tree | 127c62b5f9ea2a435467648114c58e109409de3b /sys/i386 | |
parent | 7715d6b5da9aaadc191f2cffc225a5a82580c013 (diff) | |
download | FreeBSD-src-1e377cd99d00399cbf82987ea0c1e1e32c72eb18.zip FreeBSD-src-1e377cd99d00399cbf82987ea0c1e1e32c72eb18.tar.gz |
Truncate the fault address to a page boundry when calling vm_fault(). The
last change to fix the fault-twice bug with page tables wasn't quite
complete.
Diffstat (limited to 'sys/i386')
-rw-r--r-- | sys/i386/i386/trap.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/i386/i386/trap.c b/sys/i386/i386/trap.c index 7731ebb..17ad97d 100644 --- a/sys/i386/i386/trap.c +++ b/sys/i386/i386/trap.c @@ -35,7 +35,7 @@ * SUCH DAMAGE. * * from: @(#)trap.c 7.4 (Berkeley) 5/13/91 - * $Id: trap.c,v 1.53 1995/06/11 19:31:14 rgrimes Exp $ + * $Id: trap.c,v 1.54 1995/07/14 09:25:51 davidg Exp $ */ /* @@ -465,7 +465,7 @@ trap_pfault(frame, usermode) /* Fault the pte only if needed: */ if (*((int *)vtopte(v)) == 0) - (void) vm_fault(map, v, VM_PROT_WRITE, FALSE); + (void) vm_fault(map, trunc_page(v), VM_PROT_WRITE, FALSE); pmap_use_pt( vm_map_pmap(map), va); @@ -583,7 +583,7 @@ trap_pfault(frame, usermode) /* Fault the pte only if needed: */ if (*((int *)vtopte(v)) == 0) - (void) vm_fault(map, v, VM_PROT_WRITE, FALSE); + (void) vm_fault(map, trunc_page(v), VM_PROT_WRITE, FALSE); pmap_use_pt( vm_map_pmap(map), va); |