Mesa (master): gallium/radeon: assume X11 DRI3 can use at most 5 back buffers

Marek Olšák mareko at kemper.freedesktop.org
Wed Jun 29 18:12:16 UTC 2016


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

Author: Marek Olšák <marek.olsak at amd.com>
Date:   Mon Jun 27 19:45:30 2016 +0200

gallium/radeon: assume X11 DRI3 can use at most 5 back buffers

Reviewed-by: Nicolai Hähnle <nicolai.haehnle at amd.com>

---

 src/gallium/drivers/radeon/r600_pipe_common.h | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/gallium/drivers/radeon/r600_pipe_common.h b/src/gallium/drivers/radeon/r600_pipe_common.h
index fc50b91..c145dc3 100644
--- a/src/gallium/drivers/radeon/r600_pipe_common.h
+++ b/src/gallium/drivers/radeon/r600_pipe_common.h
@@ -570,6 +570,10 @@ struct r600_common_context {
 	 * in r600_texture because r600_texture can be shared by multiple
 	 * contexts. This is for back buffers only. We shouldn't get too many
 	 * of those.
+	 *
+	 * X11 DRI3 rotates among a finite set of back buffers. They should
+	 * all fit in this array. If they don't, separate DCC might never be
+	 * enabled by DCC stat gathering.
 	 */
 	struct {
 		struct r600_texture		*tex;
@@ -579,7 +583,7 @@ struct r600_common_context {
 		 * the least recently used slot is evicted based on this. */
 		int64_t				last_use_timestamp;
 		bool				query_active;
-	} dcc_stats[2];
+	} dcc_stats[5];
 
 	/* The list of all texture buffer objects in this context.
 	 * This list is walked when a buffer is invalidated/reallocated and




More information about the mesa-commit mailing list