Vulkan: VK_EXT_subgroup_size_control should be chained on the stage
Previousl the VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT was chained on the VkComputePielineCreateInfo when instead it should be chained on the VkPipelineShaderStageCreateInfo, causing Vulkan Validation errors. Fixed: dawn:671 Change-Id: I9cc803a4f9120cf81f4e143818c3be58b73635d8 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/40604 Reviewed-by: Austin Eng <enga@chromium.org> Reviewed-by: Hao Li <hao.x.li@intel.com> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jiawei Shao <jiawei.shao@intel.com> Auto-Submit: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
This commit is contained in:
parent
e7e42ebbed
commit
ab8e7e5006
|
@ -51,14 +51,14 @@ namespace dawn_native { namespace vulkan {
|
||||||
|
|
||||||
Device* device = ToBackend(GetDevice());
|
Device* device = ToBackend(GetDevice());
|
||||||
|
|
||||||
PNextChainBuilder extChain(&createInfo);
|
PNextChainBuilder stageExtChain(&createInfo.stage);
|
||||||
|
|
||||||
VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT subgroupSizeInfo = {};
|
VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT subgroupSizeInfo = {};
|
||||||
uint32_t computeSubgroupSize = device->GetComputeSubgroupSize();
|
uint32_t computeSubgroupSize = device->GetComputeSubgroupSize();
|
||||||
if (computeSubgroupSize != 0u) {
|
if (computeSubgroupSize != 0u) {
|
||||||
ASSERT(device->GetDeviceInfo().HasExt(DeviceExt::SubgroupSizeControl));
|
ASSERT(device->GetDeviceInfo().HasExt(DeviceExt::SubgroupSizeControl));
|
||||||
subgroupSizeInfo.requiredSubgroupSize = computeSubgroupSize;
|
subgroupSizeInfo.requiredSubgroupSize = computeSubgroupSize;
|
||||||
extChain.Add(
|
stageExtChain.Add(
|
||||||
&subgroupSizeInfo,
|
&subgroupSizeInfo,
|
||||||
VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT);
|
VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue