OSDN Git Service

radeonsi: release saved resources in si_retile_dcc
authorPierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Thu, 9 Jan 2020 13:32:11 +0000 (14:32 +0100)
committerDylan Baker <dylan@pnwbakers.com>
Tue, 14 Jan 2020 21:26:12 +0000 (13:26 -0800)
Fixes: 1f21396431a ("radeonsi: add support for displayable DCC for multi-RB chips")
Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/2330
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
(cherry picked from commit 9211cbe07a0ffb0abdaf3da68f7aa3ee00a430d7)

src/gallium/drivers/radeonsi/si_compute_blit.c

index e07042a..70299a3 100644 (file)
@@ -503,6 +503,10 @@ void si_retile_dcc(struct si_context *sctx, struct si_texture *tex)
        /* Restore states. */
        ctx->bind_compute_state(ctx, saved_cs);
        ctx->set_shader_images(ctx, PIPE_SHADER_COMPUTE, 0, 3, saved_img);
+
+       for (unsigned i = 0; i < 3; i++) {
+               pipe_resource_reference(&saved_img[i].resource, NULL);
+       }
 }
 
 /* Expand FMASK to make it identity, so that image stores can ignore it. */