summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2022-02-16 23:22:25 +0100
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2022-02-16 23:23:18 +0100
commit336201cadf3e3b3c436286ef5a6ecf6370ca46ce (patch)
treea7a680ff1111f0a5035b3f5134d3e873e408145b
parent294372afde326b8c277f738f3f8340cdd86f5b92 (diff)
vm_object: Fix vm_object_page_map map function prototype
The map function is supposed to return physical addresses, thus phys_addr_t.
-rw-r--r--device/dev_pager.c2
-rw-r--r--i386/intel/pmap.h2
-rw-r--r--vm/vm_object.c4
3 files changed, 4 insertions, 4 deletions
diff --git a/device/dev_pager.c b/device/dev_pager.c
index cd41fee4..38f0f8d4 100644
--- a/device/dev_pager.c
+++ b/device/dev_pager.c
@@ -515,7 +515,7 @@ device_pager_change_completed(
* that into something that the pmap module will
* accept later.
*/
-vm_offset_t device_map_page(
+phys_addr_t device_map_page(
void *dsp,
vm_offset_t offset)
{
diff --git a/i386/intel/pmap.h b/i386/intel/pmap.h
index f24b3a71..63683bc5 100644
--- a/i386/intel/pmap.h
+++ b/i386/intel/pmap.h
@@ -467,7 +467,7 @@ pt_entry_t *pmap_pte(const pmap_t pmap, vm_offset_t addr);
#define pmap_kernel() (kernel_pmap)
#define pmap_resident_count(pmap) ((pmap)->stats.resident_count)
-#define pmap_phys_address(frame) ((vm_offset_t) (intel_ptob(frame)))
+#define pmap_phys_address(frame) ((phys_addr_t) (intel_ptob(frame)))
#define pmap_phys_to_frame(phys) ((int) (intel_btop(phys)))
#define pmap_copy(dst_pmap,src_pmap,dst_addr,len,src_addr)
#define pmap_attribute(pmap,addr,size,attr,value) \
diff --git a/vm/vm_object.c b/vm/vm_object.c
index 9e5ae859..0dc3d540 100644
--- a/vm/vm_object.c
+++ b/vm/vm_object.c
@@ -2821,14 +2821,14 @@ vm_object_page_map(
vm_object_t object,
vm_offset_t offset,
vm_size_t size,
- vm_offset_t (*map_fn)(void *, vm_offset_t),
+ phys_addr_t (*map_fn)(void *, vm_offset_t),
void * map_fn_data) /* private to map_fn */
{
int num_pages;
int i;
vm_page_t m;
vm_page_t old_page;
- vm_offset_t addr;
+ phys_addr_t addr;
num_pages = atop(size);