Mesa (master): glx: remove support for non-multithreaded platforms
Emil Velikov
evelikov at kemper.freedesktop.org
Wed Mar 11 23:25:28 UTC 2015
Module: Mesa
Branch: master
Commit: a385d18598b28bf935e4460b86ce3f9e095a8015
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=a385d18598b28bf935e4460b86ce3f9e095a8015
Author: Emil Velikov <emil.l.velikov at gmail.com>
Date: Fri Mar 6 16:54:59 2015 +0000
glx: remove support for non-multithreaded platforms
Implicitly required for a while, although commit 9385c592c68 (mapi:
remove u_thread.h) was the one that put the final nail on the
coffin.
Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>
Reviewed-by: Brian Paul <brianp at vmware.com>
---
docs/dispatch.html | 5 ++---
src/glx/glxclient.h | 18 +-----------------
src/glx/glxcurrent.c | 11 -----------
src/glx/tests/fake_glx_screen.cpp | 2 +-
4 files changed, 4 insertions(+), 32 deletions(-)
diff --git a/docs/dispatch.html b/docs/dispatch.html
index aacd01e..c96ec2d 100644
--- a/docs/dispatch.html
+++ b/docs/dispatch.html
@@ -204,9 +204,8 @@ terribly relevant.</p>
few preprocessor defines.</p>
<ul>
-<li>If <tt>GLX_USE_TLS</tt> is defined, method #4 is used.</li>
-<li>If <tt>HAVE_PTHREAD</tt> is defined, method #3 is used.</li>
-<li>If <tt>WIN32_THREADS</tt> is defined, method #2 is used.</li>
+<li>If <tt>GLX_USE_TLS</tt> is defined, method #3 is used.</li>
+<li>If <tt>HAVE_PTHREAD</tt> is defined, method #2 is used.</li>
<li>If none of the preceding are defined, method #1 is used.</li>
</ul>
diff --git a/src/glx/glxclient.h b/src/glx/glxclient.h
index 122ae5d..2776b44 100644
--- a/src/glx/glxclient.h
+++ b/src/glx/glxclient.h
@@ -48,12 +48,10 @@
#include <stdlib.h>
#include <stdio.h>
#include <stdint.h>
+#include <pthread.h>
#include "GL/glxproto.h"
#include "glxconfig.h"
#include "glxhash.h"
-#if defined( HAVE_PTHREAD )
-# include <pthread.h>
-#endif
#include "util/macros.h"
#include "glxextensions.h"
@@ -629,7 +627,6 @@ extern void __glXPreferEGL(int state);
extern int __glXDebug;
/* This is per-thread storage in an MT environment */
-#if defined( HAVE_PTHREAD )
extern void __glXSetCurrentContext(struct glx_context * c);
@@ -646,14 +643,6 @@ extern struct glx_context *__glXGetCurrentContext(void);
# endif /* defined( GLX_USE_TLS ) */
-#else
-
-extern struct glx_context *__glXcurrentContext;
-#define __glXGetCurrentContext() __glXcurrentContext
-#define __glXSetCurrentContext(gc) __glXcurrentContext = gc
-
-#endif /* defined( HAVE_PTHREAD ) */
-
extern void __glXSetCurrentContextNull(void);
@@ -661,14 +650,9 @@ extern void __glXSetCurrentContextNull(void);
** Global lock for all threads in this address space using the GLX
** extension
*/
-#if defined( HAVE_PTHREAD )
extern pthread_mutex_t __glXmutex;
#define __glXLock() pthread_mutex_lock(&__glXmutex)
#define __glXUnlock() pthread_mutex_unlock(&__glXmutex)
-#else
-#define __glXLock()
-#define __glXUnlock()
-#endif
/*
** Setup for a command. Initialize the extension for dpy if necessary.
diff --git a/src/glx/glxcurrent.c b/src/glx/glxcurrent.c
index 86fb658..7f47a42 100644
--- a/src/glx/glxcurrent.c
+++ b/src/glx/glxcurrent.c
@@ -33,9 +33,7 @@
* Client-side GLX interface for current context management.
*/
-#ifdef HAVE_PTHREAD
#include <pthread.h>
-#endif
#include "glxclient.h"
@@ -67,8 +65,6 @@ struct glx_context dummyContext = {
* Current context management and locking
*/
-#if defined( HAVE_PTHREAD )
-
_X_HIDDEN pthread_mutex_t __glXmutex = PTHREAD_MUTEX_INITIALIZER;
# if defined( GLX_USE_TLS )
@@ -138,13 +134,6 @@ __glXGetCurrentContext(void)
# endif /* defined( GLX_USE_TLS ) */
-#else
-
-/* not thread safe */
-_X_HIDDEN struct glx_context *__glXcurrentContext = &dummyContext;
-
-#endif
-
_X_HIDDEN void
__glXSetCurrentContextNull(void)
diff --git a/src/glx/tests/fake_glx_screen.cpp b/src/glx/tests/fake_glx_screen.cpp
index ccb1afa..db20749 100644
--- a/src/glx/tests/fake_glx_screen.cpp
+++ b/src/glx/tests/fake_glx_screen.cpp
@@ -77,7 +77,7 @@ indirect_create_context_attribs(struct glx_screen *base,
__thread void *__glX_tls_Context = NULL;
-#if defined(HAVE_PTHREAD) && !defined(GLX_USE_TLS)
+#if !defined(GLX_USE_TLS)
extern "C" struct glx_context *
__glXGetCurrentContext()
{
More information about the mesa-commit
mailing list