Mesa (master): radeonsi: add AMD_DEBUG=nodmaclear for debugging

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Mon Jan 6 20:41:55 UTC 2020


Module: Mesa
Branch: master
Commit: 0c9e7a67f92ab1c2ba7ed1e3fb9a647bd1f811ad
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=0c9e7a67f92ab1c2ba7ed1e3fb9a647bd1f811ad

Author: Marek Olšák <marek.olsak at amd.com>
Date:   Thu Jan  2 15:34:00 2020 -0500

radeonsi: add AMD_DEBUG=nodmaclear for debugging

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer at amd.com>
Reviewed-By: Timur Kristóf <timur.kristof at gmail.com>

---

 src/gallium/drivers/radeonsi/si_dma_cs.c | 3 ++-
 src/gallium/drivers/radeonsi/si_pipe.c   | 1 +
 src/gallium/drivers/radeonsi/si_pipe.h   | 1 +
 3 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/gallium/drivers/radeonsi/si_dma_cs.c b/src/gallium/drivers/radeonsi/si_dma_cs.c
index c550a62ee0b..9cb192307a2 100644
--- a/src/gallium/drivers/radeonsi/si_dma_cs.c
+++ b/src/gallium/drivers/radeonsi/si_dma_cs.c
@@ -75,7 +75,8 @@ void si_sdma_clear_buffer(struct si_context *sctx, struct pipe_resource *dst,
 	assert(size);
 	assert(size % 4 == 0);
 
-	if (!cs || dst->flags & PIPE_RESOURCE_FLAG_SPARSE) {
+	if (!cs || dst->flags & PIPE_RESOURCE_FLAG_SPARSE ||
+	    sctx->screen->debug_flags & DBG(NO_SDMA_CLEARS)) {
 		sctx->b.clear_buffer(&sctx->b, dst, offset, size, &clear_value, 4);
 		return;
 	}
diff --git a/src/gallium/drivers/radeonsi/si_pipe.c b/src/gallium/drivers/radeonsi/si_pipe.c
index 3bea85cf8dc..9c26da9d49c 100644
--- a/src/gallium/drivers/radeonsi/si_pipe.c
+++ b/src/gallium/drivers/radeonsi/si_pipe.c
@@ -87,6 +87,7 @@ static const struct debug_named_value debug_options[] = {
 	/* Driver options: */
 	{ "forcedma", DBG(FORCE_SDMA), "Use SDMA for all operations when possible." },
 	{ "nodma", DBG(NO_SDMA), "Disable SDMA" },
+	{ "nodmaclear", DBG(NO_SDMA_CLEARS), "Disable SDMA clears" },
 	{ "nowc", DBG(NO_WC), "Disable GTT write combining" },
 	{ "check_vm", DBG(CHECK_VM), "Check VM faults and dump debug info." },
 	{ "reserve_vmid", DBG(RESERVE_VMID), "Force VMID reservation per context." },
diff --git a/src/gallium/drivers/radeonsi/si_pipe.h b/src/gallium/drivers/radeonsi/si_pipe.h
index 1f64f77342f..0aef94b0a2b 100644
--- a/src/gallium/drivers/radeonsi/si_pipe.h
+++ b/src/gallium/drivers/radeonsi/si_pipe.h
@@ -168,6 +168,7 @@ enum {
 	/* Driver options: */
 	DBG_FORCE_SDMA,
 	DBG_NO_SDMA,
+	DBG_NO_SDMA_CLEARS,
 	DBG_NO_WC,
 	DBG_CHECK_VM,
 	DBG_RESERVE_VMID,




More information about the mesa-commit mailing list