Author: bryan
Date: 2009-06-11 23:25:14 -0600 (Thu, 11 Jun 2009)
New Revision: 8944
Modified:
trunk/BOOK/chapter01/changelog.xml
trunk/BOOK/chapter05/glibc.xml
trunk/BOOK/chapter06/glibc.xml
Log:
Add a sed to glibc to fix the constants passed to futex(2) in 32-bit builds.
Seems to fix testsuite hangs (the tst-mutex9 process never exits, for instance).
This change is in upstream git, so this can be reverted once we upgrade glibc.
Modified: trunk/BOOK/chapter01/changelog.xml
===================================================================
--- trunk/BOOK/chapter01/changelog.xml 2009-06-12 05:20:23 UTC (rev 8943)
+++ trunk/BOOK/chapter01/changelog.xml 2009-06-12 05:25:14 UTC (rev 8944)
@@ -38,6 +38,17 @@
-->
<listitem>
+ <para>2009-06-11</para>
+ <itemizedlist>
+ <listitem>
+ <para>[bryan] - Add a sed to glibc to fix the constants passed
+ to futex(2) in 32-bit builds with certain --enable-kernel values,
+ including our 2.6.18.</para>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ <listitem>
<para>2009-06-06</para>
<itemizedlist>
<listitem>
Modified: trunk/BOOK/chapter05/glibc.xml
===================================================================
--- trunk/BOOK/chapter05/glibc.xml 2009-06-12 05:20:23 UTC (rev 8943)
+++ trunk/BOOK/chapter05/glibc.xml 2009-06-12 05:25:14 UTC (rev 8944)
@@ -43,6 +43,16 @@
<sect2 role="installation">
<title>Installation of Glibc</title>
+ <!-- This sed can be removed for any glibc newer than 2.10.1 (along with
the
+ matching sed in chapter 6). See glibc bug 10262. -->
+ <para>Fix an error in the constants that get passed to the futex system
+ call in some cases, causing certain pthread_mutex operations to
fail:</para>
+
+<screen><userinput remap="pre">cp
nptl/sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S{,.orig}
+sed -e 's/FUTEX_WAIT\( | FUTEX_CLOCK_REALTIME, reg\)/FUTEX_WAIT_BITSET\1/' \
+ <nptl/sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S.orig \
+
>nptl/sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S</userinput></screen>
+
<para>The Glibc documentation recommends building Glibc outside of the
source
directory in a dedicated build directory:</para>
Modified: trunk/BOOK/chapter06/glibc.xml
===================================================================
--- trunk/BOOK/chapter06/glibc.xml 2009-06-12 05:20:23 UTC (rev 8943)
+++ trunk/BOOK/chapter06/glibc.xml 2009-06-12 05:25:14 UTC (rev 8944)
@@ -108,6 +108,14 @@
sed -i '/tst-fgetws-ENV/ a\
tst-fgetwc-ENV = LOCPATH=$(common-objpfx)localedata'
libio/Makefile</userinput></screen>
+ <!-- This sed can be removed for any glibc newer than 2.10.1 (along with
the
+ matching sed in chapter 5). See glibc bug 10262. -->
+ <para>Fix an error in the constants that get passed to the futex system
+ call in some cases, causing certain pthread_mutex operations to
fail:</para>
+
+<screen><userinput remap="pre">sed -i -e 's/FUTEX_WAIT\( |
FUTEX_CLOCK_REALTIME, reg\)/FUTEX_WAIT_BITSET\1/' \
+
nptl/sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S</userinput></screen>
+
<para>The Glibc documentation recommends building Glibc outside of the
source
directory in a dedicated build directory:</para>
--
http://linuxfromscratch.org/mailman/listinfo/lfs-book
FAQ: http://www.linuxfromscratch.org/lfs/faq.html
Unsubscribe: See the above information page