diff options
author | alc <alc@FreeBSD.org> | 2013-09-20 04:30:18 +0000 |
---|---|---|
committer | alc <alc@FreeBSD.org> | 2013-09-20 04:30:18 +0000 |
commit | 88a4d0f31a9eb87f44806242b097f545ae385c34 (patch) | |
tree | b6ca037877d42dd75bff7cafcabdc22bb90a6901 /sys/powerpc | |
parent | 5e1eb8fc155e3e63149905020980fa61b215f804 (diff) | |
download | FreeBSD-src-88a4d0f31a9eb87f44806242b097f545ae385c34.zip FreeBSD-src-88a4d0f31a9eb87f44806242b097f545ae385c34.tar.gz |
The pmap function pmap_clear_reference() is no longer used. Remove it.
pmap_clear_reference() has had exactly one caller in the kernel for
several years, more precisely, since FreeBSD 8. Now, that call no
longer exists.
Approved by: re (kib)
Sponsored by: EMC / Isilon Storage Division
Diffstat (limited to 'sys/powerpc')
-rw-r--r-- | sys/powerpc/aim/mmu_oea.c | 13 | ||||
-rw-r--r-- | sys/powerpc/aim/mmu_oea64.c | 11 | ||||
-rw-r--r-- | sys/powerpc/booke/pmap.c | 34 | ||||
-rw-r--r-- | sys/powerpc/powerpc/pmap_dispatch.c | 8 |
4 files changed, 0 insertions, 66 deletions
diff --git a/sys/powerpc/aim/mmu_oea.c b/sys/powerpc/aim/mmu_oea.c index f4e9d9b..ac3e9fe 100644 --- a/sys/powerpc/aim/mmu_oea.c +++ b/sys/powerpc/aim/mmu_oea.c @@ -278,7 +278,6 @@ int moea_pte_spill(vm_offset_t); */ void moea_change_wiring(mmu_t, pmap_t, vm_offset_t, boolean_t); void moea_clear_modify(mmu_t, vm_page_t); -void moea_clear_reference(mmu_t, vm_page_t); void moea_copy_page(mmu_t, vm_page_t, vm_page_t); void moea_copy_pages(mmu_t mmu, vm_page_t *ma, vm_offset_t a_offset, vm_page_t *mb, vm_offset_t b_offset, int xfersize); @@ -328,7 +327,6 @@ struct pmap_md * moea_scan_md(mmu_t mmu, struct pmap_md *prev); static mmu_method_t moea_methods[] = { MMUMETHOD(mmu_change_wiring, moea_change_wiring), MMUMETHOD(mmu_clear_modify, moea_clear_modify), - MMUMETHOD(mmu_clear_reference, moea_clear_reference), MMUMETHOD(mmu_copy_page, moea_copy_page), MMUMETHOD(mmu_copy_pages, moea_copy_pages), MMUMETHOD(mmu_enter, moea_enter), @@ -1353,17 +1351,6 @@ moea_is_prefaultable(mmu_t mmu, pmap_t pmap, vm_offset_t va) } void -moea_clear_reference(mmu_t mmu, vm_page_t m) -{ - - KASSERT((m->oflags & VPO_UNMANAGED) == 0, - ("moea_clear_reference: page %p is not managed", m)); - rw_wlock(&pvh_global_lock); - moea_clear_bit(m, PTE_REF); - rw_wunlock(&pvh_global_lock); -} - -void moea_clear_modify(mmu_t mmu, vm_page_t m) { diff --git a/sys/powerpc/aim/mmu_oea64.c b/sys/powerpc/aim/mmu_oea64.c index 3913b47..4ed2606 100644 --- a/sys/powerpc/aim/mmu_oea64.c +++ b/sys/powerpc/aim/mmu_oea64.c @@ -288,7 +288,6 @@ static void moea64_syncicache(mmu_t, pmap_t pmap, vm_offset_t va, */ void moea64_change_wiring(mmu_t, pmap_t, vm_offset_t, boolean_t); void moea64_clear_modify(mmu_t, vm_page_t); -void moea64_clear_reference(mmu_t, vm_page_t); void moea64_copy_page(mmu_t, vm_page_t, vm_page_t); void moea64_copy_pages(mmu_t mmu, vm_page_t *ma, vm_offset_t a_offset, vm_page_t *mb, vm_offset_t b_offset, int xfersize); @@ -334,7 +333,6 @@ static void moea64_sync_icache(mmu_t, pmap_t, vm_offset_t, vm_size_t); static mmu_method_t moea64_methods[] = { MMUMETHOD(mmu_change_wiring, moea64_change_wiring), MMUMETHOD(mmu_clear_modify, moea64_clear_modify), - MMUMETHOD(mmu_clear_reference, moea64_clear_reference), MMUMETHOD(mmu_copy_page, moea64_copy_page), MMUMETHOD(mmu_copy_pages, moea64_copy_pages), MMUMETHOD(mmu_enter, moea64_enter), @@ -1543,15 +1541,6 @@ moea64_is_prefaultable(mmu_t mmu, pmap_t pmap, vm_offset_t va) } void -moea64_clear_reference(mmu_t mmu, vm_page_t m) -{ - - KASSERT((m->oflags & VPO_UNMANAGED) == 0, - ("moea64_clear_reference: page %p is not managed", m)); - moea64_clear_bit(mmu, m, LPTE_REF); -} - -void moea64_clear_modify(mmu_t mmu, vm_page_t m) { diff --git a/sys/powerpc/booke/pmap.c b/sys/powerpc/booke/pmap.c index d5c64ed..7b9a5d3 100644 --- a/sys/powerpc/booke/pmap.c +++ b/sys/powerpc/booke/pmap.c @@ -270,7 +270,6 @@ void pmap_bootstrap_ap(volatile uint32_t *); */ static void mmu_booke_change_wiring(mmu_t, pmap_t, vm_offset_t, boolean_t); static void mmu_booke_clear_modify(mmu_t, vm_page_t); -static void mmu_booke_clear_reference(mmu_t, vm_page_t); static void mmu_booke_copy(mmu_t, pmap_t, pmap_t, vm_offset_t, vm_size_t, vm_offset_t); static void mmu_booke_copy_page(mmu_t, vm_page_t, vm_page_t); @@ -333,7 +332,6 @@ static mmu_method_t mmu_booke_methods[] = { /* pmap dispatcher interface */ MMUMETHOD(mmu_change_wiring, mmu_booke_change_wiring), MMUMETHOD(mmu_clear_modify, mmu_booke_clear_modify), - MMUMETHOD(mmu_clear_reference, mmu_booke_clear_reference), MMUMETHOD(mmu_copy, mmu_booke_copy), MMUMETHOD(mmu_copy_page, mmu_booke_copy_page), MMUMETHOD(mmu_copy_pages, mmu_booke_copy_pages), @@ -2357,38 +2355,6 @@ mmu_booke_ts_referenced(mmu_t mmu, vm_page_t m) } /* - * Clear the reference bit on the specified physical page. - */ -static void -mmu_booke_clear_reference(mmu_t mmu, vm_page_t m) -{ - pte_t *pte; - pv_entry_t pv; - - KASSERT((m->oflags & VPO_UNMANAGED) == 0, - ("mmu_booke_clear_reference: page %p is not managed", m)); - rw_wlock(&pvh_global_lock); - TAILQ_FOREACH(pv, &m->md.pv_list, pv_link) { - PMAP_LOCK(pv->pv_pmap); - if ((pte = pte_find(mmu, pv->pv_pmap, pv->pv_va)) != NULL && - PTE_ISVALID(pte)) { - if (PTE_ISREFERENCED(pte)) { - mtx_lock_spin(&tlbivax_mutex); - tlb_miss_lock(); - - tlb0_flush_entry(pv->pv_va); - pte->flags &= ~PTE_REFERENCED; - - tlb_miss_unlock(); - mtx_unlock_spin(&tlbivax_mutex); - } - } - PMAP_UNLOCK(pv->pv_pmap); - } - rw_wunlock(&pvh_global_lock); -} - -/* * Change wiring attribute for a map/virtual-address pair. */ static void diff --git a/sys/powerpc/powerpc/pmap_dispatch.c b/sys/powerpc/powerpc/pmap_dispatch.c index 24e6076..773ede1 100644 --- a/sys/powerpc/powerpc/pmap_dispatch.c +++ b/sys/powerpc/powerpc/pmap_dispatch.c @@ -116,14 +116,6 @@ pmap_clear_modify(vm_page_t m) } void -pmap_clear_reference(vm_page_t m) -{ - - CTR2(KTR_PMAP, "%s(%p)", __func__, m); - MMU_CLEAR_REFERENCE(mmu_obj, m); -} - -void pmap_copy(pmap_t dst_pmap, pmap_t src_pmap, vm_offset_t dst_addr, vm_size_t len, vm_offset_t src_addr) { |