We still call flush method of DRI2_Flush extension in other functions of egl_dri2 driver. for example, dri2_copy_buffers(), because we expect all the rendering to this drawable have been flushed before copying the buffers.
The code I added eventually invokes st->pipe->flush(), so I think it handles correctly, any concern? Cooper On Tue, Aug 16, 2011 at 4:32 PM, Chia-I Wu <olva...@gmail.com> wrote: > 2011/8/16 Cooper Yuan <coopery...@gmail.com>: > > this DRI2_Flush extension is used by egl driver, but DRI2_Flush extension > > doesn't implement dri2_flush_drawable() function. > I do not recall what DRI2_Flush is for. It makes sense to simply > call glFinish when eglWaitClient is called, if DRI2_Flush has > different semantics than glFinish. > > 2011/8/16 Michel Dänzer <mic...@daenzer.net> > >> > >> On Mon, 2011-08-15 at 19:32 +0800, Cooper Yuan wrote: > >> > Hi All, please review this changelist that's going to enable > >> > eglWaitClient() which has the same effect with glFinish according to > >> > specification. > >> > before, egl applications using pixmap or pbuffer flicker always > >> > because of no flush. > >> > > >> > > >> > Cooper > >> > --- > >> > src/gallium/state_trackers/dri/drm/dri2.c | 4 ++++ > >> > 1 files changed, 4 insertions(+), 0 deletions(-) > >> > > >> > > >> > diff --git a/src/gallium/state_trackers/dri/drm/dri2.c > >> > b/src/gallium/state_trackers/dri/drm/dri2.c > >> > index d491e46..908a735 100644 > >> > --- a/src/gallium/state_trackers/dri/drm/dri2.c > >> > +++ b/src/gallium/state_trackers/dri/drm/dri2.c > >> > @@ -46,6 +46,10 @@ > >> > static void > >> > dri2_flush_drawable(__DRIdrawable *draw) > >> > { > >> > + struct dri_drawable *drawable = dri_drawable(draw); > >> > + struct dri_context *ctx = dri_get_current(draw->driScreenPriv); > >> > + > >> > + ctx->st->flush(ctx->st, 0, NULL); > >> > } > >> > >> Shouldn't this rather be dealt with in EGL code? > >> > >> -- > >> Earthling Michel Dänzer | > http://www.amd.com > >> Libre software enthusiast | Debian, X and DRI developer > > > > > > _______________________________________________ > > mesa-dev mailing list > > mesa-dev@lists.freedesktop.org > > http://lists.freedesktop.org/mailman/listinfo/mesa-dev > > > > > > > > -- > o...@lunarg.com >
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev