From: Emma Anholt Date: Tue, 22 Jun 2021 21:55:37 +0000 (-0700) Subject: freedreno: swap ->valid when shadowing resources. X-Git-Tag: upstream/21.2.3~1074 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f413b30ad486ac9ca19db5309d54b26907f0c6ee;p=platform%2Fupstream%2Fmesa.git freedreno: swap ->valid when shadowing resources. The valid flag indicates whether the bo has had any data written to it. Failure to swap it meant that if for some reason we fell back to SW mappings during the blit from shadow, the PIPE_MAP_READ staging blit would get dropped. Part-of: --- diff --git a/src/gallium/drivers/freedreno/freedreno_resource.c b/src/gallium/drivers/freedreno/freedreno_resource.c index 56df34f..95c5195 100644 --- a/src/gallium/drivers/freedreno/freedreno_resource.c +++ b/src/gallium/drivers/freedreno/freedreno_resource.c @@ -442,6 +442,7 @@ fd_try_shadow_resource(struct fd_context *ctx, struct fd_resource *rsc, rsc->track, shadow, shadow->b.b.reference.count, shadow->track); swap(rsc->bo, shadow->bo); + swap(rsc->valid, shadow->valid); swap(rsc->layout, shadow->layout); rsc->seqno = p_atomic_inc_return(&ctx->screen->rsc_seqno);