summaryrefslogtreecommitdiffstats
path: root/src/gallium
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2016-06-27 19:45:30 +0200
committerMarek Olšák <[email protected]>2016-06-29 20:12:00 +0200
commit82b39f352142a91ad98ae84f313287eb14197c90 (patch)
tree279868590eb33259f8ab2fb9c990c300bfeaa8a1 /src/gallium
parent9ae41227c24eac7245d90f27a3d024bccebbacd0 (diff)
gallium/radeon: assume X11 DRI3 can use at most 5 back buffers
Reviewed-by: Nicolai Hähnle <[email protected]>
Diffstat (limited to 'src/gallium')
-rw-r--r--src/gallium/drivers/radeon/r600_pipe_common.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/gallium/drivers/radeon/r600_pipe_common.h b/src/gallium/drivers/radeon/r600_pipe_common.h
index fc50b91d685..c145dc3a069 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