Module Name: src Committed By: reinoud Date: Thu Sep 15 15:02:35 UTC 2011
Modified Files: src/sys/arch/usermode/usermode: pmap.c Log Message: Remove temporary the optimalization code of pmap_remove_all() until the suspected pmap problems are fixed/found. To generate a diff of this commit: cvs rdiff -u -r1.65 -r1.66 src/sys/arch/usermode/usermode/pmap.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/usermode/usermode/pmap.c diff -u src/sys/arch/usermode/usermode/pmap.c:1.65 src/sys/arch/usermode/usermode/pmap.c:1.66 --- src/sys/arch/usermode/usermode/pmap.c:1.65 Thu Sep 15 14:55:23 2011 +++ src/sys/arch/usermode/usermode/pmap.c Thu Sep 15 15:02:35 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: pmap.c,v 1.65 2011/09/15 14:55:23 reinoud Exp $ */ +/* $NetBSD: pmap.c,v 1.66 2011/09/15 15:02:35 reinoud Exp $ */ /*- * Copyright (c) 2011 Reinoud Zandijk <rein...@netbsd.org> @@ -27,7 +27,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.65 2011/09/15 14:55:23 reinoud Exp $"); +__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.66 2011/09/15 15:02:35 reinoud Exp $"); #include "opt_memsize.h" #include "opt_kmempages.h" @@ -789,7 +789,7 @@ } } else { for (npv = pv->pv_next; npv; npv = npv->pv_next) { - if (pmap == npv->pv_pmap && lpn == npv->pv_lpn) + if ((pmap == npv->pv_pmap) && (lpn == npv->pv_lpn)) break; pv = npv; } @@ -842,8 +842,11 @@ if (pmap == pmap_kernel()) return; +#if 0 + /* remove all mappings in one-go; not needed */ pmap_remove(pmap, VM_MIN_ADDRESS, VM_MAXUSER_ADDRESS); thunk_munmap((void *) VM_MIN_ADDRESS, VM_MAXUSER_ADDRESS - VM_MIN_ADDRESS); +#endif #if 0 /* remove all cached info from the pages */ thunk_msync(VM_MIN_ADDRESS, VM_MAXUSER_ADDRESS - VM_MIN_ADDRESS,