From 5f889c5bf5221f2af2f34e47f20bd1b98c061fbe Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Thu, 24 Feb 2011 15:25:59 -0800 Subject: 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 file changed, 26 insertions(+), 3 deletions(-) (limited to 'docs') diff --git a/docs/MESA_multithread_makecurrent.spec b/docs/MESA_multithread_makecurrent.spec index 68ade76243..5065c2fc0a 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 -- cgit v1.2.3