[Pkg-mysql-commits] r1744 - in mysql-dfsg-5.0/branches/lenny-security/debian: . patches

Sean Finney seanius at alioth.debian.org
Sun Sep 13 22:25:56 UTC 2009


tags 513204 pending
tags 524366 pending
thanks

Author: seanius
Date: 2009-09-13 22:25:56 +0000 (Sun, 13 Sep 2009)
New Revision: 1744

Added:
   mysql-dfsg-5.0/branches/lenny-security/debian/patches/fix-dummy-thread-race-condition.dpatch
Modified:
   mysql-dfsg-5.0/branches/lenny-security/debian/changelog
   mysql-dfsg-5.0/branches/lenny-security/debian/patches/00list
Log:
merge r1570 from s-p-u branch

Modified: mysql-dfsg-5.0/branches/lenny-security/debian/changelog
===================================================================
--- mysql-dfsg-5.0/branches/lenny-security/debian/changelog	2009-09-13 21:25:47 UTC (rev 1743)
+++ mysql-dfsg-5.0/branches/lenny-security/debian/changelog	2009-09-13 22:25:56 UTC (rev 1744)
@@ -1,3 +1,11 @@
+mysql-dfsg-5.0 (5.0.51a-24lenny1) testing-proposed-updates; urgency=low
+
+  * New patch fix-dummy-thread-race-condition.dpatch to back out an
+    unneeded workaround that causes segfaults in libmysqlclient15.   Thanks
+    to Martin Koegler for digging up the patch. (closes: #524366, #513204).
+
+ -- Sean Finney <seanius at debian.org>  Sat, 18 Apr 2009 08:52:10 +0200
+
 mysql-dfsg-5.0 (5.0.51a-24+lenny2) stable-security; urgency=high
 
   * SECURITY:

Modified: mysql-dfsg-5.0/branches/lenny-security/debian/patches/00list
===================================================================
--- mysql-dfsg-5.0/branches/lenny-security/debian/patches/00list	2009-09-13 21:25:47 UTC (rev 1743)
+++ mysql-dfsg-5.0/branches/lenny-security/debian/patches/00list	2009-09-13 22:25:56 UTC (rev 1744)
@@ -31,3 +31,4 @@
 93_SECURITY_CVE-2008-3963.dpatch
 94_SECURITY_CVE-2008-4456.dpatch
 95_SECURITY_CVE-2009-2446.dpatch
+fix-dummy-thread-race-condition.dpatch

Copied: mysql-dfsg-5.0/branches/lenny-security/debian/patches/fix-dummy-thread-race-condition.dpatch (from rev 1570, mysql-dfsg-5.0/branches/lenny-proposed/debian/patches/fix-dummy-thread-race-condition.dpatch)
===================================================================
--- mysql-dfsg-5.0/branches/lenny-security/debian/patches/fix-dummy-thread-race-condition.dpatch	                        (rev 0)
+++ mysql-dfsg-5.0/branches/lenny-security/debian/patches/fix-dummy-thread-race-condition.dpatch	2009-09-13 22:25:56 UTC (rev 1744)
@@ -0,0 +1,67 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## fix-dummy-thread-race-condition.dpatch by  <mkoegler at auto.tuwien.ac.at>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Avoid dummy thread for pthread_exit workaround
+
+ at DPATCH@
+diff -urNad mysql-dfsg-5.0-5.0.51a~/mysys/my_thr_init.c mysql-dfsg-5.0-5.0.51a/mysys/my_thr_init.c
+--- mysql-dfsg-5.0-5.0.51a~/mysys/my_thr_init.c	2009-02-13 20:50:42.000000000 +0000
++++ mysql-dfsg-5.0-5.0.51a/mysys/my_thr_init.c	2009-02-13 20:56:05.000000000 +0000
+@@ -47,23 +47,6 @@
+ pthread_mutexattr_t my_errorcheck_mutexattr;
+ #endif
+ 
+-#ifdef TARGET_OS_LINUX
+-
+-/*
+- Dummy thread spawned in my_thread_global_init() below to avoid
+- race conditions in NPTL pthread_exit code.
+-*/
+-
+-static pthread_handler_t
+-nptl_pthread_exit_hack_handler(void *arg __attribute__((unused)))
+-{
+-  /* Do nothing! */
+-  pthread_exit(0);
+-  return 0;
+-}
+-
+-#endif /* TARGET_OS_LINUX */
+-
+ static uint get_thread_lib(void);
+ 
+ /*
+@@ -88,32 +71,6 @@
+     return 1;
+   }
+ 
+-#ifdef TARGET_OS_LINUX
+-  /*
+-    BUG#24507: Race conditions inside current NPTL pthread_exit()
+-    implementation.
+-
+-    To avoid a possible segmentation fault during concurrent
+-    executions of pthread_exit(), a dummy thread is spawned which
+-    initializes internal variables of pthread lib. See bug description
+-    for a full explanation.
+-
+-    TODO: Remove this code when fixed versions of glibc6 are in common
+-    use.
+-  */
+-  if (thd_lib_detected == THD_LIB_NPTL)
+-  {
+-    pthread_t       dummy_thread;
+-    pthread_attr_t  dummy_thread_attr;
+-
+-    pthread_attr_init(&dummy_thread_attr);
+-    pthread_attr_setdetachstate(&dummy_thread_attr, PTHREAD_CREATE_DETACHED);
+-
+-    pthread_create(&dummy_thread,&dummy_thread_attr,
+-                   nptl_pthread_exit_hack_handler, NULL);
+-  }
+-#endif /* TARGET_OS_LINUX */
+-
+ #ifdef PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP
+   /*
+     Set mutex type to "fast" a.k.a "adaptive"




More information about the Pkg-mysql-commits mailing list