From aac07bb79c66202f19d2d28ca6daca71a459d748 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Sun, 25 Dec 2016 18:34:16 +0100 Subject: [PATCH] radeonsi: don't count fast clears and prefetches into CP DMA stats MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Reviewed-by: Bas Nieuwenhuizen Reviewed-by: Nicolai Hähnle --- src/gallium/drivers/radeonsi/si_cp_dma.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/radeonsi/si_cp_dma.c b/src/gallium/drivers/radeonsi/si_cp_dma.c index 596e32c957c..1996e669740 100644 --- a/src/gallium/drivers/radeonsi/si_cp_dma.c +++ b/src/gallium/drivers/radeonsi/si_cp_dma.c @@ -234,7 +234,9 @@ static void si_clear_buffer(struct pipe_context *ctx, struct pipe_resource *dst, if (tc_l2_flag) rdst->TC_L2_dirty = true; - sctx->b.num_cp_dma_calls++; + /* If it's not a framebuffer fast clear... */ + if (coher == R600_COHERENCY_SHADER) + sctx->b.num_cp_dma_calls++; } /** @@ -360,7 +362,9 @@ void si_copy_buffer(struct si_context *sctx, if (tc_l2_flag) r600_resource(dst)->TC_L2_dirty = true; - sctx->b.num_cp_dma_calls++; + /* If it's not a prefetch... */ + if (dst_offset != src_offset) + sctx->b.num_cp_dma_calls++; } void si_init_cp_dma_functions(struct si_context *sctx) -- 2.30.2