Module: Mesa Branch: master Commit: 91730fb0ffc77682cfd5cebbefdad2f8f92f2431 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=91730fb0ffc77682cfd5cebbefdad2f8f92f2431
Author: Rob Clark <robdcl...@gmail.com> Date: Sun Nov 19 16:45:04 2017 -0500 freedreno: avoid unneccessary batch flush In some cases we can end up trying to add a write dependency on ourself, which shouldn't trigger a flush. Avoids an extra couple flushes per from in stk. Signed-off-by: Rob Clark <robdcl...@gmail.com> --- src/gallium/drivers/freedreno/freedreno_batch.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/gallium/drivers/freedreno/freedreno_batch.c b/src/gallium/drivers/freedreno/freedreno_batch.c index eff5e8dc35..9c66dc98bc 100644 --- a/src/gallium/drivers/freedreno/freedreno_batch.c +++ b/src/gallium/drivers/freedreno/freedreno_batch.c @@ -393,6 +393,8 @@ fd_batch_resource_used(struct fd_batch *batch, struct fd_resource *rsc, bool wri struct fd_batch *dep; foreach_batch(dep, cache, rsc->batch_mask) { struct fd_batch *b = NULL; + if (dep == batch) + continue; /* note that batch_add_dep could flush and unref dep, so * we need to hold a reference to keep it live for the * fd_bc_invalidate_batch() _______________________________________________ mesa-commit mailing list mesa-commit@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-commit