KhronosGroup / KhronosGroup/Vulkan-Docs
vkGetFenceStatus and VK_ERROR_DEVICE_LOST
- 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
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