radeonsi: don't do an L2 flush in compute_do_clear_or_copy if we're not syncing

Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9795>
This commit is contained in:
Marek Olšák 2021-03-19 23:51:32 -04:00 committed by Marge Bot
parent aed881e34e
commit 419e05d5f6
1 changed files with 3 additions and 1 deletions

View File

@ -262,7 +262,9 @@ static void si_compute_do_clear_or_copy(struct si_context *sctx, struct pipe_res
si_launch_grid_internal(sctx, &info, saved_cs, flags);
enum si_cache_policy cache_policy = get_cache_policy(sctx, coher, size);
sctx->flags |= cache_policy == L2_BYPASS ? SI_CONTEXT_WB_L2 : 0;
if (flags & SI_OP_SYNC_AFTER)
sctx->flags |= cache_policy == L2_BYPASS ? SI_CONTEXT_WB_L2 : 0;
if (cache_policy != L2_BYPASS)
si_resource(dst)->TC_L2_dirty = true;