summaryrefslogtreecommitdiff
path: root/include/my_pthread.h
diff options
context:
space:
mode:
authorunknown <monty@donna.mysql.fi>2001-03-24 20:15:14 +0200
committerunknown <monty@donna.mysql.fi>2001-03-24 20:15:14 +0200
commit06828d178a2f4bf20d3ace743ca041be1fa9e508 (patch)
treee705394f8291c4c2268717e3fb70734414d0f1d9 /include/my_pthread.h
parentba7b0717b3a079c019c1aacef80b2329d0650510 (diff)
downloadmariadb-git-06828d178a2f4bf20d3ace743ca041be1fa9e508.tar.gz
Added defines for fast mutex in glibc 2.2 (should be safe)
Fixed crash in SELECT DISTINCT SUM(...) Fix return value of mysortncmp() for innobase Fix join_crash bug Docs/manual.texi: Changelog include/my_pthread.h: Added defines for fast mutex in glibc 2.2 mysql-test/t/join_crash.test: Changed table names to t1,t2... mysys/my_bitmap.c: Use fast mutex mysys/my_open.c: Use fast mutex mysys/my_pthread.c: Use fast mutex mysys/my_thr_init.c: Use fast mutex mysys/my_winthread.c: Use fast mutex mysys/thr_mutex.c: Use new mutexattr with error checking sql/ha_innobase.cc: Fix return value of mysortncmp() for innobase sql/sql_select.cc: Fix join_crash bug BitKeeper/etc/logging_ok: Logging to logging@openlogging.org accepted
Diffstat (limited to 'include/my_pthread.h')
-rw-r--r--include/my_pthread.h17
1 files changed, 16 insertions, 1 deletions
diff --git a/include/my_pthread.h b/include/my_pthread.h
index 3d011f61ca2..652bdd205c0 100644
--- a/include/my_pthread.h
+++ b/include/my_pthread.h
@@ -499,11 +499,26 @@ extern int my_rw_unlock( my_rw_lock_t * );
#define pthread_attr_setstacksize(A,B) pthread_dummy(0)
#endif
+/* Define mutex types */
+#define MY_MUTEX_INIT_SLOW NULL
+#define MY_MUTEX_INIT_FAST NULL
+#define MY_MUTEX_INIT_ERRCHK NULL
+#ifdef PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP
+extern pthread_mutexattr_t my_fast_mutexattr;
+#undef MY_MUTEX_INIT_FAST
+#define MY_MUTEX_INIT_FAST &my_fast_mutexattr
+#endif
+#ifdef PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP
+extern pthread_mutexattr_t my_errchk_mutexattr;
+#undef MY_INIT_MUTEX_ERRCHK
+#define MY_INIT_MUTEX_ERRCHK &my_errchk_mutexattr
+#endif
+
extern my_bool my_thread_global_init(void);
extern void my_thread_global_end(void);
extern my_bool my_thread_init(void);
extern void my_thread_end(void);
-extern char *my_thread_name(void);
+extern const char *my_thread_name(void);
extern long my_thread_id(void);
extern int pthread_no_free(void *);
extern int pthread_dummy(int);