1<h2>memory_object_data_error</h2> 2<hr> 3<p> 4<strong>Function</strong> - An error prevents the supply of previously requested data. 5<h3>SYNOPSIS</h3> 6<pre> 7<strong>kern_return_t memory_object_data_error</strong> 8 <strong>(memory_object_control_t</strong> <var>memory_control</var>, 9 <strong>vm_offset_t</strong> <var>offset</var>, 10 <strong>vm_size_t</strong> <var>size</var>, 11 <strong>kern_return_t</strong> <var>reason</var><strong>);</strong> 12</pre> 13<h3>PARAMETERS</h3> 14<dl> 15<p> 16<dt> <var>memory_control</var> 17<dd> 18[in memory-cache-control send right] 19The memory cache control port 20to be used by the memory manager for cache management requests. 21This port is provided by the kernel in a <strong>memory_object_create</strong> call. 22<p> 23<dt> <var>offset</var> 24<dd> 25[in scalar] 26The offset within the memory object, in bytes. 27<p> 28<dt> <var>size</var> 29<dd> 30[in scalar] 31The number of bytes of data (starting at <var>offset</var>). The number 32must convert to an integral number of memory object pages. 33<p> 34<dt> <var>reason</var> 35<dd> 36[in scalar] 37Reason for the error. 38</dl> 39<h3>DESCRIPTION</h3> 40<p> 41The <strong>memory_object_data_error</strong> function indicates that 42the memory manager 43cannot provide the kernel with the data requested for the given region, 44specifying a reason for the error. 45<p> 46When the kernel issues a <strong>memory_object_data_request</strong> call, the memory 47manager can respond with a <strong>memory_object_data_error</strong> 48call to indicate that the 49page cannot be retrieved, and that a memory failure exception should be raised 50in any client threads that are waiting for the page. Clients 51are permitted to catch 52these exceptions and retry their page faults. As a result, this 53call can be used to 54report transient errors as well as permanent ones. A memory manager can use 55this call for both hardware errors (for example, disk failures) and software 56errors (for example, accessing data that does not exist or is protected). 57<h3>NOTES</h3> 58<p> 59If reason has a system code of <var>err_kern</var>, the kernel will substitute 60an error value 61of <strong>KERN_MEMORY_ERROR</strong>. 62<h3>RETURN VALUES</h3> 63<p> 64Only generic errors apply. 65<h3>RELATED INFORMATION</h3> 66<p> 67Functions: 68<a href="memory_object_data_request.html"><strong>memory_object_data_request</strong></a>, 69<a href="memory_object_data_supply.html"><strong>memory_object_data_supply</strong></a>, 70<a href="MO_data_unavailable.html"><strong>memory_object_data_unavailable</strong></a>. 71