summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Engestrom <eric@igalia.com>2022-08-12 17:51:51 +0100
committerDylan Baker <dylan.c.baker@intel.com>2022-08-16 10:08:19 -0700
commit881c4d465428471bdd06909f3785b1a2f11d346d (patch)
treeccf4657d62d238a9ccefbcea1c7ce2e77f181e54
parent9ae5b4aff3b7cde5b692f8c7b875959c7d24c334 (diff)
downloadmesa-881c4d465428471bdd06909f3785b1a2f11d346d.tar.gz
vk/device-select-layer: fix .sType of VkPhysicalDeviceGroupProperties
The validation layers complained: > Validation Error: [ VUID-VkPhysicalDeviceGroupProperties-sType-sType ] Object 0: VK_NULL_HANDLE, type = VK_OBJECT_TYPE_DEVICE; | MessageID = 0xc9edee8b | vkEnumeratePhysicalDeviceGroups: parameter pPhysicalDeviceGroupProperties[0].sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES The Vulkan spec states: sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES (https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VUID-VkPhysicalDeviceGroupProperties-sType-sType) Signed-off-by: Eric Engestrom <eric@igalia.com> Reviewed-by: Georg Lehmann <dadschoorse@gmail.com> Fixes: c196ffaca6d ("vk-device-select: add device group support") Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18037> (cherry picked from commit 4588453815c58ec848b0ff6f18a08836e70f55df)
-rw-r--r--.pick_status.json2
-rw-r--r--src/vulkan/device-select-layer/device_select_layer.c3
2 files changed, 4 insertions, 1 deletions
diff --git a/.pick_status.json b/.pick_status.json
index abb71d610ce..c8cd90b88d2 100644
--- a/.pick_status.json
+++ b/.pick_status.json
@@ -850,7 +850,7 @@
"description": "vk/device-select-layer: fix .sType of VkPhysicalDeviceGroupProperties",
"nominated": true,
"nomination_type": 1,
- "resolution": 0,
+ "resolution": 1,
"main_sha": null,
"because_sha": "c196ffaca6d927e213d1c39ec9eed611fd01e2e1"
},
diff --git a/src/vulkan/device-select-layer/device_select_layer.c b/src/vulkan/device-select-layer/device_select_layer.c
index 89d6b1899ed..6e47b79ae56 100644
--- a/src/vulkan/device-select-layer/device_select_layer.c
+++ b/src/vulkan/device-select-layer/device_select_layer.c
@@ -561,6 +561,9 @@ static VkResult device_select_EnumeratePhysicalDeviceGroups(VkInstance instance,
goto out;
}
+ for (unsigned i = 0; i < physical_device_group_count; i++)
+ physical_device_groups[i].sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES;
+
result = info->EnumeratePhysicalDeviceGroups(instance, &physical_device_group_count, physical_device_groups);
if (result != VK_SUCCESS)
goto out;