[Mesa-dev] [PATCH 3/3] radeonsi: fix perfcounter selection for SI_PC_MULTI_BLOCK layouts

Nicolai Hähnle nhaehnle at gmail.com
Mon Dec 14 09:06:30 PST 2015


From: Nicolai Hähnle <nicolai.haehnle at amd.com>

The incorrectly computed register count caused lockups.
---
 src/gallium/drivers/radeonsi/si_perfcounter.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/gallium/drivers/radeonsi/si_perfcounter.c b/src/gallium/drivers/radeonsi/si_perfcounter.c
index a0ddff6..7ee1dae 100644
--- a/src/gallium/drivers/radeonsi/si_perfcounter.c
+++ b/src/gallium/drivers/radeonsi/si_perfcounter.c
@@ -436,7 +436,7 @@ static void si_pc_emit_select(struct r600_common_context *ctx,
 
 		dw = count + regs->num_prelude;
 		if (count >= regs->num_multi)
-			count += regs->num_multi;
+			dw += regs->num_multi;
 		radeon_set_uconfig_reg_seq(cs, regs->select0, dw);
 		for (idx = 0; idx < regs->num_prelude; ++idx)
 			radeon_emit(cs, 0);
-- 
2.5.0



More information about the mesa-dev mailing list