On Tue, 2009-11-24 at 03:47 -0800, Benjamin Otte wrote: > == locking in Mesa == > The GLX specification does not allow binding the same GLX context in > multiple threads at the same time. This is a requirement for both > Cairo's and GStreamer's threading model. An extension was proposed and > initial code developed to support this requirement in the same way as > Apple's GL does by default. Windows does not support this and would > require potentially expensive fallback code. > Links: > * http://people.freedesktop.org/~anholt/MESA_multithread_makecurrent.spec > Actions: > * Get review for suggested extension and include it in future Mesa releases > * Make Windows developers investigate the situation
Erik, I think this extension will be quite useful. My only concern with the current wording of MESA_multithread_makecurrent is that the extension will affect all applications, which will break any GL test or application that checks/relies on glXMakeContextCurrent failing when binding the same context to multiple threads. Perhaps such test/application doesn't exist, but if such app is known or likely to exist then it might be preferable to have the old behavior by default and require the applications that want to use this to feature the new behavior. Windows WGL spec is worded pretty similarly to GLX in this regard [1], and the extension could easily be modified to cover WGL too if wasn't the existence opengl32.dll. opengl32.dll implements all this logic and comes bundled with Windows, so it is virtually impossible for IHVs to change these semantics. The only way I see to make it work would be for the app to call wglGetProcAddress for every GL function it uses, and add a new "wglMakecurrentMESA" entrypoint that would do what we want... quite ugly. Jose [1] http://msdn.microsoft.com/en-us/library/dd374387(VS.85).aspx ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Mesa3d-dev mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/mesa3d-dev
