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

Contradictory VK_HUAWEI_subpass_shading with VUIDs #2438

Open
Karpov-Ruslan opened this issue Sep 19, 2024 · 1 comment
Open

Contradictory VK_HUAWEI_subpass_shading with VUIDs #2438

Karpov-Ruslan opened this issue Sep 19, 2024 · 1 comment

Comments

@Karpov-Ruslan
Copy link

VK_HUAWEI_subpass_shading gives the example of pipeline creation (I copied only the problematic part):

VkPipelineShaderStageCreateInfo subpassShadingPipelineStageCreateInfo {
  VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO, NULL,
  0, VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI,
  shaderModule, "main",
  &subpassShadingConstants
};

VkComputePipelineCreateInfo subpassShadingComputePipelineCreateInfo = {
  VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO, &subpassShadingPipelineCreateInfo,
  0, &subpassShadingPipelineStageCreateInfo,
  pipelineLayout, basePipelineHandle, basePipelineIndex
};

As you can see, when specifying the pipeline stage, the VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI value is used.
But VUID-VkComputePipelineCreateInfo-stage-00701 says: "The stage member of stage must be VK_SHADER_STAGE_COMPUTE_BIT".
Such a contradiction leads to incorrect operation of the VVL.

I suggest changing the VUID-VkComputePipelineCreateInfo-stage-00701 to "The stage member of stage must be either VK_SHADER_STAGE_COMPUTE_BIT or VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI"

@Karpov-Ruslan Karpov-Ruslan changed the title Contradictory VK_HUAWEI_subpass_shading with VUID-VkComputePipelineCreateInfo-stage-00701 Contradictory VK_HUAWEI_subpass_shading with VUIDs Oct 8, 2024
@Karpov-Ruslan
Copy link
Author

Karpov-Ruslan commented Oct 8, 2024

A similar problem is also observed with VUID-VkDescriptorSetLayoutBinding-descriptorType-01510.

According to the VK_HUAWEI_subpass_shading:

A subpass shading pipeline is a pipeline with the compute pipeline ability, allowed to read values from input attachments, and only allowed to be dispatched inside a stand-alone subpass.

I suggest adding a mention of VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI to VUID-VkDescriptorSetLayoutBinding-descriptorType-01510

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant