anv: improve error message when failing to open device path
authorMike Blumenkrantz <michael.blumenkrantz@gmail.com>
Fri, 11 Sep 2020 13:00:53 +0000 (09:00 -0400)
committerMarge Bot <eric+marge@anholt.net>
Wed, 16 Sep 2020 19:58:16 +0000 (19:58 +0000)
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6747>

src/intel/vulkan/anv_device.c

index 7cf8667..5cef070 100644 (file)
@@ -322,8 +322,14 @@ anv_physical_device_try_create(struct anv_instance *instance,
    brw_process_intel_debug_variable();
 
    fd = open(path, O_RDWR | O_CLOEXEC);
-   if (fd < 0)
-      return vk_error(VK_ERROR_INCOMPATIBLE_DRIVER);
+   if (fd < 0) {
+      if (errno == ENOMEM) {
+         return vk_errorfi(instance, NULL, VK_ERROR_OUT_OF_HOST_MEMORY,
+                        "Unable to open device %s: out of memory", path);
+      }
+      return vk_errorfi(instance, NULL, VK_ERROR_INCOMPATIBLE_DRIVER,
+                        "Unable to open device %s: %m", path);
+   }
 
    struct gen_device_info devinfo;
    if (!gen_get_device_info_from_fd(fd, &devinfo)) {