]> git.saurik.com Git - apple/xnu.git/blobdiff - osfmk/mach/mach_vm.defs
xnu-7195.101.1.tar.gz
[apple/xnu.git] / osfmk / mach / mach_vm.defs
index 88097761f017b5d686ad2187d5ed0008dac86968..df2466fa9fb5c8b9b0cf8b78e696f3e955610aea 100644 (file)
@@ -207,7 +207,7 @@ routine PREFIX(mach_vm_read) (
 #else
 routine PREFIX(vm_read) (
 #endif
-               target_task     : vm_map_t;
+               target_task     : vm_map_read_t;
                address         : mach_vm_address_t;
                size            : mach_vm_size_t;
        out     data            : pointer_t);
@@ -221,9 +221,9 @@ routine mach_vm_read_list(
 #else
 routine vm_read_list(
 #endif
-               target_task     : vm_map_t;
-       inout   data_list       : mach_vm_read_entry_t;
-               count           : natural_t);
+                 target_task   : vm_map_read_t;
+       inout data_list         : mach_vm_read_entry_t;
+                 count             : natural_t);
 
 /*
  *     Writes the contents of the specified range of the
@@ -274,7 +274,7 @@ routine mach_vm_read_overwrite(
 #else
 routine vm_read_overwrite(
 #endif
-               target_task     : vm_map_t;
+               target_task     : vm_map_read_t;
                address         : mach_vm_address_t;
                size            : mach_vm_size_t;
                data            : mach_vm_address_t;
@@ -405,18 +405,17 @@ routine mach_vm_page_query(
 #else
 routine vm_map_page_query(
 #endif
-                target_map      :vm_map_t;
+                target_map      :vm_map_read_t;
                 offset          :mach_vm_offset_t;
         out     disposition     :integer_t;
         out     ref_count       :integer_t);
 
-
 #if !defined(_MACH_VM_PUBLISH_AS_LOCAL_)
 routine mach_vm_region_recurse(
 #else
 routine vm_region_recurse_64(
 #endif
-                target_task     : vm_map_t;
+                target_task     : vm_map_read_t;
        inout   address         : mach_vm_address_t;
         out     size            : mach_vm_size_t;
        inout   nesting_depth   : natural_t;
@@ -438,12 +437,12 @@ routine mach_vm_region(
 #else
 routine vm_region_64(
 #endif
-                target_task     : vm_map_t;
-       inout   address         : mach_vm_address_t;
-        out     size            : mach_vm_size_t;
-               flavor          : vm_region_flavor_t;
-       out     info            : vm_region_info_t, CountInOut;
-        out     object_name     : memory_object_name_t =
+        target_task     : vm_map_read_t;
+  inout        address                 : mach_vm_address_t;
+    out size            : mach_vm_size_t;
+               flavor                  : vm_region_flavor_t;
+       out     info                    : vm_region_info_t, CountInOut;
+    out object_name     : memory_object_name_t =
                                         MACH_MSG_TYPE_MOVE_SEND
                                         ctype: mach_port_t);
 
@@ -491,7 +490,7 @@ routine PREFIX(vm_purgable_control) (
 
 #if !defined(_MACH_VM_PUBLISH_AS_LOCAL_)
 routine mach_vm_page_info(
-                       target_task             : vm_map_t;
+                       target_task             : vm_map_read_t;
                        address                 : mach_vm_address_t;
                        flavor                  : vm_page_info_flavor_t;
        out             info                    : vm_page_info_t, CountInOut);
@@ -501,7 +500,7 @@ skip;
 
 #if !defined(_MACH_VM_PUBLISH_AS_LOCAL_)
 routine mach_vm_page_range_query(
-                target_map             : vm_map_t;
+                target_map             : vm_map_read_t;
                 address                        : mach_vm_offset_t;
                 size                   : mach_vm_size_t;
                 dispositions           : mach_vm_address_t;
@@ -510,6 +509,30 @@ routine mach_vm_page_range_query(
 skip;
 #endif
 
+/*
+ *      Map portion of a task's address space, {max, cur}_protection is inout.
+ */
+#if !defined(_MACH_VM_PUBLISH_AS_LOCAL_)
+routine PREFIX(KERNEL_SERVER_SUFFIX(mach_vm_remap_new)) (
+#else
+routine PREFIX(KERNEL_SERVER_SUFFIX(vm_remap_new)) (
+#endif
+               target_task     : vm_map_t;
+  inout        target_address  : mach_vm_address_t;
+               size            : mach_vm_size_t;
+               mask            : mach_vm_offset_t;
+               flags           : int;
+#ifdef KERNEL_SERVER
+               src_tport   : mach_port_t;
+#else
+               src_task        : vm_map_read_t;
+#endif
+               src_address     : mach_vm_address_t;
+               copy            : boolean_t;
+  inout        cur_protection  : vm_prot_t;
+  inout        max_protection  : vm_prot_t;
+               inheritance     : vm_inherit_t);
+
 /****************************** Legacy section ***************************/
 /*  The following definitions are exist to provide compatibility with    */
 /*  the legacy APIs.  They are no different.  We just need to produce    */