iris: Handle batch submission failure "better"

We used to not reset the batch, and just keep appending to it, so you'd
get the same invalid contents over and over.

I'd also really like to know about this, so aborting seems wise for now,
if not for the long term
This commit is contained in:
Kenneth Graunke 2018-06-23 12:13:03 -07:00
parent d0b55ca782
commit 8c54433275

View file

@ -457,15 +457,20 @@ _iris_batch_flush_fence(struct iris_batch *batch,
//throttle(iris);
if (ret < 0)
return ret;
if (ret >= 0) {
//if (iris->ctx.Const.ResetStrategy == GL_LOSE_CONTEXT_ON_RESET_ARB)
//iris_check_for_reset(ice);
//if (iris->ctx.Const.ResetStrategy == GL_LOSE_CONTEXT_ON_RESET_ARB)
//iris_check_for_reset(ice);
if (unlikely(INTEL_DEBUG & DEBUG_SYNC)) {
dbg_printf("waiting for idle\n");
iris_bo_wait_rendering(batch->bo);
if (unlikely(INTEL_DEBUG & DEBUG_SYNC)) {
dbg_printf("waiting for idle\n");
iris_bo_wait_rendering(batch->bo);
}
} else {
#ifdef DEBUG
fprintf(stderr, "iris: Failed to submit batchbuffer: %s\n",
strerror(-ret));
abort();
#endif
}
/* Clean up after the batch we submitted and prepare for a new one. */