The staging texture should always be idle, so I guess this just skips the needless GEM_WAIT_IDLE call?
Reviewed-by: Marek Olšák <marek.ol...@amd.com> Marek On Tue, Apr 15, 2014 at 7:46 AM, Michel Dänzer <mic...@daenzer.net> wrote: > From: Michel Dänzer <michel.daen...@amd.com> > > The transfer staging texture is always freshly allocated, so for write-only > transfers we don't need to explicitly wait for the BO to become idle. > > Squeezes a few hundered MB/s more out of x11perf -shmput500 with glamor. > > Signed-off-by: Michel Dänzer <michel.daen...@amd.com> > --- > src/gallium/drivers/radeon/r600_texture.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/src/gallium/drivers/radeon/r600_texture.c > b/src/gallium/drivers/radeon/r600_texture.c > index 293eeaa..c410543 100644 > --- a/src/gallium/drivers/radeon/r600_texture.c > +++ b/src/gallium/drivers/radeon/r600_texture.c > @@ -1039,6 +1039,8 @@ static void *r600_texture_transfer_map(struct > pipe_context *ctx, > > if (trans->staging) { > buf = trans->staging; > + if (!rtex->is_depth && !(usage & PIPE_TRANSFER_READ)) > + usage |= PIPE_TRANSFER_UNSYNCHRONIZED; > } else { > buf = &rtex->resource; > } > -- > 1.9.0 > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev