Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 11 Apr 2006 07:18:03 GMT
From:      Alan Cox <alc@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 94976 for review
Message-ID:  <200604110718.k3B7I3AA068156@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=94976

Change 94976 by alc@alc_home on 2006/04/11 07:17:57

	IFC change to pmap_remove_pages()'s parameters.

Affected files ...

.. //depot/projects/superpages/src/sys/alpha/alpha/pmap.c#4 integrate
.. //depot/projects/superpages/src/sys/amd64/amd64/pmap.c#14 integrate
.. //depot/projects/superpages/src/sys/arm/arm/pmap.c#10 integrate
.. //depot/projects/superpages/src/sys/i386/i386/pmap.c#11 integrate
.. //depot/projects/superpages/src/sys/ia64/ia64/pmap.c#4 integrate
.. //depot/projects/superpages/src/sys/kern/kern_exec.c#8 integrate
.. //depot/projects/superpages/src/sys/kern/kern_exit.c#6 integrate
.. //depot/projects/superpages/src/sys/powerpc/powerpc/mmu_if.m#2 integrate
.. //depot/projects/superpages/src/sys/powerpc/powerpc/pmap_dispatch.c#2 integrate
.. //depot/projects/superpages/src/sys/sparc64/sparc64/pmap.c#3 integrate
.. //depot/projects/superpages/src/sys/vm/pmap.h#3 integrate

Differences ...

==== //depot/projects/superpages/src/sys/alpha/alpha/pmap.c#4 (text+ko) ====

