From: Jonathan Marek Date: Wed, 23 Jan 2019 20:07:31 +0000 (-0500) Subject: freedreno: fix sysmem rendering being used when clear is used X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=31a1348a66369a8d664aea6b9e8f5df388e92c16;p=mesa.git freedreno: fix sysmem rendering being used when clear is used This batch->cleared value is only used to decide to use sysmem rendering or not, so it should include any buffers that are affected by a clear. This is required because the a2xx fast clear doesn't work with sysmem rendering. The a22x "normal" clear path doesn't work with sysmem either. Signed-off-by: Jonathan Marek --- diff --git a/src/gallium/drivers/freedreno/freedreno_draw.c b/src/gallium/drivers/freedreno/freedreno_draw.c index c35b0d9f4a1..67038868104 100644 --- a/src/gallium/drivers/freedreno/freedreno_draw.c +++ b/src/gallium/drivers/freedreno/freedreno_draw.c @@ -410,7 +410,7 @@ fd_clear(struct pipe_context *pctx, unsigned buffers, * the depth buffer, etc) */ cleared_buffers = buffers & (FD_BUFFER_ALL & ~batch->restore); - batch->cleared |= cleared_buffers; + batch->cleared |= buffers; batch->invalidated |= cleared_buffers; batch->resolve |= buffers;