From e21a96791c70477f348f0285b52a9decdd9a300c Mon Sep 17 00:00:00 2001 From: "Igor V. Kovalenko" Date: Tue, 3 Nov 2020 09:19:06 +0300 Subject: [PATCH] r600: amend space check for chips older than EVERGREEN evergreen_emit_atomic_buffer_setup_count is only called if chip >= EVERGREEN otherwise atomic_used_mask is left uninitialized when unconditionally used by r600_need_cs_space so it might want more space than needed fix this by always initializing atomic_used_mask Fixes: 32529e60849 ("r600/eg: rework atomic counter emission with flushes") Reviewed-by: Dave Airlie Part-of: (cherry picked from commit 7ae81d65a495a6ba6da6dda6bcbd91a30cc2a8dc) --- .pick_status.json | 2 +- src/gallium/drivers/r600/r600_state_common.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index 07a1ec42ccc..ed83e28d011 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -4837,7 +4837,7 @@ "description": "r600: amend space check for chips older than EVERGREEN", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "master_sha": null, "because_sha": "32529e60849dd20d167f14cb8542c5798343f0e0" }, diff --git a/src/gallium/drivers/r600/r600_state_common.c b/src/gallium/drivers/r600/r600_state_common.c index 89429dd504e..c0aa2f7bbdd 100644 --- a/src/gallium/drivers/r600/r600_state_common.c +++ b/src/gallium/drivers/r600/r600_state_common.c @@ -2062,7 +2062,7 @@ static void r600_draw_vbo(struct pipe_context *ctx, const struct pipe_draw_info unsigned index_size = info->index_size; int index_bias; struct r600_shader_atomic combined_atomics[8]; - uint8_t atomic_used_mask; + uint8_t atomic_used_mask = 0; if (!info->indirect && !info->count && (index_size || !info->count_from_stream_output)) { return;