Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Incorrect VUID-vkCmdDrawIndexed-Input-08734 VVL error #8523

Closed
HuYuxin opened this issue Sep 10, 2024 · 2 comments · Fixed by #8526
Closed

Incorrect VUID-vkCmdDrawIndexed-Input-08734 VVL error #8523

HuYuxin opened this issue Sep 10, 2024 · 2 comments · Fixed by #8526
Assignees
Labels
Bug Something isn't working

Comments

@HuYuxin
Copy link

HuYuxin commented Sep 10, 2024

Environment:

  • OS: Linux
  • GPU and driver version: NVIDIA, Driver Version: 535.183.01. Vulkan Instance Version: 1.3.283
  • SDK or header version if building from repo: 9abfdd2
  • Options enabled (synchronization, best practices, etc.):

Describe the Issue

We found that after applying this change https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+/9abfdd2897a8a130524bb31caf934440804068d2, some ANGLE tests start to hit VVL error VUID-vkCmdDrawIndexed-Input-08734:

vkCmdSetVertexInputEXT set pVertexAttributeDescriptions[1](binding 1, location 1) with format VK_FORMAT_R8G8B8A8_UINT but the vertex shader input is numeric type vec4 of float32. 

Expected behavior

In the renderdoc capture, here are the shader vertex input format:

Location 0, Binding 0, R16G16B16A16_SNORM
Location 1, Binding 1, R16G16B16_FLOAT
Location 2, Binding 2, R16G16B16A16_FLOAT
Location 3, Binding 3, R16G16_SNORM
Location 4, Binding 4, R16G16_SNORM
Location 5, Binding 5, R8G8B8A8_UINT
Location 6, Binding 6, R8G8B8A8_UNORM

And here are the pVertexAttributeDescriptions values passed o vkCmdSetVertexInputEXT:

Location 0, Binding 0, VK_FORMAT_R16G16B16A16_SNORM
Location 1, Binding 1, VK_FORMAT_R16G16B16_SFLOAT
Location 2, Binding 2, VK_FORMAT_R16G16B16A16_SFLOAT
Location 3, Binding 3, VK_FORMAT_R16G16_SNORM
Location 4, Binding 4, VK_FORMAT_R16G16_SNORM
Location 5, Binding 5, VK_FORMAT_R8G8B8A8_UINT
Location 6, Binding 6, VK_FORMAT_R8G8B8A8_UNORM

The formats at Location 1 binding 1 (R16G16B16_FLOAT and VK_FORMAT_R16G16B16_SFLOAT) seem to match, and they don't match with any of the formats mentioned in VVL error (VK_FORMAT_R8G8B8A8_UINT, vec4 of float32).

Valid Usage ID
VUID-vkCmdDrawIndexed-Input-08734

@spencer-lunarg spencer-lunarg added the Bug Something isn't working label Sep 10, 2024
@spencer-lunarg spencer-lunarg self-assigned this Sep 10, 2024
@spencer-lunarg
Copy link
Contributor

just noting that this might be related to #8491

@spencer-lunarg
Copy link
Contributor

So I can't reproduce on my Intel Mesa driver (nor Lavapipe), looking at the dump, it seems the trace dose 2 previous vkCmdSetVertexInputEXT that did set Location 1, Binding 1 to VK_FORMAT_R8G8B8A8_UINT

The likely issue is somehow the vkCmdBindPipeline prior to the 3rd vkCmdSetVertexInputEXT must not be getting called (it does on my machine, but will try on my Windows machine tomorrow as well)

hubot pushed a commit to google/angle that referenced this issue Sep 15, 2024
KhronosGroup/Vulkan-ValidationLayers#8523
is fixed. Remove the VVL error from the suppressed list.

Bug: b/365580001
Change-Id: Ib7a3819e740393306995df1eabec14e1b9878d7a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5860811
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants