KhronosGroup / KhronosGroup/Vulkan-ValidationLayers
GPU Assisted validation gives false positives when PushDescriptors are used
- Dominant language
- C++
- Stars
- 1k
- Forks
- 504
- Avg merge
- 11h 35m
- Merged PRs (30d)
- 224
Description
**Environment:**
- OS: Windows 11 Pro For Workstations
- GPU and driver version: Nvidia RTX 6000 Blackwell
- SDK or header version if building from repo: SDK 1.4.335.0
- Options enabled (synchronization, best practices, etc.): Validation->GPU-Assisted Validation
**Describe the Issue**
Hey, I'm getting lots of false positives with GPU assisted validation. Tracked it down to what seems like the layers not taking into account bindings that are set via push-descriptors. The errors are referencing old binding values for buffers that I confirmed are getting re-set via push-descriptors to different buffers that are the correct size. Errors go away if I disable push-descriptors.
Thanks
**Valid Usage ID**
```
ERROR : VALIDATION - Message Id Number: -1394099457 | Message Id Name: VUID-vkCmdDispatch-storageBuffers-06936
[ Debug region: POP_Torus::buildTorus ] vkCmdDispatch(): (set = 0, binding = 1, index 0) access out of bounds. The descriptor buffer (VkBuffer 0x1a5e0000001a5e[uniqueID: 5455]) size is 12 bytes, 12 bytes were bound, and the highest out of bounds access was at [47] bytes
Stage = Compute. Global invocation ID (x, y, z) = (0, 0, 0)
Command buffer (uniqueID: 3443, Main Content: Primary Gfx)(0x270d349b390)
Compute Dispatch Index 28
Shader Module (0x1a520000001a52) (internal ID 106)
Shader validation error occurred at Compute:52
52: UV[outId] = cornerUVs[i];
```
Contributor guide
Assessment
This issue has not been assessed yet.