radeonsi: check ctx->sdma_cs before using it

e5167a9276 disabled SDMA for gfx8.
This caused 3 piglit arb_sparse_buffer tests (basic, buffer-data
and commit) to crash on GFX8.

Reported-by: Michel Dänzer <michel@daenzer.net>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Fixes: e5167a9276 ("radeonsi: disable SDMA on gfx8 to fix corruption on RX 580")
This commit is contained in:
Pierre-Eric Pelloux-Prayer 2020-01-07 15:57:10 +01:00
parent e565fd4255
commit 5f8daae4d8
1 changed files with 2 additions and 1 deletions

View File

@ -797,7 +797,8 @@ static bool si_resource_commit(struct pipe_context *pctx,
si_flush_dma_cs(ctx, PIPE_FLUSH_ASYNC, NULL);
}
ctx->ws->cs_sync_flush(ctx->sdma_cs);
if (ctx->sdma_cs)
ctx->ws->cs_sync_flush(ctx->sdma_cs);
ctx->ws->cs_sync_flush(ctx->gfx_cs);
assert(resource->target == PIPE_BUFFER);