this DRI2_Flush extension is used by egl driver, but DRI2_Flush extension doesn't implement dri2_flush_drawable() function.<br><br><div class="gmail_quote">2011/8/16 Michel Dänzer <span dir="ltr"><<a href="mailto:michel@daenzer.net">michel@daenzer.net</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div><div></div><div class="h5">On Mon, 2011-08-15 at 19:32 +0800, Cooper Yuan wrote:<br>
> Hi All, please review this changelist that's going to enable<br>
> eglWaitClient() which has the same effect with glFinish according to<br>
> specification.<br>
> before, egl applications using pixmap or pbuffer flicker always<br>
> because of no flush.<br>
><br>
><br>
> Cooper<br>
> ---<br>
> src/gallium/state_trackers/dri/drm/dri2.c | 4 ++++<br>
> 1 files changed, 4 insertions(+), 0 deletions(-)<br>
><br>
><br>
> diff --git a/src/gallium/state_trackers/dri/drm/dri2.c<br>
> b/src/gallium/state_trackers/dri/drm/dri2.c<br>
> index d491e46..908a735 100644<br>
> --- a/src/gallium/state_trackers/dri/drm/dri2.c<br>
> +++ b/src/gallium/state_trackers/dri/drm/dri2.c<br>
> @@ -46,6 +46,10 @@<br>
> static void<br>
> dri2_flush_drawable(__DRIdrawable *draw)<br>
> {<br>
> + struct dri_drawable *drawable = dri_drawable(draw);<br>
> + struct dri_context *ctx = dri_get_current(draw->driScreenPriv);<br>
> +<br>
> + ctx->st->flush(ctx->st, 0, NULL);<br>
> }<br>
<br>
</div></div>Shouldn't this rather be dealt with in EGL code?<br>
<font color="#888888"><br>
--<br>
Earthling Michel Dänzer | <a href="http://www.amd.com" target="_blank">http://www.amd.com</a><br>
Libre software enthusiast | Debian, X and DRI developer<br>
</font></blockquote></div><br>