1 <h2>memory_object_data_error
</h2>
4 <strong>Function
</strong> - An error prevents the supply of previously requested data.
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>
16 <dt> <var>memory_control
</var>
18 [in memory-cache-control send right]
19 The memory cache control port
20 to be used by the memory manager for cache management requests.
21 This port is provided by the kernel in a
<strong>memory_object_create
</strong> call.
23 <dt> <var>offset
</var>
26 The offset within the memory object, in bytes.
31 The number of bytes of data (starting at
<var>offset
</var>). The number
32 must convert to an integral number of memory object pages.
34 <dt> <var>reason
</var>
41 The
<strong>memory_object_data_error
</strong> function indicates that
43 cannot provide the kernel with the data requested for the given region,
44 specifying a reason for the error.
46 When the kernel issues a
<strong>memory_object_data_request
</strong> call, the memory
47 manager can respond with a
<strong>memory_object_data_error
</strong>
48 call to indicate that the
49 page cannot be retrieved, and that a memory failure exception should be raised
50 in any client threads that are waiting for the page. Clients
51 are permitted to catch
52 these exceptions and retry their page faults. As a result, this
54 report transient errors as well as permanent ones. A memory manager can use
55 this call for both hardware errors (for example, disk failures) and software
56 errors (for example, accessing data that does not exist or is protected).
59 If reason has a system code of
<var>err_kern
</var>, the kernel will substitute
61 of
<strong>KERN_MEMORY_ERROR
</strong>.
62 <h3>RETURN VALUES
</h3>
64 Only generic errors apply.
65 <h3>RELATED INFORMATION
</h3>
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>.