PERFORCE change 94976 for review
Alan Cox
alc at FreeBSD.org
Tue Apr 11 07:18:04 UTC 2006
http://perforce.freebsd.org/chv.cgi?CH=94976
Change 94976 by alc at 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);
More information about the p4-projects
mailing list