1<h2>memory_object_data_unlock</h2> 2<hr> 3<p> 4<strong>Server Interface</strong> - Request that the memory manager change current access permission on the specified memory object's data. 5<h3>SYNOPSIS</h3> 6<pre> 7<strong>kern_return_t memory_object_data_unlock</strong> 8 <strong>(memory_object_t</strong> <var>memory_object</var>, 9 <strong>memory_object_control_t</strong> <var>memory_control</var>, 10 <strong>vm_offset_t</strong> <var>offset</var>, 11 <strong>vm_size_t</strong> <var>length</var>, 12 <strong>vm_prot_t</strong> <var>desired_access</var><strong>);</strong> 13 14 15<strong>kern_return_t seqnos_memory_object_data_unlock</strong> 16 <strong>(memory_object_t</strong> <var>memory_object</var>, 17 <strong>mach_port_seqno_t</strong> <var>seqno</var>, 18 <strong>memory_object_control_t</strong> <var>memory_control</var>, 19 <strong>vm_offset_t</strong> <var>offset</var>, 20 <strong>vm_size_t</strong> <var>length</var>, 21 <strong>vm_prot_t</strong> <var>desired_access</var><strong>);</strong> 22</pre> 23<h3>PARAMETERS</h3> 24<dl> 25<p> 26<dt> <var>memory_object</var> 27<dd> 28[in abstract-memory-object (receive) right] 29The abstract memory 30object port that represents the memory object data. 31<p> 32<dt> <var>seqno</var> 33<dd> 34[in scalar] 35The sequence number of this message relative to the abstract 36memory object port. 37<p> 38<dt> <var>memory_control</var> 39<dd> 40[in memory-cache-control send right] 41The memory cache control port 42to be used for a response by the memory manager. If the memory 43object has been supplied to more than one kernel, this parameter 44identifies the kernel that is making the call. 45<p> 46<dt> <var>offset</var> 47<dd> 48[in scalar] 49The offset within the memory object. 50<p> 51<dt> <var>length</var> 52<dd> 53[in scalar] 54The number of bytes to which the access applies, starting at 55<var>offset</var>. The number converts to an integral number of memory object 56pages. 57<p> 58<dt> <var>desired_access</var> 59<dd> 60[in scalar] 61The memory access modes requested for the cached data. 62Possible values are obtained by or'ing together the following values: 63<dl> 64<p> 65<dt> <strong>VM_PROT_READ</strong> 66<dd> 67Allows read access. 68<p> 69<dt> <strong>VM_PROT_WRITE</strong> 70<dd> 71Allows write access. 72<p> 73<dt> <strong>VM_PROT_EXECUTE</strong> 74<dd> 75Allows execute access. 76</dl> 77</dl> 78<h3>DESCRIPTION</h3> 79<p> 80A <strong>memory_object_data_unlock</strong> function is called as the 81result of a kernel 82message requesting the memory manager to permit at least the 83desired access to the 84specified data cached by the kernel. The memory manager is expected 85to use the 86<strong>memory_object_lock_request</strong> call in response. 87<h3>RETURN VALUES</h3> 88<p> 89Only generic errors apply. 90<h3>RELATED INFORMATION</h3> 91<p> 92Functions: 93<a href="MO_lock_completed.html"><strong>memory_object_lock_completed</strong></a>, 94<a href="memory_object_lock_request.html"><strong>memory_object_lock_request</strong></a>, 95<a href="memory_object_server.html"><strong>memory_object_server</strong></a>, 96<a href="SMO_server.html"><strong>seqnos_memory_object_server</strong></a>. 97