# VkDeviceFaultAddressInfoEXT(3) Manual Page

## Name

VkDeviceFaultAddressInfoEXT - Structure specifying GPU virtual address information

Loading… please wait.

## C Specification

The `VkDeviceFaultAddressInfoEXT` structure is defined as:

    // Provided by VK_EXT_device_fault
    typedef struct VkDeviceFaultAddressInfoEXT {
        VkDeviceFaultAddressTypeEXT    addressType;
        VkDeviceAddress                reportedAddress;
        VkDeviceSize                   addressPrecision;
    } VkDeviceFaultAddressInfoEXT;

## Members

- `addressType` is either the type of memory operation that triggered a page fault, or the type of association between an instruction pointer and a fault.

- `reportedAddress` is the GPU virtual address recorded by the device.

- `addressPrecision` is a power of two value that specifies how precisely the device can report the address.

## Description

The combination of `reportedAddress` and `addressPrecision` allow the possible range of addresses to be calculated, such that:

    lower_address = (pInfo->reportedAddress & ~(pInfo->addressPrecision-1))
    upper_address = (pInfo->reportedAddress |  (pInfo->addressPrecision-1))

Note | It is valid for the `reportedAddress` to contain a more precise address than indicated by `addressPrecision`. In this case, the value of `reportedAddress` should be treated as an additional hint as to the value of the address that triggered the page fault, or to the value of an instruction pointer.

Valid Usage (Implicit)

- VUID-VkDeviceFaultAddressInfoEXT-addressType-parameter
  `addressType` must be a valid VkDeviceFaultAddressTypeEXT value

## See Also

VK_EXT_device_fault, VkDeviceAddress, VkDeviceFaultAddressTypeEXT, VkDeviceFaultInfoEXT, VkDeviceSize

## Document Notes

For more information, see the Vulkan Specification

This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.

## Copyright

Copyright 2014-2024 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0