## memory_object_data_unavailable

Function - Instruct kernel to zero-fill pages as requested data does not exist.

### SYNOPSIS

    kern_return_t   memory_object_data_unavailable
                    (memory_object_control_t         memory_control,
                     vm_offset_t                             offset,
                     vm_size_t                                 size);

### PARAMETERS

memory_control
  [in memory-cache-control send right] The memory cache control port to be used by the memory manager for cache management requests. This port is provided by the kernel in a memory_object_init or a memory_object_create call.

offset
  [in scalar] The offset within the memory object, in bytes.

size
  [in scalar] The number of bytes of data (starting at offset). The number must convert to an integral number of memory object pages.

### DESCRIPTION

The memory_object_data_unavailable function indicates that the memory manager cannot provide the kernel with the data requested for the given region. Instead, the kernel should provide the data for this region.

A memory manager can use this call in any of the following situations:

- When the object was created by the kernel (via memory_object_create) and the kernel has not yet provided data for the region (via either memory_object_data_initialize or memory_object_data_return). In this case, the object is a temporary memory object; the memory manager is the default memory manager; and the kernel should provide zero-filled pages for the object.

- When the object is a normal user-created memory object. In this case, the kernel should provide zero-filled pages for the region.

### RETURN VALUES

Only generic errors apply.

### RELATED INFORMATION

Functions: memory_object_create, memory_object_data_error, memory_object_data_request, memory_object_data_supply.