packages (AC-branch): glibc/glibc-bug-2644.patch (NEW) - fixing php-cli wit...

glen glen at pld-linux.org
Tue Oct 27 13:32:41 CET 2009


Author: glen                         Date: Tue Oct 27 12:32:41 2009 GMT
Module: packages                      Tag: AC-branch
---- Log message:
- fixing php-cli with php-mysql ext segfault:
   https://bugs.launchpad.net/mysql-server/+bug/343870
  which links to original mysql bug:
   http://bugs.mysql.com/bug.php?id=24507
  which links to glibc bug:
   http://sourceware.org/bugzilla/show_bug.cgi?id=2644

---- Files affected:
packages/glibc:
   glibc-bug-2644.patch (NONE -> 1.1.2.1)  (NEW)

---- Diffs:

================================================================
Index: packages/glibc/glibc-bug-2644.patch
diff -u /dev/null packages/glibc/glibc-bug-2644.patch:1.1.2.1
--- /dev/null	Tue Oct 27 13:32:41 2009
+++ packages/glibc/glibc-bug-2644.patch	Tue Oct 27 13:32:36 2009
@@ -0,0 +1,54 @@
+Index: nptl/sysdeps/pthread/unwind-forcedunwind.c
+===================================================================
+RCS file: /cvs/glibc/libc/nptl/sysdeps/pthread/unwind-forcedunwind.c,v
+retrieving revision 1.2
+diff -u -r1.2 unwind-forcedunwind.c
+--- nptl/sysdeps/pthread/unwind-forcedunwind.c	16 Nov 2005 23:31:28 -0000	1.2
++++ nptl/sysdeps/pthread/unwind-forcedunwind.c	7 May 2006 20:30:26 -0000
+@@ -67,7 +67,11 @@
+ _Unwind_Resume (struct _Unwind_Exception *exc)
+ {
+   if (__builtin_expect (libgcc_s_resume == NULL, 0))
++  {  
+     pthread_cancel_init ();
++    // The function pointer has changed, ensure we reload it.
++    asm volatile ("" : "+m" (libgcc_s_resume));
++  }
+   libgcc_s_resume (exc);
+ }
+ 
+@@ -78,7 +82,11 @@
+                       struct _Unwind_Context *context)
+ {
+   if (__builtin_expect (libgcc_s_personality == NULL, 0))
++  {
+     pthread_cancel_init ();
++    // The function pointer has changed, ensure we reload it.
++    asm volatile ("" : "+m" (libgcc_s_personality));
++  }
+   return libgcc_s_personality (version, actions, exception_class,
+ 			       ue_header, context);
+ }
+@@ -88,7 +96,11 @@
+ 		      void *stop_argument)
+ {
+   if (__builtin_expect (libgcc_s_forcedunwind == NULL, 0))
++  {
+     pthread_cancel_init ();
++    // The function pointer has changed, ensure we reload it.
++    asm volatile ("" : "+m" (libgcc_s_forcedunwind));
++  }
+   return libgcc_s_forcedunwind (exc, stop, stop_argument);
+ }
+ 
+@@ -96,6 +108,10 @@
+ _Unwind_GetCFA (struct _Unwind_Context *context)
+ {
+   if (__builtin_expect (libgcc_s_getcfa == NULL, 0))
++  {
+     pthread_cancel_init ();
++    // The function pointer has changed, ensure we reload it.
++    asm volatile ("" : "+m" (libgcc_s_getcfa));
++  }
+   return libgcc_s_getcfa (context);
+ }
================================================================


More information about the pld-cvs-commit mailing list