From 34ff4fbba658dbdfb2b0c852b07a0ee2db549d2e Mon Sep 17 00:00:00 2001 From: Jason Ekstrand Date: Mon, 22 Aug 2016 18:10:14 -0700 Subject: [PATCH] anv: Throw INCOMPATIBLE_DRIVER for non-fatal initialization errors The only reason we should throw INITIALIZATION_FAILED is if we have found useable intel hardware but have failed to bring it up for some reason. Otherwise, we should just throw INCOMPATIBLE_DRIVER which will turn into successfully advertising 0 physical devices Signed-off-by: Jason Ekstrand Reviewed-by: Bas Nieuwenhuizen Tested-by: Bas Nieuwenhuizen --- src/intel/vulkan/anv_device.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/intel/vulkan/anv_device.c b/src/intel/vulkan/anv_device.c index 6aa20eb5721..0d79ed92ac2 100644 --- a/src/intel/vulkan/anv_device.c +++ b/src/intel/vulkan/anv_device.c @@ -62,8 +62,7 @@ anv_physical_device_init(struct anv_physical_device *device, fd = open(path, O_RDWR | O_CLOEXEC); if (fd < 0) - return vk_errorf(VK_ERROR_INITIALIZATION_FAILED, - "failed to open %s: %m", path); + return vk_error(VK_ERROR_INCOMPATIBLE_DRIVER); device->_loader_data.loaderMagic = ICD_LOADER_MAGIC; device->instance = instance; @@ -73,15 +72,14 @@ anv_physical_device_init(struct anv_physical_device *device, device->chipset_id = anv_gem_get_param(fd, I915_PARAM_CHIPSET_ID); if (!device->chipset_id) { - result = VK_ERROR_INITIALIZATION_FAILED; + result = vk_error(VK_ERROR_INCOMPATIBLE_DRIVER); goto fail; } device->name = brw_get_device_name(device->chipset_id); device->info = brw_get_device_info(device->chipset_id); if (!device->info) { - result = vk_errorf(VK_ERROR_INITIALIZATION_FAILED, - "failed to get device info"); + result = vk_error(VK_ERROR_INCOMPATIBLE_DRIVER); goto fail; } -- 2.30.2