summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/radeonsi/si_dma.c
diff options
context:
space:
mode:
authorMarek Olšák <marek.olsak@amd.com>2016-04-26 19:29:55 +0200
committerMarek Olšák <marek.olsak@amd.com>2016-05-10 17:20:09 +0200
commita512da36aed3a1c893b34681dec2dfd51d250ee5 (patch)
treec75c1df6ae8562356ffff061f21fefffc2ebed04 /src/gallium/drivers/radeonsi/si_dma.c
parentf837c37f022ecf4925a574961027eb12f125e66c (diff)
downloadexternal_mesa3d-a512da36aed3a1c893b34681dec2dfd51d250ee5.zip
external_mesa3d-a512da36aed3a1c893b34681dec2dfd51d250ee5.tar.gz
external_mesa3d-a512da36aed3a1c893b34681dec2dfd51d250ee5.tar.bz2
gallium/radeon: fix (S)DMA read-after-write hazards
Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Diffstat (limited to 'src/gallium/drivers/radeonsi/si_dma.c')
-rw-r--r--src/gallium/drivers/radeonsi/si_dma.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/gallium/drivers/radeonsi/si_dma.c b/src/gallium/drivers/radeonsi/si_dma.c
index 033eb7b..03321f5 100644
--- a/src/gallium/drivers/radeonsi/si_dma.c
+++ b/src/gallium/drivers/radeonsi/si_dma.c
@@ -82,6 +82,7 @@ static void si_dma_copy_buffer(struct si_context *ctx,
src_offset += csize << shift;
size -= csize;
}
+ r600_dma_emit_wait_idle(&ctx->b);
}
static void si_dma_copy_tile(struct si_context *ctx,
@@ -188,6 +189,7 @@ static void si_dma_copy_tile(struct si_context *ctx,
addr += cheight * pitch;
tiled_y += cheight;
}
+ r600_dma_emit_wait_idle(&ctx->b);
}
static void si_dma_copy(struct pipe_context *ctx,