KhronosGroup / KhronosGroup/Vulkan-Docs

vkGetFenceStatus and VK_ERROR_DEVICE_LOST

Open
#430 6 comments 0 reactions 0 assignees View on GitHub
Resolving Inside Khronos Specification
Dominant language
JavaScript
Stars
3.3k
Forks
549
Avg merge
5d 5h
Merged PRs (30d)
2

Description

The `vkGetFenceStatus` function can return `VK_SUCCESS`, `VK_NOT_READY`, `VK_ERROR_DEVICE_LOST`, or OOM errors.

Imagine the following:

- I submit something to a queue with `vkQueueSubmit` and pass a fence.
- After a few seconds I call `vkGetFenceStatus`, which returns `VK_SUCCESS`.
- I unplug my video card.
- I call `vkGetFenceStatus` again.

Should the second call return `VK_SUCCESS` or `VK_ERROR_DEVICE_LOST`?
In other words should the implementation check for a lost device even though it knows for sure that the fence is signaled?

Same problem for `VK_NOT_READY`.

Contributor guide

Open the contributing guide

Research direction

Start by reading the vkGetFenceStatus and vkQueueSubmit specification text and the listed return-status definitions. Resolve whether a signaled or unsignaled fence should still report VK_ERROR_DEVICE_LOST after device loss, then update the relevant specification wording once the expected behavior is decided.

Written by the indexing model from the issue text.

Assessment

Domain
api, documentation
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.