diff options
author | Rob Clark <[email protected]> | 2019-07-28 10:04:25 -0700 |
---|---|---|
committer | Rob Clark <[email protected]> | 2019-08-02 10:24:14 -0700 |
commit | e439f63467419d73e74bcefe07fd6094f34d7ae5 (patch) | |
tree | 32b6260d077d3a8910a64f80fa6778c358c3d691 /src/gallium/drivers/freedreno | |
parent | c93eae7f108d81239a03a195db334d41322d9152 (diff) |
freedreno/batch: always update last_fence
Not all flush paths come thru fd_context_flush(), so we should also set
last_fence in the batch flush path. This avoids some no-op flushes just
to get a fence. For example when pctx->flush_resource() triggers a
flush.
We should probably keep the last_fence update in fd_context_flush() as
well to handle deferred flush case.
Signed-off-by: Rob Clark <[email protected]>
Reviewed-by: Eric Anholt <[email protected]>
Diffstat (limited to 'src/gallium/drivers/freedreno')
-rw-r--r-- | src/gallium/drivers/freedreno/freedreno_batch.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/gallium/drivers/freedreno/freedreno_batch.c b/src/gallium/drivers/freedreno/freedreno_batch.c index 35a88dfe1e2..6bab243453d 100644 --- a/src/gallium/drivers/freedreno/freedreno_batch.c +++ b/src/gallium/drivers/freedreno/freedreno_batch.c @@ -325,6 +325,8 @@ batch_flush(struct fd_batch *batch) batch->flushed = true; + fd_fence_ref(&batch->ctx->last_fence, batch->fence); + if (batch->ctx->screen->reorder) { struct fd_batch *tmp = NULL; fd_batch_reference(&tmp, batch); |