From: Jason Ekstrand Date: Tue, 13 Mar 2018 19:26:20 +0000 (-0700) Subject: anv: Handle the device loss abort in anv_device_set_lost X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=292ebdbf985f09e9af3dec28af784247510e0904;p=mesa.git anv: Handle the device loss abort in anv_device_set_lost Reviewed-by: Lionel Landwerlin Reviewed-by: Eric Engestrom --- 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; }