[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

r4461 - in glibc-package/trunk/debian: . patches patches/amd64



Author: aurel32
Date: 2011-01-23 18:54:21 +0000 (Sun, 23 Jan 2011)
New Revision: 4461

Added:
   glibc-package/trunk/debian/patches/amd64/cvs-avx-tcb-alignment.diff
Modified:
   glibc-package/trunk/debian/changelog
   glibc-package/trunk/debian/patches/series
Log:
  * Add patches/amd64/cvs-avx-tcb-alignment.diff from upstream to fix 
    alignement issues on CPU supporting the AVX instruction set. Closes:
    #610657.



Modified: glibc-package/trunk/debian/changelog
===================================================================
--- glibc-package/trunk/debian/changelog	2011-01-20 18:49:48 UTC (rev 4460)
+++ glibc-package/trunk/debian/changelog	2011-01-23 18:54:21 UTC (rev 4461)
@@ -1,3 +1,11 @@
+eglibc (2.11.2-10) UNRELEASED; urgency=low
+
+  * Add patches/amd64/cvs-avx-tcb-alignment.diff from upstream to fix 
+    alignement issues on CPU supporting the AVX instruction set. Closes:
+    #610657.
+
+ -- Aurelien Jarno <aurel32@debian.org>  Sun, 23 Jan 2011 19:52:52 +0100
+
 eglibc (2.11.2-9) unstable; urgency=low
 
   * Disable build failure in case of testsuite regressions, will be 

Added: glibc-package/trunk/debian/patches/amd64/cvs-avx-tcb-alignment.diff
===================================================================
--- glibc-package/trunk/debian/patches/amd64/cvs-avx-tcb-alignment.diff	                        (rev 0)
+++ glibc-package/trunk/debian/patches/amd64/cvs-avx-tcb-alignment.diff	2011-01-23 18:54:21 UTC (rev 4461)
@@ -0,0 +1,41 @@
+2010-10-13  H.J. Lu  <hongjiu.lu@intel.com>
+
+	[BZ #12113]
+	* sysdeps/x86_64/pthreaddef.h (TCB_ALIGNMENT): Changed to 32.
+	* sysdeps/x86_64/tls.h (TLS_TCB_ALIGN): Defined with alignment
+	of "struct pthread".
+
+diff --git a/nptl/sysdeps/x86_64/pthreaddef.h b/nptl/sysdeps/x86_64/pthreaddef.h
+index be63a8c..8ec135c 100644
+--- a/nptl/sysdeps/x86_64/pthreaddef.h
++++ b/nptl/sysdeps/x86_64/pthreaddef.h
+@@ -27,8 +27,9 @@
+ /* Minimal stack size after allocating thread descriptor and guard size.  */
+ #define MINIMAL_REST_STACK	2048
+ 
+-/* Alignment requirement for TCB.  */
+-#define TCB_ALIGNMENT		16
++/* Alignment requirement for TCB.  Need to store post-AVX vector registers
++   in the TCB and we want the storage to be aligned at 32-byte.  */
++#define TCB_ALIGNMENT		32
+ 
+ 
+ /* Location of current stack frame.  The frame pointer is not usable.  */
+diff --git a/nptl/sysdeps/x86_64/tls.h b/nptl/sysdeps/x86_64/tls.h
+index e39eb5f..41b5e6d 100644
+--- a/nptl/sysdeps/x86_64/tls.h
++++ b/nptl/sysdeps/x86_64/tls.h
+@@ -117,12 +117,7 @@ typedef struct
+ # define TLS_TCB_SIZE sizeof (struct pthread)
+ 
+ /* Alignment requirements for the TCB.  */
+-//# define TLS_TCB_ALIGN __alignof__ (struct pthread)
+-// Normally the above would be correct  But we have to store post-AVX
+-// vector registers in the TCB and we want the storage to be aligned.
+-// unfortunately there isn't yet a type for these values and hence no
+-// 32-byte alignment requirement.  Make this explicit, for now.
+-# define TLS_TCB_ALIGN 32
++# define TLS_TCB_ALIGN __alignof__ (struct pthread)
+ 
+ /* The TCB can have any size and the memory following the address the
+    thread pointer points to is unspecified.  Allocate the TCB there.  */

Modified: glibc-package/trunk/debian/patches/series
===================================================================
--- glibc-package/trunk/debian/patches/series	2011-01-20 18:49:48 UTC (rev 4460)
+++ glibc-package/trunk/debian/patches/series	2011-01-23 18:54:21 UTC (rev 4461)
@@ -64,6 +64,7 @@
 amd64/local-clone.diff
 amd64/local-linuxthreads-gscope.diff
 amd64/submitted-tst-audit6-avx.diff
+amd64/cvs-avx-tcb-alignment.diff
 
 arm/local-atomic.diff
 arm/local-eabi-wchar.diff


Reply to: