-<h2>memory_object_supply_completed</h2>\r<hr>\r<p>\r<strong>Server Interface</strong> - Return results associated with the kernel's handling of a particular memory manager request.\r<h3>SYNOPSIS</h3>\r<pre>\r<strong>kern_return_t memory_object_supply_completed</strong>\r <strong>(memory_object_t</strong> <var>reply_port</var>,\r <strong>memory_object_control_t</strong> <var>memory_control</var>,\r <strong>vm_offset_t</strong> <var>offset</var>,\r <strong>vm_size_t</strong> <var>length</var>,\r <strong>kern_return_t</strong> <var>result</var>,\r <strong>vm_offset_t</strong> <var>error_offset</var><strong>);</strong>\r\r\r<strong>kern_return_t seqnos_memory_object_supply_completed</strong>\r <strong>(memory_object_t</strong> <var>reply_port</var>,\r <strong>mach_port_seqno_t</strong> <var>seqno</var>,\r <strong>memory_object_control_t</strong> <var>memory_control</var>,\r <strong>vm_offset_t</strong> <var>offset</var>,\r <strong>vm_size_t</strong> <var>length</var>,\r <strong>kern_return_t</strong> <var>result</var>,\r <strong>vm_offset_t</strong> <var>error_offset</var><strong>);</strong>\r</pre>\r<h3>PARAMETERS</h3>\r<dl>\r<p>\r<dt> <var>reply_port</var> \r<dd>\r[in reply (receive) right]\rThe port supplied in the corresponding\r<strong>memory_object_data_supply</strong> call.\r<p>\r<dt> <var>seqno</var> \r<dd>\r[in scalar]\rThe sequence number of this message relative to the port \rnamed in the <strong>memory_object_data_supply</strong> call.\r<p>\r<dt> <var>memory_control</var> \r<dd>\r[in memory-cache-control send right]\rThe memory cache control port \rto be used for a response by the memory manager. If the memory\robject has been supplied to more than one kernel, this parameter\ridentifies the kernel that is making the call.\r<p>\r<dt> <var>offset</var> \r<dd>\r[in scalar]\rThe offset within the memory object from the corresponding \rdata supply call.\r<p>\r<dt> <var>length</var> \r<dd>\r[in scalar]\rThe number of bytes accepted. The number converts to an \rintegral number of memory object pages.\r<p>\r<dt> <var>result</var> \r<dd>\r[in scalar]\rA kernel return code indicating the result of the supply\roperation, possibly <strong>KERN_SUCCESS</strong>. <strong>KERN_MEMORY_PRESENT</strong> is \rcurrently the only error returned; other errors (invalid arguments, for \rexample) abort the data supply operation.\r<p>\r<dt> <var>error_offset</var> \r<dd>\r[in scalar]\rThe offset within the memory object where the first error\roccurred.\r</dl>\r<h3>DESCRIPTION</h3>\r<p>\rA <strong>memory_object_supply_completed</strong> function is called\ras the result of a\rkernel message confirming the kernel's action in response to a \r<strong>memory_object_data_supply</strong> call from the memory manager.\r<p>\rWhen the kernel accepts the pages, it calls \r<strong>memory_object_supply_completed</strong> \r(asynchronously) using the port explicitly provided in the\r<strong>memory_object_data_supply</strong> call. Because the data supply\rcall can provide multiple pages, not \rall of which the kernel may necessarily accept and some of which the kernel \rmay have to return to the manager (if precious), the kernel provides this\rresponse. If the kernel does not accept all of the pages in\rthe data supply message, \rit will indicate so in the completion response. If the pages not accepted are\rprecious, they will be returned (in <strong>memory_object_data_return</strong>\rmessages) before \rit sends this completion message. The completion call includes the offset and \rlength values from the supply request to distinguish it from other supply\rrequests.\r<h3>RETURN VALUES</h3>\r<p>\rOnly generic errors apply.\r<h3>RELATED INFORMATION</h3>\r<p>\rFunctions:\r<a href="memory_object_data_supply.html"><strong>memory_object_data_supply</strong></a>,\r<a href="memory_object_server.html"><strong>memory_object_server</strong></a>,\r<a href="SMO_server.html"><strong>seqnos_memory_object_server</strong></a>.\r
\ No newline at end of file
+<h2>memory_object_supply_completed</h2>
+<hr>
+<p>
+<strong>Server Interface</strong> - Return results associated with the kernel's handling of a particular memory manager request.
+<h3>SYNOPSIS</h3>
+<pre>
+<strong>kern_return_t memory_object_supply_completed</strong>
+ <strong>(memory_object_t</strong> <var>reply_port</var>,
+ <strong>memory_object_control_t</strong> <var>memory_control</var>,
+ <strong>vm_offset_t</strong> <var>offset</var>,
+ <strong>vm_size_t</strong> <var>length</var>,
+ <strong>kern_return_t</strong> <var>result</var>,
+ <strong>vm_offset_t</strong> <var>error_offset</var><strong>);</strong>
+
+
+<strong>kern_return_t seqnos_memory_object_supply_completed</strong>
+ <strong>(memory_object_t</strong> <var>reply_port</var>,
+ <strong>mach_port_seqno_t</strong> <var>seqno</var>,
+ <strong>memory_object_control_t</strong> <var>memory_control</var>,
+ <strong>vm_offset_t</strong> <var>offset</var>,
+ <strong>vm_size_t</strong> <var>length</var>,
+ <strong>kern_return_t</strong> <var>result</var>,
+ <strong>vm_offset_t</strong> <var>error_offset</var><strong>);</strong>
+</pre>
+<h3>PARAMETERS</h3>
+<dl>
+<p>
+<dt> <var>reply_port</var>
+<dd>
+[in reply (receive) right]
+The port supplied in the corresponding
+<strong>memory_object_data_supply</strong> call.
+<p>
+<dt> <var>seqno</var>
+<dd>
+[in scalar]
+The sequence number of this message relative to the port
+named in the <strong>memory_object_data_supply</strong> call.
+<p>
+<dt> <var>memory_control</var>
+<dd>
+[in memory-cache-control send right]
+The memory cache control port
+to be used for a response by the memory manager. If the memory
+object has been supplied to more than one kernel, this parameter
+identifies the kernel that is making the call.
+<p>
+<dt> <var>offset</var>
+<dd>
+[in scalar]
+The offset within the memory object from the corresponding
+data supply call.
+<p>
+<dt> <var>length</var>
+<dd>
+[in scalar]
+The number of bytes accepted. The number converts to an
+integral number of memory object pages.
+<p>
+<dt> <var>result</var>
+<dd>
+[in scalar]
+A kernel return code indicating the result of the supply
+operation, possibly <strong>KERN_SUCCESS</strong>. <strong>KERN_MEMORY_PRESENT</strong> is
+currently the only error returned; other errors (invalid arguments, for
+example) abort the data supply operation.
+<p>
+<dt> <var>error_offset</var>
+<dd>
+[in scalar]
+The offset within the memory object where the first error
+occurred.
+</dl>
+<h3>DESCRIPTION</h3>
+<p>
+A <strong>memory_object_supply_completed</strong> function is called
+as the result of a
+kernel message confirming the kernel's action in response to a
+<strong>memory_object_data_supply</strong> call from the memory manager.
+<p>
+When the kernel accepts the pages, it calls
+<strong>memory_object_supply_completed</strong>
+(asynchronously) using the port explicitly provided in the
+<strong>memory_object_data_supply</strong> call. Because the data supply
+call can provide multiple pages, not
+all of which the kernel may necessarily accept and some of which the kernel
+may have to return to the manager (if precious), the kernel provides this
+response. If the kernel does not accept all of the pages in
+the data supply message,
+it will indicate so in the completion response. If the pages not accepted are
+precious, they will be returned (in <strong>memory_object_data_return</strong>
+messages) before
+it sends this completion message. The completion call includes the offset and
+length values from the supply request to distinguish it from other supply
+requests.
+<h3>RETURN VALUES</h3>
+<p>
+Only generic errors apply.
+<h3>RELATED INFORMATION</h3>
+<p>
+Functions:
+<a href="memory_object_data_supply.html"><strong>memory_object_data_supply</strong></a>,
+<a href="memory_object_server.html"><strong>memory_object_server</strong></a>,
+<a href="SMO_server.html"><strong>seqnos_memory_object_server</strong></a>.