From: Pierre-Eric Pelloux-Prayer Date: Fri, 31 May 2019 12:39:46 +0000 (+0200) Subject: radeonsi: init sctx->dma_copy before using it X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=4583f09caa5aef719a1eec282f24a86c789cbba6;p=mesa.git radeonsi: init sctx->dma_copy before using it Commit a1378639ab19 reordered context functions initializations but broke sctx->b.resource_copy_region init when using AMD_DEBUG=forcedma. In this case sctx->dma_copy was assigned a value after being used in: sctx->b.resource_copy_region = sctx->dma_copy; This commit moves the FORCE_DMA special case after sctx->dma_copy initialization. See https://bugs.freedesktop.org/show_bug.cgi?id=110422 Signed-off-by: Marek Olšák --- diff --git a/src/gallium/drivers/radeonsi/si_pipe.c b/src/gallium/drivers/radeonsi/si_pipe.c index c19a2cd97d3..1faaa22ab0d 100644 --- a/src/gallium/drivers/radeonsi/si_pipe.c +++ b/src/gallium/drivers/radeonsi/si_pipe.c @@ -505,9 +505,6 @@ static struct pipe_context *si_create_context(struct pipe_screen *screen, si_init_query_functions(sctx); si_init_state_compute_functions(sctx); - if (sscreen->debug_flags & DBG(FORCE_DMA)) - sctx->b.resource_copy_region = sctx->dma_copy; - /* Initialize graphics-only context functions. */ if (sctx->has_graphics) { si_init_context_texture_functions(sctx); @@ -532,6 +529,9 @@ static struct pipe_context *si_create_context(struct pipe_screen *screen, else si_init_dma_functions(sctx); + if (sscreen->debug_flags & DBG(FORCE_DMA)) + sctx->b.resource_copy_region = sctx->dma_copy; + sctx->sample_mask = 0xffff; /* Initialize multimedia functions. */