VK_KHR_device_fault(3)

# VK_KHR_device_fault(3) Manual Page

## Name

VK_KHR_device_fault - device extension

## Registered Extension Number

574

## Revision

1

## Ratification Status

Ratified

## Extension and Version Dependencies

VK_KHR_get_physical_device_properties2
or
Vulkan Version 1.1

## Contact

- Ralph Potter [GitLab]r_potter

## Extension Proposal

VK_KHR_device_fault

## Other Extension Metadata

Last Modified Date

  2026-03-18

IP Status

  No known IP claims.

Contributors

  - Ralph Potter, Samsung

  - Craig Graham, Samsung

  - Stuart Smith, AMD

  - Jan-Harald Fredriksen, ARM

  - Mark Bellamy, ARM

  - Andrew Ellem, Google

  - Alex Walters, IMG

  - Jeff Bolz, NVIDIA

  - Baldur Karlsson, Valve

  - Adrian Ravai, Samsung

  - Peter Gal, Samsung

  - Matthew Netsch, QUALCOMM

  - Tobias Hector, AMD

  - Alan Harrison, AMD

  - Vikram Tarikere, IMG

  - Jon Leech, Khronos

  - Samuel Pitoiset, Valve

## Description

Device loss can be triggered by a variety of issues, including invalid API usage, implementation errors, or hardware failures. This extension introduces two new commands:

- vkGetDeviceFaultReportsKHR

- vkGetDeviceFaultDebugInfoKHR

vkGetDeviceFaultReportsKHR allows developers to query for additional information on GPU faults which may have caused device loss, and to generate binary crash dumps, which may be loaded into external tools for further diagnosis. Additionally this command allows developers to query for additional information on GPU faults which were internally recovered by the implementation.

vkGetDeviceFaultReportsKHR differs from vkGetDeviceFaultInfoEXT in that it can be called at any time, is able to report faults which do not result in VK_ERROR_DEVICE_LOST and allows the caller to wait for such an error to occur.

vkGetDeviceFaultDebugInfoKHR provides a separate interface which must only be called when a device loss has occurred to provide extended GPU vendor specific crash post-mortem information.

## New Commands

- vkGetDeviceFaultDebugInfoKHR

- vkGetDeviceFaultReportsKHR

## New Structures

- VkDeviceFaultAddressInfoKHR

- VkDeviceFaultDebugInfoKHR

- VkDeviceFaultInfoKHR

- VkDeviceFaultVendorBinaryHeaderVersionOneKHR

- VkDeviceFaultVendorInfoKHR

- Extending VkPhysicalDeviceFeatures2, VkDeviceCreateInfo:

  - VkPhysicalDeviceFaultFeaturesKHR

- Extending VkPhysicalDeviceProperties2:

  - VkPhysicalDeviceFaultPropertiesKHR

## New Enums

- VkDeviceFaultAddressTypeKHR

- VkDeviceFaultFlagBitsKHR

- VkDeviceFaultVendorBinaryHeaderVersionKHR

## New Bitmasks

- VkDeviceFaultFlagsKHR

## New Enum Constants

- `VK_KHR_DEVICE_FAULT_EXTENSION_NAME`

- `VK_KHR_DEVICE_FAULT_SPEC_VERSION`

- Extending VkStructureType:

  - VK_STRUCTURE_TYPE_DEVICE_FAULT_DEBUG_INFO_KHR

  - VK_STRUCTURE_TYPE_DEVICE_FAULT_INFO_KHR

  - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FAULT_FEATURES_KHR

  - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FAULT_PROPERTIES_KHR

## Version History

- Revision 0, 2024-03-01 (Ralph Potter)

  - Internal Revision

- Revision 1, 2025-06-10 (Craig Graham)

  - Revised API to support async fault queries.

## See Also

No cross-references are available

## Document Notes

For more information, see the Vulkan Specification.

This page is a generated document. Fixes and changes should be made to the generator scripts, not directly.

## Copyright

Copyright 2014-2026 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0