<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div class="moz-cite-prefix">Cool, thanks!<br>
<br>
Reviewed-by: Lionel Landwerlin
<a class="moz-txt-link-rfc2396E" href="mailto:lionel.g.landwerlin@intel.com"><lionel.g.landwerlin@intel.com></a><br>
<br>
On 18/05/17 22:10, Jason Ekstrand wrote:<br>
</div>
<blockquote
cite="mid:CAOFGe95CjHOcADdHcohEShY8B2+xCD62DXkYtDuQo7-tHVKvig@mail.gmail.com"
type="cite">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<div dir="ltr">I just sent a patch to address that. Thanks!<br>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Thu, May 18, 2017 at 2:04 PM, Lionel
Landwerlin <span dir="ltr"><<a moz-do-not-send="true"
href="mailto:lionel.g.landwerlin@intel.com"
target="_blank">lionel.g.landwerlin@intel.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">This looks
good, but I wonder whether we're missing a vk_errorf() in
anv_QueueSubmit() when we get an error from
anv_cmd_buffer_execbuf().<br>
In that case it looks like we won't abort.
<div class="HOEnZb">
<div class="h5"><br>
<br>
On 18/05/17 21:51, Jason Ekstrand wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
This is mostly for running in our CI system to prevent
dEQP from<br>
continuing on to the next test if we get a GPU hang.
As it currently<br>
stands, dEQP uses the same VkDevice for almost all
tests and if one of<br>
the tests hangs, we set the anv_device::device_lost
flag and report<br>
VK_ERROR_DEVICE_LOST for all queue operations from
that point forward<br>
without sending anything to the GPU. dEQP will
happily continue trying<br>
to run tests and reporting failures until it
eventually gets crash that<br>
forces the test runner to start over. This
circumvents the problem by<br>
just aborting the process if we ever get a GPU hang.
Since this is not<br>
the recommended behavior most of the time, we hide it
behind an<br>
environment variable.<br>
<br>
Cc: Mark Janes <<a moz-do-not-send="true"
href="mailto:mark.a.janes@intel.com" target="_blank">mark.a.janes@intel.com</a>><br>
---<br>
src/intel/vulkan/anv_util.c | 5 +++++<br>
1 file changed, 5 insertions(+)<br>
<br>
diff --git a/src/intel/vulkan/anv_util.c
b/src/intel/vulkan/anv_util.c<br>
index ba91733..4b916e2 100644<br>
--- a/src/intel/vulkan/anv_util.c<br>
+++ b/src/intel/vulkan/anv_util.c<br>
@@ -30,6 +30,7 @@<br>
#include "anv_private.h"<br>
#include "vk_enum_to_str.h"<br>
+#include "util/debug.h"<br>
/** Log an error message. */<br>
void anv_printflike(1, 2)<br>
@@ -95,5 +96,9 @@ __vk_errorf(VkResult error, const
char *file, int line, const char *format, ...)<br>
fprintf(stderr, "%s:%d: %s\n", file, line,
error_str);<br>
}<br>
+ if (error == VK_ERROR_DEVICE_LOST &&<br>
+ env_var_as_boolean("ANV_<wbr>ABORT_ON_DEVICE_LOSS",
false))<br>
+ abort();<br>
+<br>
return error;<br>
}<br>
</blockquote>
<br>
<br>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</blockquote>
<p><br>
</p>
</body>
</html>