vc4: Don't record the seqno of a failed job submit.
authorEric Anholt <eric@anholt.net>
Tue, 26 Jan 2016 18:28:45 +0000 (10:28 -0800)
committerEric Anholt <eric@anholt.net>
Thu, 28 Jan 2016 04:05:37 +0000 (20:05 -0800)
On an error return, the returned seqno will probably be unset, so we'd
lose track of what we've submitted so far for waiting on in the
future.

Cc: "11.0 11.1" <mesa-stable@lists.freedesktop.org>
Signed-off-by: Eric Anholt <eric@anholt.net>
src/gallium/drivers/vc4/vc4_job.c

index 5d071ec862f6c5a1e6cd540ab5370319363ce1b0..e7b52e319f4bac1f14984d9ad469ffc1b9dae799 100644 (file)
@@ -245,11 +245,11 @@ vc4_job_submit(struct vc4_context *vc4)
                         fprintf(stderr, "Draw call returned %s.  "
                                         "Expect corruption.\n", strerror(errno));
                         warned = true;
+                } else if (!ret) {
+                        vc4->last_emit_seqno = submit.seqno;
                 }
         }
 
-        vc4->last_emit_seqno = submit.seqno;
-
         if (vc4_debug & VC4_DEBUG_ALWAYS_SYNC) {
                 if (!vc4_wait_seqno(vc4->screen, vc4->last_emit_seqno,
                                     PIPE_TIMEOUT_INFINITE, "sync")) {