diff options
author | peter <peter@FreeBSD.org> | 2002-04-15 16:00:03 +0000 |
---|---|---|
committer | peter <peter@FreeBSD.org> | 2002-04-15 16:00:03 +0000 |
commit | 3d8c7d4cabad90e8d24802b5e0864d76dc5a05d9 (patch) | |
tree | 07394998150236b94ddf401e0d3efec082c9ab55 /sys/powerpc | |
parent | 929a8fb33da9bf37ac6d590e39a2e60f00c6c4dd (diff) | |
download | FreeBSD-src-3d8c7d4cabad90e8d24802b5e0864d76dc5a05d9.zip FreeBSD-src-3d8c7d4cabad90e8d24802b5e0864d76dc5a05d9.tar.gz |
Pass vm_page_t instead of physical addresses to pmap_zero_page[_area]()
and pmap_copy_page(). This gets rid of a couple more physical addresses
in upper layers, with the eventual aim of supporting PAE and dealing with
the physical addressing mostly within pmap. (We will need either 64 bit
physical addresses or page indexes, possibly both depending on the
circumstances. Leaving this to pmap itself gives more flexibilitly.)
Reviewed by: jake
Tested on: i386, ia64 and (I believe) sparc64. (my alpha was hosed)
Diffstat (limited to 'sys/powerpc')
-rw-r--r-- | sys/powerpc/aim/mmu_oea.c | 7 | ||||
-rw-r--r-- | sys/powerpc/powerpc/mmu_oea.c | 7 | ||||
-rw-r--r-- | sys/powerpc/powerpc/pmap.c | 7 |
3 files changed, 12 insertions, 9 deletions
diff --git a/sys/powerpc/aim/mmu_oea.c b/sys/powerpc/aim/mmu_oea.c index 8a0096c..f5acbe5 100644 --- a/sys/powerpc/aim/mmu_oea.c +++ b/sys/powerpc/aim/mmu_oea.c @@ -817,7 +817,7 @@ pmap_copy(pmap_t dst_pmap, pmap_t src_pmap, vm_offset_t dst_addr, } void -pmap_copy_page(vm_offset_t src, vm_offset_t dst) +pmap_copy_page(vm_page_t src, vm_page_t dst) { TODO; } @@ -826,8 +826,9 @@ pmap_copy_page(vm_offset_t src, vm_offset_t dst) * Zero a page of physical memory by temporarily mapping it into the tlb. */ void -pmap_zero_page(vm_offset_t pa) +pmap_zero_page(vm_page_t m) { + vm_offset_t pa = VM_PAGE_TO_PHYS(m); caddr_t va; int i; @@ -854,7 +855,7 @@ pmap_zero_page(vm_offset_t pa) } void -pmap_zero_page_area(vm_offset_t pa, int off, int size) +pmap_zero_page_area(vm_page_t m, int off, int size) { TODO; } diff --git a/sys/powerpc/powerpc/mmu_oea.c b/sys/powerpc/powerpc/mmu_oea.c index 8a0096c..f5acbe5 100644 --- a/sys/powerpc/powerpc/mmu_oea.c +++ b/sys/powerpc/powerpc/mmu_oea.c @@ -817,7 +817,7 @@ pmap_copy(pmap_t dst_pmap, pmap_t src_pmap, vm_offset_t dst_addr, } void -pmap_copy_page(vm_offset_t src, vm_offset_t dst) +pmap_copy_page(vm_page_t src, vm_page_t dst) { TODO; } @@ -826,8 +826,9 @@ pmap_copy_page(vm_offset_t src, vm_offset_t dst) * Zero a page of physical memory by temporarily mapping it into the tlb. */ void -pmap_zero_page(vm_offset_t pa) +pmap_zero_page(vm_page_t m) { + vm_offset_t pa = VM_PAGE_TO_PHYS(m); caddr_t va; int i; @@ -854,7 +855,7 @@ pmap_zero_page(vm_offset_t pa) } void -pmap_zero_page_area(vm_offset_t pa, int off, int size) +pmap_zero_page_area(vm_page_t m, int off, int size) { TODO; } diff --git a/sys/powerpc/powerpc/pmap.c b/sys/powerpc/powerpc/pmap.c index 8a0096c..f5acbe5 100644 --- a/sys/powerpc/powerpc/pmap.c +++ b/sys/powerpc/powerpc/pmap.c @@ -817,7 +817,7 @@ pmap_copy(pmap_t dst_pmap, pmap_t src_pmap, vm_offset_t dst_addr, } void -pmap_copy_page(vm_offset_t src, vm_offset_t dst) +pmap_copy_page(vm_page_t src, vm_page_t dst) { TODO; } @@ -826,8 +826,9 @@ pmap_copy_page(vm_offset_t src, vm_offset_t dst) * Zero a page of physical memory by temporarily mapping it into the tlb. */ void -pmap_zero_page(vm_offset_t pa) +pmap_zero_page(vm_page_t m) { + vm_offset_t pa = VM_PAGE_TO_PHYS(m); caddr_t va; int i; @@ -854,7 +855,7 @@ pmap_zero_page(vm_offset_t pa) } void -pmap_zero_page_area(vm_offset_t pa, int off, int size) +pmap_zero_page_area(vm_page_t m, int off, int size) { TODO; } |