Mesa (master): anv: Handle vkGetPhysicalDeviceQueueFamilyProperties with count == 0

Chad Versace chadversary at kemper.freedesktop.org
Tue Dec 27 20:31:51 UTC 2016


Module: Mesa
Branch: master
Commit: d6545f234593fb00d02fdc07f9b2a803d2b569f6
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=d6545f234593fb00d02fdc07f9b2a803d2b569f6

Author: Chad Versace <chadversary at chromium.org>
Date:   Tue Dec 27 10:25:58 2016 -0800

anv: Handle vkGetPhysicalDeviceQueueFamilyProperties with count == 0

The spec implicitly allows the incoming count to be 0. From the Vulkan
1.0.38 spec, Section 4.1 Physical Devices:

    If the value referenced by pQueueFamilyPropertyCount is not 0 [then
    do stuff].

Cc: mesa-stable at lists.freedesktop.org
Reviewed-by: Anuj Phogat <anuj.phogat at gmail.com>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>

---

 src/intel/vulkan/anv_device.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/src/intel/vulkan/anv_device.c b/src/intel/vulkan/anv_device.c
index 037ef82..323cae4 100644
--- a/src/intel/vulkan/anv_device.c
+++ b/src/intel/vulkan/anv_device.c
@@ -646,7 +646,14 @@ void anv_GetPhysicalDeviceQueueFamilyProperties(
       return;
    }
 
-   assert(*pCount >= 1);
+   /* The spec implicitly allows the incoming count to be 0. From the Vulkan
+    * 1.0.38 spec, Section 4.1 Physical Devices:
+    *
+    *     If the value referenced by pQueueFamilyPropertyCount is not 0 [then
+    *     do stuff].
+    */
+   if (*pCount == 0)
+      return;
 
    *pQueueFamilyProperties = (VkQueueFamilyProperties) {
       .queueFlags = VK_QUEUE_GRAPHICS_BIT |




More information about the mesa-commit mailing list