diff options
author | alc <alc@FreeBSD.org> | 2004-03-07 21:06:48 +0000 |
---|---|---|
committer | alc <alc@FreeBSD.org> | 2004-03-07 21:06:48 +0000 |
commit | f13324f65bc2419a9196c4eca76e5e57c0d7fea5 (patch) | |
tree | 46fc651b1b10f7e2ee470193f457cfe495ed084a /sys | |
parent | a545780c51218e55facb66312587197d0f2ce9af (diff) | |
download | FreeBSD-src-f13324f65bc2419a9196c4eca76e5e57c0d7fea5.zip FreeBSD-src-f13324f65bc2419a9196c4eca76e5e57c0d7fea5.tar.gz |
Retire pmap_pinit2(). Alpha was the last platform that used it. However,
ever since alpha/alpha/pmap.c revision 1.81 introduced the list allpmaps,
there has been no reason for having this function on Alpha. Briefly,
when pmap_growkernel() relied upon the list of all processes to find and
update the various pmaps to reflect a growth in the kernel's valid
address space, pmap_init2() served to avoid a race between pmap
initialization and pmap_growkernel(). Specifically, pmap_pinit2() was
responsible for initializing the kernel portions of the pmap and
pmap_pinit2() was called after the process structure contained a pointer
to the new pmap for use by pmap_growkernel(). Thus, an update to the
kernel's address space might be applied to the new pmap unnecessarily,
but an update would never be lost.
Diffstat (limited to 'sys')
-rw-r--r-- | sys/alpha/alpha/pmap.c | 12 | ||||
-rw-r--r-- | sys/amd64/amd64/pmap.c | 13 | ||||
-rw-r--r-- | sys/i386/i386/pmap.c | 13 | ||||
-rw-r--r-- | sys/ia64/ia64/pmap.c | 11 | ||||
-rw-r--r-- | sys/powerpc/aim/mmu_oea.c | 6 | ||||
-rw-r--r-- | sys/powerpc/powerpc/mmu_oea.c | 6 | ||||
-rw-r--r-- | sys/powerpc/powerpc/pmap.c | 6 | ||||
-rw-r--r-- | sys/sparc64/sparc64/pmap.c | 6 | ||||
-rw-r--r-- | sys/vm/pmap.h | 1 | ||||
-rw-r--r-- | sys/vm/vm_glue.c | 3 | ||||
-rw-r--r-- | sys/vm/vm_map.c | 2 |
11 files changed, 0 insertions, 79 deletions
diff --git a/sys/alpha/alpha/pmap.c b/sys/alpha/alpha/pmap.c index 1133ad2..a371eba 100644 --- a/sys/alpha/alpha/pmap.c +++ b/sys/alpha/alpha/pmap.c @@ -1109,18 +1109,6 @@ pmap_pinit(pmap) mtx_lock_spin(&allpmaps_lock); LIST_INSERT_HEAD(&allpmaps, pmap, pm_list); mtx_unlock_spin(&allpmaps_lock); -} - -/* - * Wire in kernel global address entries. To avoid a race condition - * between pmap initialization and pmap_growkernel, this procedure - * should be called after the vmspace is attached to the process - * but before this pmap is activated. - */ -void -pmap_pinit2(pmap) - struct pmap *pmap; -{ bcopy(PTlev1 + K1SEGLEV1I, pmap->pm_lev1 + K1SEGLEV1I, nklev2 * PTESIZE); } diff --git a/sys/amd64/amd64/pmap.c b/sys/amd64/amd64/pmap.c index e3110ea..0fe6f65 100644 --- a/sys/amd64/amd64/pmap.c +++ b/sys/amd64/amd64/pmap.c @@ -1103,19 +1103,6 @@ pmap_pinit(pmap) } /* - * Wire in kernel global address entries. To avoid a race condition - * between pmap initialization and pmap_growkernel, this procedure - * should be called after the vmspace is attached to the process - * but before this pmap is activated. - */ -void -pmap_pinit2(pmap) - struct pmap *pmap; -{ - /* XXX: Remove this stub when no longer called */ -} - -/* * this routine is called if the page table page is not * mapped correctly. * diff --git a/sys/i386/i386/pmap.c b/sys/i386/i386/pmap.c index 884f9ad..19fc440 100644 --- a/sys/i386/i386/pmap.c +++ b/sys/i386/i386/pmap.c @@ -1147,19 +1147,6 @@ pmap_pinit(pmap) } /* - * Wire in kernel global address entries. To avoid a race condition - * between pmap initialization and pmap_growkernel, this procedure - * should be called after the vmspace is attached to the process - * but before this pmap is activated. - */ -void -pmap_pinit2(pmap) - struct pmap *pmap; -{ - /* XXX: Remove this stub when no longer called */ -} - -/* * this routine is called if the page table page is not * mapped correctly. */ diff --git a/sys/ia64/ia64/pmap.c b/sys/ia64/ia64/pmap.c index 7b276fe..95481f2 100644 --- a/sys/ia64/ia64/pmap.c +++ b/sys/ia64/ia64/pmap.c @@ -735,17 +735,6 @@ pmap_pinit(struct pmap *pmap) bzero(&pmap->pm_stats, sizeof pmap->pm_stats); } -/* - * Wire in kernel global address entries. To avoid a race condition - * between pmap initialization and pmap_growkernel, this procedure - * should be called after the vmspace is attached to the process - * but before this pmap is activated. - */ -void -pmap_pinit2(struct pmap *pmap) -{ -} - /*************************************************** * Pmap allocation/deallocation routines. ***************************************************/ diff --git a/sys/powerpc/aim/mmu_oea.c b/sys/powerpc/aim/mmu_oea.c index cdf3bce..69fe588 100644 --- a/sys/powerpc/aim/mmu_oea.c +++ b/sys/powerpc/aim/mmu_oea.c @@ -1443,12 +1443,6 @@ pmap_pinit0(pmap_t pm) bzero(&pm->pm_stats, sizeof(pm->pm_stats)); } -void -pmap_pinit2(pmap_t pmap) -{ - /* XXX: Remove this stub when no longer called */ -} - /* * Set the physical protection on the specified range of this map as requested. */ diff --git a/sys/powerpc/powerpc/mmu_oea.c b/sys/powerpc/powerpc/mmu_oea.c index cdf3bce..69fe588 100644 --- a/sys/powerpc/powerpc/mmu_oea.c +++ b/sys/powerpc/powerpc/mmu_oea.c @@ -1443,12 +1443,6 @@ pmap_pinit0(pmap_t pm) bzero(&pm->pm_stats, sizeof(pm->pm_stats)); } -void -pmap_pinit2(pmap_t pmap) -{ - /* XXX: Remove this stub when no longer called */ -} - /* * Set the physical protection on the specified range of this map as requested. */ diff --git a/sys/powerpc/powerpc/pmap.c b/sys/powerpc/powerpc/pmap.c index cdf3bce..69fe588 100644 --- a/sys/powerpc/powerpc/pmap.c +++ b/sys/powerpc/powerpc/pmap.c @@ -1443,12 +1443,6 @@ pmap_pinit0(pmap_t pm) bzero(&pm->pm_stats, sizeof(pm->pm_stats)); } -void -pmap_pinit2(pmap_t pmap) -{ - /* XXX: Remove this stub when no longer called */ -} - /* * Set the physical protection on the specified range of this map as requested. */ diff --git a/sys/sparc64/sparc64/pmap.c b/sys/sparc64/sparc64/pmap.c index 2d7ad37..02fef8e 100644 --- a/sys/sparc64/sparc64/pmap.c +++ b/sys/sparc64/sparc64/pmap.c @@ -1027,12 +1027,6 @@ pmap_pinit(pmap_t pm) bzero(&pm->pm_stats, sizeof(pm->pm_stats)); } -void -pmap_pinit2(pmap_t pmap) -{ - /* XXX: Remove this stub when no longer called */ -} - /* * Release any resources held by the given physical map. * Called when a pmap initialized by pmap_pinit is being released. diff --git a/sys/vm/pmap.h b/sys/vm/pmap.h index 7adfa75..cbe5648 100644 --- a/sys/vm/pmap.h +++ b/sys/vm/pmap.h @@ -120,7 +120,6 @@ boolean_t pmap_page_exists_quick(pmap_t pmap, vm_page_t m); void pmap_page_protect(vm_page_t m, vm_prot_t prot); void pmap_pinit(pmap_t); void pmap_pinit0(pmap_t); -void pmap_pinit2(pmap_t); void pmap_protect(pmap_t, vm_offset_t, vm_offset_t, vm_prot_t); void pmap_qenter(vm_offset_t, vm_page_t *, int); void pmap_qremove(vm_offset_t, int); diff --git a/sys/vm/vm_glue.c b/sys/vm/vm_glue.c index 89cf4c7..1b1be53 100644 --- a/sys/vm/vm_glue.c +++ b/sys/vm/vm_glue.c @@ -675,9 +675,6 @@ vm_forkproc(td, p2, td2, flags) if ((flags & RFMEM) == 0) { p2->p_vmspace = vmspace_fork(p1->p_vmspace); - - pmap_pinit2(vmspace_pmap(p2->p_vmspace)); - if (p1->p_vmspace->vm_shm) shmfork(p1, p2); } diff --git a/sys/vm/vm_map.c b/sys/vm/vm_map.c index ecfade8..d4a7fe6 100644 --- a/sys/vm/vm_map.c +++ b/sys/vm/vm_map.c @@ -2798,7 +2798,6 @@ vmspace_exec(struct proc *p, vm_offset_t minuser, vm_offset_t maxuser) * here, it is a good idea to keep this form for future mods. */ p->p_vmspace = newvmspace; - pmap_pinit2(vmspace_pmap(newvmspace)); if (p == curthread->td_proc) /* XXXKSE ? */ pmap_activate(curthread); vmspace_free(oldvmspace); @@ -2819,7 +2818,6 @@ vmspace_unshare(struct proc *p) return; newvmspace = vmspace_fork(oldvmspace); p->p_vmspace = newvmspace; - pmap_pinit2(vmspace_pmap(newvmspace)); if (p == curthread->td_proc) /* XXXKSE ? */ pmap_activate(curthread); vmspace_free(oldvmspace); |