diff options
author | dyson <dyson@FreeBSD.org> | 1997-12-22 10:06:09 +0000 |
---|---|---|
committer | dyson <dyson@FreeBSD.org> | 1997-12-22 10:06:09 +0000 |
commit | edbb7fba33341ee51275b280eea58c89c6448856 (patch) | |
tree | 72935a6d3478af1784f650725e1270b61dc1b99b | |
parent | 18b5ec7c3afe8062e2a463ec3268e47d2d9a4a27 (diff) | |
download | FreeBSD-src-edbb7fba33341ee51275b280eea58c89c6448856.zip FreeBSD-src-edbb7fba33341ee51275b280eea58c89c6448856.tar.gz |
Correct my previous fix for the UPAGES problem.
-rw-r--r-- | sys/amd64/amd64/pmap.c | 8 | ||||
-rw-r--r-- | sys/i386/i386/pmap.c | 8 |
2 files changed, 6 insertions, 10 deletions
diff --git a/sys/amd64/amd64/pmap.c b/sys/amd64/amd64/pmap.c index ff06e1f..fa9b6bd 100644 --- a/sys/amd64/amd64/pmap.c +++ b/sys/amd64/amd64/pmap.c @@ -39,7 +39,7 @@ * SUCH DAMAGE. * * from: @(#)pmap.c 7.7 (Berkeley) 5/12/91 - * $Id: pmap.c,v 1.174 1997/12/14 02:11:04 dyson Exp $ + * $Id: pmap.c,v 1.175 1997/12/22 00:36:48 dyson Exp $ */ /* @@ -928,16 +928,14 @@ pmap_dispose_proc(p) if ((m = vm_page_lookup(upobj, i)) == NULL) panic("pmap_dispose_proc: upage already missing???"); *(ptek + i) = 0; - if (cpu_class != CPUCLASS_386) + if (cpu_class >= CPUCLASS_586) invlpg((vm_offset_t) p->p_addr + i * PAGE_SIZE); vm_page_unwire(m); vm_page_free(m); } -#if defined(I386_CPU) - if (cpu_class == CPUCLASS_386) + if (cpu_class < CPUCLASS_586) invltlb(); -#endif vm_object_deallocate(upobj); kmem_free(u_map, (vm_offset_t)p->p_addr, ctob(UPAGES)); diff --git a/sys/i386/i386/pmap.c b/sys/i386/i386/pmap.c index ff06e1f..fa9b6bd 100644 --- a/sys/i386/i386/pmap.c +++ b/sys/i386/i386/pmap.c @@ -39,7 +39,7 @@ * SUCH DAMAGE. * * from: @(#)pmap.c 7.7 (Berkeley) 5/12/91 - * $Id: pmap.c,v 1.174 1997/12/14 02:11:04 dyson Exp $ + * $Id: pmap.c,v 1.175 1997/12/22 00:36:48 dyson Exp $ */ /* @@ -928,16 +928,14 @@ pmap_dispose_proc(p) if ((m = vm_page_lookup(upobj, i)) == NULL) panic("pmap_dispose_proc: upage already missing???"); *(ptek + i) = 0; - if (cpu_class != CPUCLASS_386) + if (cpu_class >= CPUCLASS_586) invlpg((vm_offset_t) p->p_addr + i * PAGE_SIZE); vm_page_unwire(m); vm_page_free(m); } -#if defined(I386_CPU) - if (cpu_class == CPUCLASS_386) + if (cpu_class < CPUCLASS_586) invltlb(); -#endif vm_object_deallocate(upobj); kmem_free(u_map, (vm_offset_t)p->p_addr, ctob(UPAGES)); |