[Mesa-dev] [PATCH] radv: Return correct result in EnumeratePhysicalDevices

Nicolas Koch nioko1337 at gmail.com
Wed Oct 12 11:55:46 UTC 2016


If pPhysicalDevices is too small for all physical devices,
the driver must return VK_INCOMPLETE. Since only a single
physical device is supported, this is only the case when
pPhysicalDeviceCount == 0 && pPhysicalDevices != NULL.
---
 src/amd/vulkan/radv_device.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c
index 6e06863..71b1481 100644
--- a/src/amd/vulkan/radv_device.c
+++ b/src/amd/vulkan/radv_device.c
@@ -295,6 +295,8 @@ VkResult radv_EnumeratePhysicalDevices(
 	} else if (*pPhysicalDeviceCount >= 1) {
 		pPhysicalDevices[0] = radv_physical_device_to_handle(&instance->physicalDevice);
 		*pPhysicalDeviceCount = 1;
+	} else if (*pPhysicalDeviceCount < instance->physicalDeviceCount) {
+		return VK_INCOMPLETE;
 	} else {
 		*pPhysicalDeviceCount = 0;
 	}
-- 
2.10.0



More information about the mesa-dev mailing list