summaryrefslogtreecommitdiffstats
path: root/src/intel/vulkan
diff options
context:
space:
mode:
authorJason Ekstrand <[email protected]>2018-03-13 12:26:20 -0700
committerJason Ekstrand <[email protected]>2018-10-26 08:40:23 -0500
commit292ebdbf985f09e9af3dec28af784247510e0904 (patch)
tree40c1317fa956ee460249b16fdbfbbdfe1cd0b0ca /src/intel/vulkan
parentcd0960b430517b17cdead266e05a81ac586cf970 (diff)
anv: Handle the device loss abort in anv_device_set_lost
Reviewed-by: Lionel Landwerlin <[email protected]> Reviewed-by: Eric Engestrom <[email protected]>
Diffstat (limited to 'src/intel/vulkan')
-rw-r--r--src/intel/vulkan/anv_device.c11
-rw-r--r--src/intel/vulkan/anv_util.c5
2 files changed, 11 insertions, 5 deletions
diff --git a/src/intel/vulkan/anv_device.c b/src/intel/vulkan/anv_device.c
index b4034145a55..70fc51ff306 100644
--- a/src/intel/vulkan/anv_device.c
+++ b/src/intel/vulkan/anv_device.c
@@ -2052,6 +2052,17 @@ void
anv_device_set_lost(struct anv_device *device, const char *msg, ...)
{
device->_lost = true;
+
+ if (env_var_as_boolean("ANV_ABORT_ON_DEVICE_LOSS", false)) {
+ intel_loge("Device lost!");
+
+ va_list ap;
+ va_start(ap, msg);
+ intel_loge_v(msg, ap);
+ va_end(ap);
+
+ abort();
+ }
}
VkResult
diff --git a/src/intel/vulkan/anv_util.c b/src/intel/vulkan/anv_util.c
index 9082707624c..8ccb61b35c1 100644
--- a/src/intel/vulkan/anv_util.c
+++ b/src/intel/vulkan/anv_util.c
@@ -30,7 +30,6 @@
#include "anv_private.h"
#include "vk_enum_to_str.h"
-#include "util/debug.h"
/** Log an error message. */
void anv_printflike(1, 2)
@@ -112,9 +111,5 @@ __vk_errorf(struct anv_instance *instance, const void *object,
intel_loge("%s", report);
- if (error == VK_ERROR_DEVICE_LOST &&
- env_var_as_boolean("ANV_ABORT_ON_DEVICE_LOSS", false))
- abort();
-
return error;
}