KhronosGroup / KhronosGroup/Vulkan-ValidationLayers
Report hint that external subpass dependency does not cover layout transition
- Dominant language
- C++
- Stars
- 1k
- Forks
- 504
- Avg merge
- 11h 35m
- Merged PRs (30d)
- 224
Description
Inspired by: https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/9903
When there is an error message that outside-of-renderpass access (e.g. compute shader) conflicts with initial/final layout transition done by render pass and:
a) render pass overrides implicit external subpass dependency
b) the first/last subpass that used the attachment does not match any subpass value from corresponding external subpass dependencies
Under these conditions there's a chance external dependency specified incorrect subpass (for example 0 or subpassCount-1 instead of the first/last subpass that used the attachment) which makes initial/final layout transition unsynchronized which leads to this error.
This information should be provided in the form of neutral Vulkan Insight error message suffix.
The implementation will need to extend the structure that serializes accesses. Add a 32/64 bit field where each bit is identifier of a specific scenario (in our case it can be kSrcExternalSubpassDependencyMissesTransition, kDstExternalSubpassDependencyMissesTransition).
Contributor guide
Assessment
This issue has not been assessed yet.