r4207 - in glibc-package/trunk/debian: . patches patches/any
Author: aurel32
Date: 2010-02-27 00:03:17 +0000 (Sat, 27 Feb 2010)
New Revision: 4207
Added:
glibc-package/trunk/debian/patches/any/submitted-nptl-invalid-td.patch
Modified:
glibc-package/trunk/debian/changelog
glibc-package/trunk/debian/patches/series
Log:
* Add patches/any/submitted-nptl-invalid-td.patch to also catch
uninitialized thread descriptors in INVALID_TD_P macro. Closes:
#571639.
Modified: glibc-package/trunk/debian/changelog
===================================================================
--- glibc-package/trunk/debian/changelog 2010-02-26 21:46:33 UTC (rev 4206)
+++ glibc-package/trunk/debian/changelog 2010-02-27 00:03:17 UTC (rev 4207)
@@ -23,6 +23,9 @@
patches/sparc/cvs-sparcv9-memchr.diff.
* Add patches/sparc/submitted-msgrcv.diff to fix msgrcv() on sparc64,
and with it fakeroot.
+ * Add patches/any/submitted-nptl-invalid-td.patch to also catch
+ uninitialized thread descriptors in INVALID_TD_P macro. Closes:
+ #571639.
[ Petr Salinger]
* kfreebsd/local-sysdeps.diff: update to revision 2986 (from glibc-bsd).
Added: glibc-package/trunk/debian/patches/any/submitted-nptl-invalid-td.patch
===================================================================
--- glibc-package/trunk/debian/patches/any/submitted-nptl-invalid-td.patch (rev 0)
+++ glibc-package/trunk/debian/patches/any/submitted-nptl-invalid-td.patch 2010-02-27 00:03:17 UTC (rev 4207)
@@ -0,0 +1,18 @@
+2010-02-27 Aurelien Jarno <aurelien@aurel32.net>
+
+ * pthreadP.h(INVALID_TD_P, INVALID_NOT_TERMINATED_TD_P): detect
+ NULL pointers.
+
+--- a/nptl/pthreadP.h
++++ b/nptl/pthreadP.h
+@@ -207,8 +207,8 @@ extern int __pthread_debug attribute_hidden;
+ /* Simplified test. This will not catch all invalid descriptors but
+ is better than nothing. And if the test triggers the thread
+ descriptor is guaranteed to be invalid. */
+-# define INVALID_TD_P(pd) __builtin_expect ((pd)->tid <= 0, 0)
+-# define INVALID_NOT_TERMINATED_TD_P(pd) __builtin_expect ((pd)->tid < 0, 0)
++# define INVALID_TD_P(pd) __builtin_expect (!pd || ((pd)->tid <= 0), 0)
++# define INVALID_NOT_TERMINATED_TD_P(pd) __builtin_expect (!pd || ((pd)->tid < 0), 0)
+ #endif
+
+
Modified: glibc-package/trunk/debian/patches/series
===================================================================
--- glibc-package/trunk/debian/patches/series 2010-02-26 21:46:33 UTC (rev 4206)
+++ glibc-package/trunk/debian/patches/series 2010-02-27 00:03:17 UTC (rev 4207)
@@ -239,3 +239,4 @@
any/submitted-leading-zero-stack-guard.diff
any/submitted-stat-issock.diff
any/submitted-remove.diff
+any/submitted-nptl-invalid-td.patch
Reply to: