[Mesa-dev] [Bug 52930] New: glXWaitX is often ineffective

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Sun Jul 29 18:03:55 PDT 2012


https://bugs.freedesktop.org/show_bug.cgi?id=52930

             Bug #: 52930
           Summary: glXWaitX is often ineffective
    Classification: Unclassified
           Product: Mesa
           Version: 8.0
          Platform: Other
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: medium
         Component: GLX
        AssignedTo: mesa-dev at lists.freedesktop.org
        ReportedBy: bugs.freedesktop at karlt.net


The description of glXWaitX says "X rendering calls made prior to glXWaitX are
guaranteed to be executed before GL rendering calls made after glXWaitX", but
glXWaitX is currently a no-op when direct rendering unless the current
drawable is a window and single buffered.  In situations where
dri2_copy_drawable is used it performs the required X server round trip.

At one point in history glXWaitX called XSync with direct rendering:
http://cgit.freedesktop.org/mesa/mesa/commit/src/glx/x11?id=63b51b5cf17ddde09b72a2811296f37b9a4c5ad2

It seems XSync should be used when dri2_copy_drawable is not necessary.
There is some discussion in this thread:
http://lists.freedesktop.org/archives/mesa-dev/2011-June/008124.html

Perhaps LastKnownRequestProcessed NextRequest can be used to determine whether
the XSync is necessary.  They could also detect that the XSync is not necessary
after dri2_copy_drawable.

glxWaitGL looks like a no-op in similar situations.
I wonder whether at least a glFlush is required here.

applegl and indirect contexts appear to support glXWaitX/GL.

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.


More information about the mesa-dev mailing list