summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2024-01-30 19:58:18 +0100
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2024-01-30 19:59:18 +0100
commit0f9822d2ab9881ebb601b25ab3f381bbb6197b05 (patch)
tree23c0dd493b6ac33b17032b416e5b3a76c605940b /include
parent366954d50be00d085d44a8c461a80f2d0b663224 (diff)
Add vm_pages_phys
For rumpdisk to efficiently determine the physical address, both for checking whether it is below 4GiB, and for giving it to the disk driver, we need a gnumach primitive (and that is not conditioned by MACH_VM_DEBUG like mach_vm_region_info and mach_vm_object_pages_phys are).
Diffstat (limited to 'include')
-rw-r--r--include/mach/gnumach.defs10
1 files changed, 10 insertions, 0 deletions
diff --git a/include/mach/gnumach.defs b/include/mach/gnumach.defs
index 05101a48..6252de96 100644
--- a/include/mach/gnumach.defs
+++ b/include/mach/gnumach.defs
@@ -197,3 +197,13 @@ routine vm_allocate_contiguous(
simpleroutine task_set_essential(
task : task_t;
essential : boolean_t);
+
+/*
+ * Returns physical addresses of a region of memory
+ */
+routine vm_pages_phys(
+ host_priv : host_priv_t;
+ target_task : vm_task_t;
+ vaddr : vm_address_t;
+ size : vm_size_t;
+ out pages : rpc_phys_addr_array_t);