@@ -148,7 +148,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/alpha/alpha/pmap.c,v 1.187 2005/12/02 18:02:54 alc Exp $");
+__FBSDID("$FreeBSD: src/sys/alpha/alpha/pmap.c,v 1.188 2006/04/03 21:16:07 peter Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -2125,9 +2125,7 @@
  * in the case of running down an entire address space.
  */
 void
-pmap_remove_pages(pmap, sva, eva)
-	pmap_t pmap;
-	vm_offset_t sva, eva;
+pmap_remove_pages(pmap_t pmap)
 {
 	pt_entry_t *pte, tpte;
 	vm_page_t m;
@@ -2146,11 +2144,6 @@
 		pv;
 		pv = npv) {
 
-		if (pv->pv_va >= eva || pv->pv_va < sva) {
-			npv = TAILQ_NEXT(pv, pv_plist);
-			continue;
-		}
-
 #ifdef PMAP_REMOVE_PAGES_CURPROC_ONLY
 		pte = vtopte(pv->pv_va);
 #else

==== //depot/projects/superpages/src/sys/amd64/amd64/pmap.c#14 (text+ko) ====

@@ -77,7 +77,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.540 2006/04/02 05:45:05 alc Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.541 2006/04/03 21:16:07 peter Exp $");
 
 /*
  *	Manages physical address maps.
@@ -2772,9 +2772,7 @@
  * in the case of running down an entire address space.
  */
 void
-pmap_remove_pages(pmap, sva, eva)
-	pmap_t pmap;
-	vm_offset_t sva, eva;
+pmap_remove_pages(pmap_t pmap)
 {
 	pd_entry_t *pde;
 	pt_entry_t *pte, tpte;
@@ -2791,11 +2789,6 @@
 	PMAP_LOCK(pmap);
 	for (pv = TAILQ_FIRST(&pmap->pm_pvlist); pv; pv = npv) {
 
-		if (pv->pv_va >= eva || pv->pv_va < sva) {
-			npv = TAILQ_NEXT(pv, pv_plist);
-			continue;
-		}
-
 #ifdef PMAP_REMOVE_PAGES_CURPROC_ONLY
 		pde = vtopde(pv->pv_va);
 #else

==== //depot/projects/superpages/src/sys/arm/arm/pmap.c#10 (text+ko) ====

@@ -147,7 +147,7 @@
 #include "opt_vm.h"
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.45 2006/03/26 22:03:43 cognet Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.46 2006/04/03 21:16:07 peter Exp $");
 #include <sys/param.h>
 #include <sys/systm.h>
 #include <sys/kernel.h>
@@ -3174,7 +3174,7 @@
  * in the case of running down an entire address space.
  */
 void
-pmap_remove_pages(pmap_t pmap, vm_offset_t sva, vm_offset_t eva)
+pmap_remove_pages(pmap_t pmap)
 {
 	struct pv_entry *pv, *npv;
 	struct l2_bucket *l2b = NULL;
@@ -3186,10 +3186,6 @@
 
 	vm_page_lock_queues();
 	for (pv = TAILQ_FIRST(&pmap->pm_pvlist); pv; pv = npv) {
-		if (pv->pv_va >= eva || pv->pv_va < sva) {
-			npv = TAILQ_NEXT(pv, pv_plist);
-			continue;
-		}
 		if (pv->pv_flags & PVF_WIRED) {                  
 			/* The page is wired, cannot remove it now. */
 			npv = TAILQ_NEXT(pv, pv_plist);

==== //depot/projects/superpages/src/sys/i386/i386/pmap.c#11 (text+ko) ====

@@ -75,7 +75,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/i386/i386/pmap.c,v 1.547 2006/04/02 05:45:05 alc Exp $");
+__FBSDID("$FreeBSD: src/sys/i386/i386/pmap.c,v 1.548 2006/04/03 21:16:07 peter Exp $");
 
 /*
  *	Manages physical address maps.
@@ -2777,9 +2777,7 @@
  * in the case of running down an entire address space.
  */
 void
-pmap_remove_pages(pmap, sva, eva)
-	pmap_t pmap;
-	vm_offset_t sva, eva;
+pmap_remove_pages(pmap_t pmap)
 {
 	pd_entry_t *pde;
 	pt_entry_t *pte, tpte;
@@ -2797,11 +2795,6 @@
 	sched_pin();
 	for (pv = TAILQ_FIRST(&pmap->pm_pvlist); pv; pv = npv) {
 
-		if (pv->pv_va >= eva || pv->pv_va < sva) {
-			npv = TAILQ_NEXT(pv, pv_plist);
-			continue;
-		}
-
 		pde = pmap_pde(pmap, pv->pv_va);
 		if (*pde & PG_PS) {
 			if (*pde & PG_W) {

==== //depot/projects/superpages/src/sys/ia64/ia64/pmap.c#4 (text+ko) ====

@@ -46,7 +46,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/ia64/ia64/pmap.c,v 1.172 2005/11/20 06:09:48 alc Exp $");
+__FBSDID("$FreeBSD: src/sys/ia64/ia64/pmap.c,v 1.173 2006/04/03 21:16:08 peter Exp $");
 
 #include <sys/param.h>
 #include <sys/kernel.h>
@@ -1862,7 +1862,7 @@
  * in the case of running down an entire address space.
  */
 void
-pmap_remove_pages(pmap_t pmap, vm_offset_t sva, vm_offset_t eva)
+pmap_remove_pages(pmap_t pmap)
 {
 	pmap_t oldpmap;
 	pv_entry_t pv, npv;
@@ -1881,9 +1881,6 @@
 
 		npv = TAILQ_NEXT(pv, pv_plist);
 
-		if (pv->pv_va >= eva || pv->pv_va < sva)
-			continue;
-
 		pte = pmap_find_vhpt(pv->pv_va);
 		KASSERT(pte != NULL, ("pte"));
 		if (!pmap_wired(pte))

==== //depot/projects/superpages/src/sys/kern/kern_exec.c#8 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/kern/kern_exec.c,v 1.290 2006/03/08 20:21:54 ups Exp $");
+__FBSDID("$FreeBSD: src/sys/kern/kern_exec.c,v 1.291 2006/04/03 21:16:08 peter Exp $");
 
 #include "opt_hwpmc_hooks.h"
 #include "opt_ktrace.h"
@@ -905,8 +905,7 @@
 	if (vmspace->vm_refcnt == 1 && vm_map_min(map) == sv->sv_minuser &&
 	    vm_map_max(map) == sv->sv_maxuser) {
 		shmexit(vmspace);
-		pmap_remove_pages(vmspace_pmap(vmspace), vm_map_min(map),
-		    vm_map_max(map));
+		pmap_remove_pages(vmspace_pmap(vmspace));
 		vm_map_remove(map, vm_map_min(map), vm_map_max(map));
 	} else {
 		vmspace_exec(p, sv->sv_minuser, sv->sv_maxuser);

==== //depot/projects/superpages/src/sys/kern/kern_exit.c#6 (text+ko) ====

@@ -35,7 +35,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/kern/kern_exit.c,v 1.286 2006/03/14 04:00:21 davidxu Exp $");
+__FBSDID("$FreeBSD: src/sys/kern/kern_exit.c,v 1.287 2006/04/03 21:16:09 peter Exp $");
 
 #include "opt_compat.h"
 #include "opt_ktrace.h"
@@ -325,8 +325,7 @@
 	while (!atomic_cmpset_int(&vm->vm_refcnt, refcnt, refcnt - 1));
 	if (refcnt == 1) {
 		shmexit(vm);
-		pmap_remove_pages(vmspace_pmap(vm), vm_map_min(&vm->vm_map),
-		    vm_map_max(&vm->vm_map));
+		pmap_remove_pages(vmspace_pmap(vm));
 		(void) vm_map_remove(&vm->vm_map, vm_map_min(&vm->vm_map),
 		    vm_map_max(&vm->vm_map));
 	}

==== //depot/projects/superpages/src/sys/powerpc/powerpc/mmu_if.m#2 (text+ko) ====

@@ -23,7 +23,7 @@
 # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 # SUCH DAMAGE.
 #
-# $FreeBSD: src/sys/powerpc/powerpc/mmu_if.m,v 1.2 2005/11/20 06:09:49 alc Exp $
+# $FreeBSD: src/sys/powerpc/powerpc/mmu_if.m,v 1.3 2006/04/03 21:16:09 peter Exp $
 #
 
 #include <sys/param.h>
@@ -85,8 +85,7 @@
 		return;
 	}
 
-	static void mmu_null_remove_pages(mmu_t mmu, pmap_t pmap,
-	    vm_offset_t start, vm_offset_t end)
+	static void mmu_null_remove_pages(mmu_t mmu, pmap_t pmap)
 	{
 		return;
 	}
@@ -543,8 +542,6 @@
 METHOD void remove_pages {
 	mmu_t		_mmu;
 	pmap_t		_pmap;
-	vm_offset_t	_start;
-	vm_offset_t	_end;
 } DEFAULT mmu_null_remove_pages;
 
 

==== //depot/projects/superpages/src/sys/powerpc/powerpc/pmap_dispatch.c#2 (text+ko) ====

@@ -26,7 +26,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/powerpc/powerpc/pmap_dispatch.c,v 1.3 2005/11/20 06:09:49 alc Exp $");
+__FBSDID("$FreeBSD: src/sys/powerpc/powerpc/pmap_dispatch.c,v 1.4 2006/04/03 21:16:09 peter Exp $");
 
 /*
  * Dispatch MI pmap calls to the appropriate MMU implementation
@@ -244,9 +244,9 @@
 }
 
 void
-pmap_remove_pages(pmap_t pmap, vm_offset_t start, vm_offset_t end)
+pmap_remove_pages(pmap_t pmap)
 {
-	MMU_REMOVE_PAGES(mmu_obj, pmap, start, end);
+	MMU_REMOVE_PAGES(mmu_obj, pmap);
 }
 
 void

==== //depot/projects/superpages/src/sys/sparc64/sparc64/pmap.c#3 (text+ko) ====

@@ -39,7 +39,7 @@
  * SUCH DAMAGE.
  *
  *      from:   @(#)pmap.c      7.7 (Berkeley)  5/12/91
- * $FreeBSD: src/sys/sparc64/sparc64/pmap.c,v 1.152 2006/01/01 22:52:21 scottl Exp $
+ * $FreeBSD: src/sys/sparc64/sparc64/pmap.c,v 1.153 2006/04/03 21:16:09 peter Exp $
  */
 
 /*
@@ -1698,7 +1698,7 @@
  * an entire address space.  Only works for the current pmap.
  */
 void
-pmap_remove_pages(pmap_t pm, vm_offset_t sva, vm_offset_t eva)
+pmap_remove_pages(pmap_t pm)
 {
 }
 

==== //depot/projects/superpages/src/sys/vm/pmap.h#3 (text+ko) ====

@@ -57,7 +57,7 @@
  * any improvements or extensions that they make and grant Carnegie the
  * rights to redistribute these changes.
  *
- * $FreeBSD: src/sys/vm/pmap.h,v 1.74 2005/11/20 06:09:49 alc Exp $
+ * $FreeBSD: src/sys/vm/pmap.h,v 1.75 2006/04/03 21:16:10 peter Exp $
  */
 
 /*
@@ -121,7 +121,7 @@
 void		 pmap_release(pmap_t);
 void		 pmap_remove(pmap_t, vm_offset_t, vm_offset_t);
 void		 pmap_remove_all(vm_page_t m);
-void		 pmap_remove_pages(pmap_t, vm_offset_t, vm_offset_t);
+void		 pmap_remove_pages(pmap_t);
 void		 pmap_zero_page(vm_page_t);
 void		 pmap_zero_page_area(vm_page_t, int off, int size);
 void		 pmap_zero_page_idle(vm_page_t);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200604110718.k3B7I3AA068156>