1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-29 05:21:33 +03:00

Merge pilot.(none):/data/msvensson/mysql/bug28690/my50-bug28690

into  pilot.(none):/data/msvensson/mysql/bug28690/my51-bug28690
This commit is contained in:
msvensson@pilot.(none)
2007-06-07 09:50:53 +02:00

View File

@ -87,20 +87,21 @@ my_bool my_thread_global_init(void)
fprintf(stderr,"Can't initialize threads: error %d\n", pth_ret); fprintf(stderr,"Can't initialize threads: error %d\n", pth_ret);
return 1; return 1;
} }
#ifdef NPTL_PTHREAD_EXIT_BUG #ifdef NPTL_PTHREAD_EXIT_BUG
/* /*
BUG#24507: Race conditions inside current NPTL pthread_exit() BUG#24507: Race conditions inside current NPTL pthread_exit()
implementation. implementation.
To avoid a possible segmentation fault during concurrent To avoid a possible segmentation fault during concurrent
executions of pthread_exit(), a dummy thread is spawned which executions of pthread_exit(), a dummy thread is spawned which
initializes internal variables of pthread lib. See bug description initializes internal variables of pthread lib. See bug description
for a full explanation. for a full explanation.
TODO: Remove this code when fixed versions of glibc6 are in common TODO: Remove this code when fixed versions of glibc6 are in common
use. use.
*/ */
if (thd_lib_detected == THD_LIB_NPTL)
{ {
pthread_t dummy_thread; pthread_t dummy_thread;
pthread_attr_t dummy_thread_attr; pthread_attr_t dummy_thread_attr;