KhronosGroup / KhronosGroup/Vulkan-ValidationLayers

GPU AV: False positive "access out of bounds" caused by wrong buffer being checked when using multiview

Open
#12,545 6 comments 0 reactions 1 assignee View on GitHub

@spencer-lunarg is already working on this.

Since Jun 26, 2026.

Dominant language
C++
Stars
1k
Forks
505
Avg merge
11h 25m
Merged PRs (30d)
229

Description

Environment:

  • OS: Windows 11
  • GPU and driver version: Nvidia GeForce RTX 5080, 610.62
  • SDK or header version if building from repo: Latest main (5e72d40395d07930c935d0624cd7db5f1a144c5e)
  • Options enabled (synchronization, best practices, etc.): GPU AV + Shader instrumentation

Describe the Issue

Same issue as #11738 but only when using multiview this time.

[ Debug region: [Bloom] Upsample 5->4 ] vkCmdDispatch(): (set = 1, binding = 0, index 0)  access out of bounds. The descriptor buffer (VkBuffer 0x43c000000043c[[ColorManagement] execute (Parameter buffer)]) size is 28 bytes, 28 bytes were bound, and the highest out of bounds access was at [51] bytes
Stage = Compute.  Global invocation ID (x, y, z) = (16, 44, 0)
Command buffer (0xd22e2fc940)
	Compute Dispatch Index 23
Shader Module (0xec00000000ec) (internal ID 83)
Shader validation error occurred at XXXXX\bloom\upsample.slang:57:2

57: 	float4 color = {lerp(current.rgb, blur, u_factor), current.a};
     ^.
The Vulkan spec states: If any stage of the VkPipeline object bound to the pipeline bind point used by this command accesses a uniform buffer, and that stage was created without enabling either VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS or VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2 for uniformBuffers, and the robustBufferAccess feature is not enabled, that stage must not access values outside of the range of the buffer as specified in the descriptor set bound to the same pipeline bind point (https://docs.vulkan.org/spec/latest/chapters/dispatch.html#VUID-vkCmdDispatch-uniformBuffers-06935)

Valid Usage ID
VUID-vkCmdDispatch-uniformBuffers-06935

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.