Mesa (master): glx: Adjust the MESA_multithread_makecurrent spec to match implementation.
Eric Anholt
anholt at kemper.freedesktop.org
Sat Feb 26 22:07:31 UTC 2011
Module: Mesa
Branch: master
Commit: 5f889c5bf5221f2af2f34e47f20bd1b98c061fbe
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=5f889c5bf5221f2af2f34e47f20bd1b98c061fbe
Author: Eric Anholt <eric at anholt.net>
Date: Thu Feb 24 15:25:59 2011 -0800
glx: Adjust the MESA_multithread_makecurrent spec to match implementation.
This came out of discussion at the office today, and we agreed that
solving this for indirect wasn't really interesting, though the
server-side change would be of a similar level of difficulty.
---
docs/MESA_multithread_makecurrent.spec | 29 ++++++++++++++++++++++++++---
1 files changed, 26 insertions(+), 3 deletions(-)
diff --git a/docs/MESA_multithread_makecurrent.spec b/docs/MESA_multithread_makecurrent.spec
index 68ade76..5065c2f 100644
--- a/docs/MESA_multithread_makecurrent.spec
+++ b/docs/MESA_multithread_makecurrent.spec
@@ -61,19 +61,37 @@ New Tokens
None.
+Changes to Chapter 2 of the GLX 1.3 Specification (Functions and Errors)
+
+ Replace the following sentence from section 2.2 Rendering Contexts:
+ In addition, a rendering context can be current for only one
+ thread at a time.
+ with:
+ In addition, an indirect rendering context can be current for
+ only one thread at a time. A direct rendering context may be
+ current to multiple threads, with synchronization of access to
+ the context thruogh the GL managed by the application through
+ mutexes.
+
Changes to Chapter 3 of the GLX 1.3 Specification (Functions and Errors)
- Remove the following sentence from section 3.3.7 Rendering Contexts:
+ Replace the following sentence from section 3.3.7 Rendering Contexts:
If ctx is current to some other thread, then
glXMakeContextCurrent will generate a BadAccess error.
+ with:
+ If ctx is an indirect context current to some other thread,
+ then glXMakeContextCurrent will generate a BadAccess error.
- Remove the following sentence from section 3.5 Rendering Contexts:
+ Replace the following sentence from section 3.5 Rendering Contexts:
If ctx is current to some other thread, then
glXMakeCurrent will generate a BadAccess error.
+ with:
+ If ctx is an indirect context current to some other thread,
+ then glXMakeCurrent will generate a BadAccess error.
GLX Protocol
- None. The GLX extension is client-side.
+ None. The GLX extension only extends to direct rendering contexts.
Errors
@@ -125,6 +143,11 @@ Issues
share in synchronization for binding of their own contexts, so the
refcounting of the contexts is required to be threadsafe.
+ (6) Does this apply to indirect contexts?
+
+ This was ignored in the initial revision of the spec. Behavior
+ for indirect contexts is left as-is.
+
Revision History
20 November 2009 Eric Anholt - initial specification
More information about the mesa-commit
mailing list