On Tue, 2017-09-26 at 19:11 +0200, Samuel Pitoiset wrote: > > On 09/26/2017 06:57 PM, Juan A. Suarez Romero wrote: > > On Tue, 2017-07-25 at 17:56 +0200, Samuel Pitoiset wrote: > > > > > > On 07/25/2017 05:51 PM, Nicolai Hähnle wrote: > > > > On 25.07.2017 15:29, Samuel Pitoiset wrote: > > > > > This is a workaround which fixes a rendering issue with Dawn > > > > > Of War III in full bindless mode because a depth texture most > > > > > likely doesn't invoke the decompression pass when it should. > > > > > > > > So do I understand correctly that the previous depth target is used > > > > bindless, and for whatever reason the si_decompress_depth doesn't > > > > properly trigger for bindless? Why doesn't it trigger? > > > > > > Exactly, but I still don't know why it is not triggered correctly. > > > > Hey, Samuel! > > > > Are you investigating the issue Nicolai raised? > > Hey, > > This has been fixed by Marek. > > f4d095cc651af005d5760aa9dd06e6ae7007fab6 > > Thanks. >
Sweet! Thank you very much! J.A. > > > > Asking because this patch didn't get any R-b, so I'm wondering if this > > work in progress. > > > > Thanks > > > > J.A. > > > > > > > > > > > > > Cheers, > > > > Nicolai > > > > > > > > > > > > > > Performance drops by 1% which doesn't really matter. > > > > > > > > > > Fixes: 2263610827 ("radeonsi: flush DB caches only when transitioning > > > > > from DB to texturing") > > > > > Signed-off-by: Samuel Pitoiset <samuel.pitoi...@gmail.com> > > > > > Cc: "17.2" <mesa-sta...@lists.freedesktop.org> > > > > > --- > > > > > src/gallium/drivers/radeonsi/si_state.c | 10 ++++++++++ > > > > > 1 file changed, 10 insertions(+) > > > > > > > > > > diff --git a/src/gallium/drivers/radeonsi/si_state.c > > > > > b/src/gallium/drivers/radeonsi/si_state.c > > > > > index 7e3d1a02e0..675b61ad7f 100644 > > > > > --- a/src/gallium/drivers/radeonsi/si_state.c > > > > > +++ b/src/gallium/drivers/radeonsi/si_state.c > > > > > @@ -2546,6 +2546,16 @@ static void si_set_framebuffer_state(struct > > > > > pipe_context *ctx, > > > > > } > > > > > sctx->b.flags |= SI_CONTEXT_CS_PARTIAL_FLUSH; > > > > > + /* Flush DB caches when a Z/stencil buffer is attached to the > > > > > + * framebuffer. This is a workaround which fixes a rendering > > > > > issue with > > > > > + * Dawn Of War III in full bindless mode because a depth texture > > > > > most > > > > > + * likely doesn't invoke the decompression pass when it should. > > > > > + * > > > > > + * TODO: Figure out a better fix. > > > > > + */ > > > > > + if (sctx->framebuffer.state.zsbuf) > > > > > + sctx->b.flags |= SI_CONTEXT_FLUSH_AND_INV_DB; > > > > > + > > > > > /* u_blitter doesn't invoke depth decompression when it does > > > > > multiple > > > > > * blits in a row, but the only case when it matters for DB is > > > > > when > > > > > * doing generate_mipmap. So here we flush DB manually between > > > > > > > > > > > > > > > > > > > _______________________________________________ > > > mesa-dev mailing list > > > mesa-dev@lists.freedesktop.org > > > https://lists.freedesktop.org/mailman/listinfo/mesa-dev > > _______________________________________________ > mesa-stable mailing list > mesa-sta...@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/mesa-stable _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev