This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "IPFire 3.x development tree".
The branch, master has been updated via 145ccddb6082cc5ff9e37a911e37b6b4706f0af0 (commit) via 339065dc7dac3ca4a25389a03f948457bc67fa98 (commit) via 7363ca1c6b8928130afcafba0b108ee38f2c9c49 (commit) via 9eb2f6422b07d020a8aa926873ee79e1bf1f14b9 (commit) via 87235625d3f512a08e18d3e6024a1cceca72cb83 (commit) via 5ca9e9bb0ae60796056ef788b59e7b7d69cabf73 (commit) via 70963a517cc405ca1e876d040b7ab0348e12d58f (commit) via 1c3676969e13010abb24838d58b5b67d86d5f025 (commit) via 99c36936a66786bcaf2fdfc319c12a3b5423c64e (commit) via 287d0882ebcff582dea1a22542006ec15abb8d4f (commit) via 824ce944fb7f2a95b33e4362af0afec2d1dc4653 (commit) from 1f26ad8535e941eabe44a7ced807cba197bd8271 (commit)
Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below.
- Log ----------------------------------------------------------------- commit 145ccddb6082cc5ff9e37a911e37b6b4706f0af0 Merge: 339065d 1f26ad8 Author: Michael Tremer michael.tremer@ipfire.org Date: Fri Jan 6 17:36:34 2012 +0100
Merge branch 'master' of ssh://git.ipfire.org/pub/git/ipfire-3.x
commit 339065dc7dac3ca4a25389a03f948457bc67fa98 Author: Michael Tremer michael.tremer@ipfire.org Date: Fri Jan 6 17:33:44 2012 +0100
perl-FCGI: New package.
Required by perl-CGI.
commit 7363ca1c6b8928130afcafba0b108ee38f2c9c49 Author: Michael Tremer michael.tremer@ipfire.org Date: Fri Jan 6 17:33:25 2012 +0100
perl: Cleanup dependencies.
What a mess...
commit 9eb2f6422b07d020a8aa926873ee79e1bf1f14b9 Author: Michael Tremer michael.tremer@ipfire.org Date: Fri Jan 6 17:33:03 2012 +0100
mailcap: Requires perl to execute the testsuite.
commit 87235625d3f512a08e18d3e6024a1cceca72cb83 Author: Michael Tremer michael.tremer@ipfire.org Date: Fri Jan 6 17:32:19 2012 +0100
libcap-ng: Make package work on x86_64.
commit 5ca9e9bb0ae60796056ef788b59e7b7d69cabf73 Author: Michael Tremer michael.tremer@ipfire.org Date: Thu Jan 5 01:00:09 2012 +0100
dejagnu: Fix formatting of dependencies.
commit 70963a517cc405ca1e876d040b7ab0348e12d58f Author: Michael Tremer michael.tremer@ipfire.org Date: Thu Jan 5 00:57:02 2012 +0100
glibc: Update to 2.14.90 (development version).
commit 1c3676969e13010abb24838d58b5b67d86d5f025 Merge: 99c3693 2bd9b33 Author: Michael Tremer michael.tremer@ipfire.org Date: Sun Jan 1 13:11:04 2012 +0100
Merge branch 'master' of ssh://git.ipfire.org/pub/git/ipfire-3.x
commit 99c36936a66786bcaf2fdfc319c12a3b5423c64e Merge: 19df835 287d088 Author: Michael Tremer michael.tremer@ipfire.org Date: Fri Dec 23 15:58:00 2011 +0100
Merge branch 'perl-Tk'
commit 287d0882ebcff582dea1a22542006ec15abb8d4f Author: Michael Tremer michael.tremer@ipfire.org Date: Fri Dec 23 15:57:21 2011 +0100
libpng: Update to 1.5.7.
commit 824ce944fb7f2a95b33e4362af0afec2d1dc4653 Author: Michael Tremer michael.tremer@ipfire.org Date: Fri Dec 23 15:56:48 2011 +0100
help2man: Requires perl for build.
-----------------------------------------------------------------------
Summary of changes: dejagnu/dejagnu.nm | 7 +- glibc/glibc.nm | 24 +- glibc/patches/glibc-fedora.patch | 1282 +++++++++++--------- glibc/patches/glibc-rh730856.patch | 16 + glibc/patches/glibc-rh740506.patch | 35 + glibc/patches/glibc-rh757881.patch | 170 +++ glibc/patches/glibc-rh769421.patch | 229 ++++ libcap-ng/libcap-ng.nm | 9 +- libpng/libpng.nm | 2 +- mailcap/mailcap.nm | 6 +- .../perl-XML-Parser.nm => perl-FCGI/perl-FCGI.nm | 32 +- perl/perl.nm | 160 ++-- 12 files changed, 1281 insertions(+), 691 deletions(-) create mode 100644 glibc/patches/glibc-rh730856.patch create mode 100644 glibc/patches/glibc-rh740506.patch create mode 100644 glibc/patches/glibc-rh757881.patch create mode 100644 glibc/patches/glibc-rh769421.patch copy perl-XML-Parser/perl-XML-Parser.nm => perl-FCGI/perl-FCGI.nm (53%)
Difference in files: diff --git a/dejagnu/dejagnu.nm b/dejagnu/dejagnu.nm index 2c0d195..c0f8fe4 100644 --- a/dejagnu/dejagnu.nm +++ b/dejagnu/dejagnu.nm @@ -5,7 +5,7 @@
name = dejagnu version = 1.4.4 -release = 1 +release = 2 arch = noarch
groups = Development/Tools @@ -39,7 +39,10 @@ end
packages package %{name} - requires = expect tcl + requires + expect + tcl + end end
package %{name}-devel diff --git a/glibc/glibc.nm b/glibc/glibc.nm index aa40547..3e6093d 100644 --- a/glibc/glibc.nm +++ b/glibc/glibc.nm @@ -4,8 +4,9 @@ ###############################################################################
name = glibc -version = 2.14.1 +version = 2.14.90 release = 1 +thisapp = %{name}-2.14-16c6f99
maintainer = Michael Tremer michael.tremer@ipfire.org groups = System/Base @@ -24,25 +25,25 @@ description end
# The version of the ports addon. -ports_version = %{version} +ports_version = 2.14-c2aeee1
source_dl = http://ftp.gnu.org/gnu/glibc/ -sources = %{thisapp}.tar.xz glibc-ports-%{ports_version}.tar.xz +sources = %{thisapp}.tar.gz glibc-ports-%{ports_version}.tar.gz
build # Optimize glibc for kernel OPTIMIZED_KERNEL = 2.6.32
requires - audit-devel - autoconf - automake - gettext + #audit-devel + #autoconf + #automake + #gettext kernel-headers>=%{OPTIMIZED_KERNEL} libcap-devel libselinux-devel - nss-devel - texinfo + #nss-devel + #texinfo end
# Build glibc with custom cflags @@ -154,9 +155,8 @@ build --enable-kernel=%{OPTIMIZED_KERNEL} \ --with-selinux \ --disable-werror \ - --enable-experimental-malloc \ - --enable-bind-now \ - --enable-nss-crypt + --enable-bind-now +# --enable-nss-crypt
if "%{DISTRO_ARCH}" == "armv5tel" # Disable hardware FP for ARM. diff --git a/glibc/patches/glibc-fedora.patch b/glibc/patches/glibc-fedora.patch index ac1e0a5..1f5298b 100644 --- a/glibc/patches/glibc-fedora.patch +++ b/glibc/patches/glibc-fedora.patch @@ -1,8 +1,33 @@ ---- glibc-2.14.1/ChangeLog -+++ glibc-2.14.1-2/ChangeLog -@@ -200,6 +200,14 @@ - * malloc/memusage.sh: Fix quoting in message. - * debug/xtrace.sh: Likewise. +diff -Nur a/ChangeLog b/ChangeLog +--- a/ChangeLog 2011-12-22 16:50:52.000000000 +0000 ++++ b/ChangeLog 2011-12-22 18:00:44.158145149 +0000 +@@ -2416,6 +2416,11 @@ + + * sysdeps/mach/hurd/sys/param.h (DEV_BSIZE): New macro. + ++2011-09-02 Andreas Schwab schwab@redhat.com ++ ++ * nscd/selinux.c (avc_create_thread): Set PR_SET_KEEPCAPS before ++ spawning AVC thread. ++ + 2011-09-08 Andreas Schwab schwab@redhat.com + + * elf/dl-load.c (lose): Check for non-null L. +@@ -2678,6 +2683,11 @@ + * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Fix cfi + directive. + ++2011-08-31 Andreas Schwab schwab@redhat.com ++ ++ * include/link.h (FORCED_DYNAMIC_TLS_OFFSET) [NO_TLS_OFFSET == 0]: ++ Change to -1. ++ + 2011-08-24 David S. Miller davem@davemloft.net + + * sysdeps/sparc/sparc64/strcmp.S: Rewrite. +@@ -3483,6 +3493,14 @@ + * config.make.in: Likewise. + * malloc/Makefile: Likewise.
+2011-06-28 Andreas Schwab schwab@redhat.com + @@ -15,18 +40,18 @@ 2011-06-27 Andreas Schwab schwab@redhat.com
* iconvdata/gb18030.c (BODY for TO_LOOP): Fix encoding of non-BMP -@@ -215,6 +223,10 @@ - * sysdeps/posix/getaddrinfo.c (gaih_inet): When looking up only IPv6 - addresses using gethostbyname4_r ignore IPv4 addresses. +@@ -3614,6 +3632,10 @@ + + * inet/getnetgrent_r.c: Use DL_CALL_FCT in several places.
+2011-06-21 Andreas Schwab schwab@redhat.com + + * iconvdata/gb18030.c: Regenerate tables. + - 2011-06-15 Ulrich Drepper drepper@gmail.com + 2011-06-20 David S. Miller davem@davemloft.net
- * resolv/res_send.c (__libc_res_nsend): Fix typos in last patch. We -@@ -692,6 +704,13 @@ + * sysdeps/sparc/sparc32/dl-plt.h: Protect against multiple +@@ -4236,6 +4258,13 @@ * libio/Makefile (tests): Add bug-fclose1. * libio/bug-fclose1.c: New file.
@@ -40,7 +65,7 @@ 2011-05-12 Ulrich Drepper drepper@gmail.com
[BZ #12511] -@@ -969,13 +988,6 @@ +@@ -4513,13 +4542,6 @@ * stdlib/bug-getcontext.c: New file. * stdlib/Makefile: Add rules to build and run bug-getcontext.
@@ -54,7 +79,7 @@ 2011-04-11 Andreas Krebbel Andreas.Krebbel@de.ibm.com
* sysdeps/s390/s390-32/elf/start.S (_start): Skip extra zeroes -@@ -1213,6 +1225,31 @@ +@@ -4757,6 +4779,31 @@ * sysdeps/unix/sysv/linux/Versions [GLIBC_2.14] (clock_adjtime): Export.
@@ -86,7 +111,7 @@ 2011-03-22 Ulrich Drepper drepper@gmail.com
* sysdeps/unix/sysv/linux/i386/sysconf.c (intel_check_word): Increment -@@ -1273,6 +1310,16 @@ +@@ -4817,6 +4864,16 @@ $LDFLAGS and -nostdlib -nostartfiles to linking step. Change main to _start.
@@ -103,20 +128,7 @@ 2011-03-06 Ulrich Drepper drepper@gmail.com
* elf/dl-load.c (_dl_map_object): If we are looking for the first -@@ -1327,12 +1374,6 @@ - * elf/noload.c: Include <memcheck.h>. - (main): Call mtrace. Close all opened handles. - --2011-02-17 Andreas Schwab schwab@redhat.com -- -- [BZ #12454] -- * elf/dl-deps.c (_dl_map_object_deps): Signal error early when -- dependencies are missing. -- - 2011-02-22 Samuel Thibault samuel.thibault@ens-lyon.org - - Fix __if_freereq crash: Unlike the generic version which uses free, -@@ -1489,6 +1530,12 @@ +@@ -5033,6 +5090,12 @@ * shadow/sgetspent.c: Check return value of __sgetspent_r instead of errno.
@@ -129,7 +141,7 @@ 2011-01-19 Ulrich Drepper drepper@gmail.com
[BZ #11724] -@@ -2176,6 +2223,26 @@ +@@ -5720,6 +5783,26 @@ * sysdeps/unix/sysv/linux/internal_statvfs.c (INTERNAL_STATVFS): Mask out sign-bit copies when constructing f_fsid.
@@ -156,7 +168,7 @@ 2010-09-24 Petr Baudis pasky@suse.cz
* debug/stack_chk_fail_local.c: Add missing licence exception. -@@ -2968,6 +3035,17 @@ +@@ -6512,6 +6595,17 @@ call returning > 0 value. * sysdeps/unix/sysv/linux/getlogin.c (getlogin): Likewise.
@@ -174,7 +186,7 @@ 2010-06-07 Andreas Schwab schwab@redhat.com
* dlfcn/Makefile: Remove explicit dependencies on libc.so and -@@ -3020,6 +3098,24 @@ +@@ -6564,6 +6658,21 @@ * hurd/hurd/fd.h (__file_name_lookup_at): Update comment. * sysdeps/mach/hurd/linkat.c (linkat): Pass O_NOLINK in FLAGS.
@@ -187,9 +199,6 @@ + +2010-06-10 Andreas Schwab schwab@redhat.com + -+ * sysdeps/unix/sysv/linux/getpagesize.c: Don't assume AT_PAGESIZE -+ is always available. -+ + * sysdeps/unix/sysv/linux/i386/Versions: Export __uname under + GLIBC_PRIVATE. + * nptl/Versions: Export __getrlimit under GLIBC_PRIVATE. @@ -199,8 +208,9 @@ 2010-05-28 Luis Machado luisgpm@br.ibm.com
* sysdeps/powerpc/powerpc32/power7/memcpy.S: Exchange srdi for srwi. ---- glibc-2.14.1/ChangeLog.15 -+++ glibc-2.14.1-2/ChangeLog.15 +diff -Nur a/ChangeLog.15 b/ChangeLog.15 +--- a/ChangeLog.15 2011-12-22 16:50:52.000000000 +0000 ++++ b/ChangeLog.15 2011-12-22 17:59:24.542119295 +0000 @@ -477,6 +477,14 @@
2004-11-26 Jakub Jelinek jakub@redhat.com @@ -266,8 +276,9 @@ 2004-08-30 Roland McGrath roland@frob.com
* scripts/extract-abilist.awk: If `lastversion' variable defined, omit ---- glibc-2.14.1/ChangeLog.16 -+++ glibc-2.14.1-2/ChangeLog.16 +diff -Nur a/ChangeLog.16 b/ChangeLog.16 +--- a/ChangeLog.16 2011-12-22 16:50:52.000000000 +0000 ++++ b/ChangeLog.16 2011-12-22 17:59:24.545119296 +0000 @@ -2042,6 +2042,9 @@ (__MATHDECL_2): Use __REDIRECT_NTH instead of __REDIRECT followed by __THROW. @@ -290,8 +301,9 @@ 2006-01-19 Thomas Schwinge tschwinge@gnu.org
* libio/genops.c: Include <stdbool.h>. ---- glibc-2.14.1/ChangeLog.17 -+++ glibc-2.14.1-2/ChangeLog.17 +diff -Nur a/ChangeLog.17 b/ChangeLog.17 +--- a/ChangeLog.17 2011-12-22 16:50:52.000000000 +0000 ++++ b/ChangeLog.17 2011-12-22 17:59:24.549119296 +0000 @@ -256,6 +256,12 @@
* Makerules (libc-abis): Fix search for libc-abis in add-ons. @@ -305,21 +317,7 @@ 2010-04-05 Thomas Schwinge thomas@schwinge.name
* sysdeps/gnu/unwind-resume.c: New, moved from nptl/sysdeps/pthread/. -@@ -1010,6 +1016,13 @@ - * sysdeps/x86_64/fpu/fegetenv.c: Likewise - * sysdeps/s390/fpu/fegetenv.c: Likewise. Remove unused headers. - -+2009-10-27 Aurelien Jarno aurelien@aurel32.net -+ -+ [BZ #10855] -+ * locale/programs/locarchive.c: use MMAP_SHARED to reserve memory -+ used later with MMAP_FIXED | MMAP_SHARED to cope with different -+ alignment restrictions. -+ - 2010-02-05 H.J. Lu hongjiu.lu@intel.com - - [BZ #11230] -@@ -2953,6 +2966,11 @@ d2009-10-30 Ulrich Drepper drepper@redhat.com +@@ -2953,6 +2959,11 @@ * sysdeps/generic/ldsodefs.h (struct rtld_global): The map element in the unique symbol hash table should not be const.
@@ -331,7 +329,7 @@ 2009-07-21 Ulrich Drepper drepper@redhat.com
* sysdeps/x86_64/multiarch/strstr.c: Minor cleanups. Remove -@@ -3218,6 +3236,11 @@ d2009-10-30 Ulrich Drepper drepper@redhat.com +@@ -3218,6 +3229,11 @@ out common code into new function get_common_indeces. Determine extended family and model for Intel processors.
@@ -343,7 +341,7 @@ 2009-06-26 Ulrich Drepper drepper@redhat.com
* resolv/resolv.h: Define RES_SNGLKUPREOP. -@@ -11818,6 +11841,10 @@ d2009-10-30 Ulrich Drepper drepper@redhat.com +@@ -11818,6 +11834,10 @@ [BZ #4368] * stdlib/stdlib.h: Remove obsolete part of comment for realpath.
@@ -354,7 +352,7 @@ 2007-04-16 Ulrich Drepper drepper@redhat.com
[BZ #4364] -@@ -13075,6 +13102,15 @@ d2009-10-30 Ulrich Drepper drepper@redhat.com +@@ -13075,6 +13095,15 @@ separators also if no non-zero digits found. * stdlib/Makefile (tests): Add tst-strtod3.
@@ -370,9 +368,10 @@ 2006-12-09 Ulrich Drepper drepper@redhat.com
[BZ #3632] ---- glibc-2.14.1/Makeconfig -+++ glibc-2.14.1-2/Makeconfig -@@ -791,12 +791,12 @@ endif +diff -Nur a/Makeconfig b/Makeconfig +--- a/Makeconfig 2011-12-22 16:50:52.000000000 +0000 ++++ b/Makeconfig 2011-12-22 17:59:24.551119298 +0000 +@@ -803,12 +803,12 @@ # The assembler can generate debug information too. ifndef ASFLAGS ifeq ($(have-cpp-asm-debuginfo),yes) @@ -388,9 +387,10 @@
ifndef BUILD_CC BUILD_CC = $(CC) ---- glibc-2.14.1/NEWS -+++ glibc-2.14.1-2/NEWS -@@ -27,16 +27,6 @@ Version 2.14 +diff -Nur a/NEWS b/NEWS +--- a/NEWS 2011-12-22 16:50:52.000000000 +0000 ++++ b/NEWS 2011-12-22 17:59:24.552119299 +0000 +@@ -83,16 +83,6 @@ 12724, 12734, 12738, 12746, 12766, 12775, 12777, 12782, 12788, 12792, 12795, 12811, 12813, 12814, 12841
@@ -407,9 +407,10 @@ * New Linux interfaces: clock_adjtime, name_to_handle_at, open_by_handle_at, syncfs, setns, sendmmsg
---- glibc-2.14.1/config.h.in -+++ glibc-2.14.1-2/config.h.in -@@ -204,6 +204,9 @@ +diff -Nur a/config.h.in b/config.h.in +--- a/config.h.in 2011-12-22 16:50:52.000000000 +0000 ++++ b/config.h.in 2011-12-22 17:59:24.552119299 +0000 +@@ -187,6 +187,9 @@ /* Define if `.ctors' and `.dtors' sections shouldn't be used. */ #undef NO_CTORS_DTORS_SECTIONS
@@ -419,25 +420,26 @@ /* */
---- glibc-2.14.1/configure -+++ glibc-2.14.1-2/configure -@@ -784,6 +784,7 @@ enable_all_warnings +diff -Nur a/configure b/configure +--- a/configure 2011-12-22 18:00:26.275139344 +0000 ++++ b/configure 2011-12-22 17:59:24.706119348 +0000 +@@ -791,6 +791,7 @@ + enable_all_warnings enable_multi_arch - enable_experimental_malloc enable_nss_crypt +enable_systemtap with_cpu ' ac_precious_vars='build_alias -@@ -1444,6 +1445,7 @@ Optional Features: - --enable-experimental-malloc - enable experimental malloc features +@@ -1450,6 +1451,7 @@ + --enable-multi-arch enable single DSO with optimizations for multiple + architectures --enable-nss-crypt enable libcrypt to use nss + --enable-systemtap enable systemtap static probe points [default=no]
Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] -@@ -3823,6 +3825,51 @@ else +@@ -3804,6 +3806,51 @@ fi
@@ -489,9 +491,10 @@ # The way shlib-versions is used to generate soversions.mk uses a # fairly simplistic model for name recognition that can't distinguish # i486-pc-linux-gnu fully from i486-pc-gnu. So we mutate a $host_os ---- glibc-2.14.1/configure.in -+++ glibc-2.14.1-2/configure.in -@@ -316,6 +316,29 @@ else +diff -Nur a/configure.in b/configure.in +--- a/configure.in 2011-12-22 16:50:52.000000000 +0000 ++++ b/configure.in 2011-12-22 17:59:24.555119299 +0000 +@@ -290,6 +290,29 @@ fi AC_SUBST(libc_cv_nss_crypt)
@@ -521,9 +524,10 @@ # The way shlib-versions is used to generate soversions.mk uses a # fairly simplistic model for name recognition that can't distinguish # i486-pc-linux-gnu fully from i486-pc-gnu. So we mutate a $host_os ---- glibc-2.14.1/csu/Makefile -+++ glibc-2.14.1-2/csu/Makefile -@@ -93,7 +93,8 @@ omit-deps += $(crtstuff) +diff -Nur a/csu/Makefile b/csu/Makefile +--- a/csu/Makefile 2011-12-22 16:50:52.000000000 +0000 ++++ b/csu/Makefile 2011-12-22 17:59:24.556119299 +0000 +@@ -93,7 +93,8 @@ $(crtstuff:%=$(objpfx)%.o): %.o: %.S $(objpfx)defs.h $(compile.S) -g0 $(ASFLAGS-.os) -o $@
@@ -533,9 +537,10 @@
vpath initfini.c $(sysdirs)
---- glibc-2.14.1/csu/elf-init.c -+++ glibc-2.14.1-2/csu/elf-init.c -@@ -63,6 +63,23 @@ extern void (*__init_array_end []) (int, char **, char **) +diff -Nur a/csu/elf-init.c b/csu/elf-init.c +--- a/csu/elf-init.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/csu/elf-init.c 2011-12-22 17:59:24.557119299 +0000 +@@ -64,6 +64,23 @@ extern void (*__fini_array_start []) (void) attribute_hidden; extern void (*__fini_array_end []) (void) attribute_hidden;
@@ -559,8 +564,9 @@
/* These function symbols are provided for the .init/.fini section entry points automagically by the linker. */ ---- glibc-2.14.1/debug/tst-chk1.c -+++ glibc-2.14.1-2/debug/tst-chk1.c +diff -Nur a/debug/tst-chk1.c b/debug/tst-chk1.c +--- a/debug/tst-chk1.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/debug/tst-chk1.c 2011-12-22 17:59:24.557119299 +0000 @@ -17,6 +17,9 @@ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. */ @@ -571,7 +577,7 @@ #include <assert.h> #include <fcntl.h> #include <locale.h> -@@ -242,7 +245,7 @@ do_test (void) +@@ -243,7 +246,7 @@ if (memcmp (a.buf1, "aabcdabcjj", 10)) FAIL ();
@@ -580,7 +586,7 @@ /* The following tests are supposed to crash with -D_FORTIFY_SOURCE=2 and sufficient GCC support, as the string operations overflow from a.buf1 into a.buf2. */ -@@ -357,7 +360,7 @@ do_test (void) +@@ -358,7 +361,7 @@ memset (a.buf1 + 9, 'j', l0 + 2); CHK_FAIL_END
@@ -589,9 +595,10 @@ # define O 0 # else # define O 1 ---- glibc-2.14.1/elf/Makefile -+++ glibc-2.14.1-2/elf/Makefile -@@ -135,6 +135,7 @@ include ../Makeconfig +diff -Nur a/elf/Makefile b/elf/Makefile +--- a/elf/Makefile 2011-12-22 16:50:52.000000000 +0000 ++++ b/elf/Makefile 2011-12-22 17:59:24.558119299 +0000 +@@ -135,6 +135,7 @@ ifeq ($(unwind-find-fde),yes) routines += unwind-dw2-fde-glibc shared-only-routines += unwind-dw2-fde-glibc @@ -599,7 +606,7 @@ endif
before-compile = $(objpfx)trusted-dirs.h -@@ -504,7 +505,8 @@ CFLAGS-ldconfig.c = $(SYSCONF-FLAGS) -D'LIBDIR="$(libdir)"' \ +@@ -505,7 +506,8 @@ CFLAGS-dl-cache.c = $(SYSCONF-FLAGS) CFLAGS-cache.c = $(SYSCONF-FLAGS)
@@ -609,9 +616,10 @@
test-modules = $(addprefix $(objpfx),$(addsuffix .so,$(strip $(modules-names)))) generated += $(addsuffix .so,$(strip $(modules-names))) ---- glibc-2.14.1/elf/dl-close.c -+++ glibc-2.14.1-2/elf/dl-close.c -@@ -119,17 +119,8 @@ _dl_close_worker (struct link_map *map) +diff -Nur a/elf/dl-close.c b/elf/dl-close.c +--- a/elf/dl-close.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/elf/dl-close.c 2011-12-22 17:59:24.559119299 +0000 +@@ -119,17 +119,8 @@ if (map->l_direct_opencount > 0 || map->l_type != lt_loaded || dl_close_state != not_pending) { @@ -631,9 +639,10 @@
/* There are still references to this object. Do nothing more. */ if (__builtin_expect (GLRO(dl_debug_mask) & DL_DEBUG_FILES, 0)) ---- glibc-2.14.1/elf/dl-deps.c -+++ glibc-2.14.1-2/elf/dl-deps.c -@@ -478,6 +478,7 @@ _dl_map_object_deps (struct link_map *map, +diff -Nur a/elf/dl-deps.c b/elf/dl-deps.c +--- a/elf/dl-deps.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/elf/dl-deps.c 2011-12-22 17:59:24.559119299 +0000 +@@ -489,6 +489,7 @@ nneeded * sizeof needed[0]); atomic_write_barrier (); l->l_initfini = l_initfini; @@ -641,7 +650,7 @@ }
/* If we have no auxiliary objects just go on to the next map. */ -@@ -678,6 +679,7 @@ Filters not supported with LD_TRACE_PRELINKING")); +@@ -689,6 +690,7 @@ l_initfini[nlist] = NULL; atomic_write_barrier (); map->l_initfini = l_initfini; @@ -649,7 +658,7 @@ if (l_reldeps != NULL) { atomic_write_barrier (); -@@ -686,7 +688,7 @@ Filters not supported with LD_TRACE_PRELINKING")); +@@ -697,7 +699,7 @@ _dl_scope_free (old_l_reldeps); } if (old_l_initfini != NULL) @@ -658,8 +667,9 @@
if (errno_reason) _dl_signal_error (errno_reason == -1 ? 0 : errno_reason, objname, ---- glibc-2.14.1/elf/dl-init.c -+++ glibc-2.14.1-2/elf/dl-init.c +diff -Nur a/elf/dl-init.c b/elf/dl-init.c +--- a/elf/dl-init.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/elf/dl-init.c 2011-12-22 17:59:24.560119299 +0000 @@ -24,11 +24,9 @@ /* Type of the initializer. */ typedef void (*init_t) (int, char **, char **); @@ -672,7 +682,7 @@
static void -@@ -133,9 +131,7 @@ _dl_init (struct link_map *main_map, int argc, char **argv, char **env) +@@ -133,9 +131,7 @@ while (i-- > 0) call_init (main_map->l_initfini[i], argc, argv, env);
@@ -682,9 +692,10 @@ -#endif } INTDEF (_dl_init) ---- glibc-2.14.1/elf/dl-libc.c -+++ glibc-2.14.1-2/elf/dl-libc.c -@@ -265,13 +265,13 @@ libc_freeres_fn (free_mem) +diff -Nur a/elf/dl-libc.c b/elf/dl-libc.c +--- a/elf/dl-libc.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/elf/dl-libc.c 2011-12-22 17:59:24.560119299 +0000 +@@ -270,13 +270,13 @@
for (Lmid_t ns = 0; ns < GL(dl_nns); ++ns) { @@ -699,7 +710,7 @@ while (lnp != NULL) { struct libname_list *old = lnp; -@@ -279,6 +279,10 @@ libc_freeres_fn (free_mem) +@@ -284,6 +284,10 @@ if (! old->dont_free) free (old); } @@ -710,9 +721,10 @@ }
if (__builtin_expect (GL(dl_ns)[ns]._ns_global_scope_alloc, 0) != 0 ---- glibc-2.14.1/elf/dl-load.c -+++ glibc-2.14.1-2/elf/dl-load.c -@@ -250,8 +250,7 @@ is_trusted_path_normalize (const char *path, size_t len) +diff -Nur a/elf/dl-load.c b/elf/dl-load.c +--- a/elf/dl-load.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/elf/dl-load.c 2011-12-22 17:59:24.561119300 +0000 +@@ -250,8 +250,7 @@
static size_t @@ -722,7 +734,7 @@ { size_t len; bool is_curly = false; -@@ -280,12 +279,6 @@ is_dst (const char *start, const char *name, const char *str, +@@ -280,12 +279,6 @@ && (!is_path || name[len] != ':')) return 0;
@@ -735,7 +747,7 @@ return len; }
-@@ -300,13 +293,10 @@ _dl_dst_count (const char *name, int is_path) +@@ -300,13 +293,10 @@ { size_t len;
@@ -752,7 +764,7 @@ ++cnt;
name = strchr (name + len, '$'); -@@ -339,9 +329,16 @@ _dl_dst_substitute (struct link_map *l, const char *name, char *result, +@@ -339,9 +329,16 @@ size_t len;
++name; @@ -771,7 +783,7 @@ #ifndef SHARED if (l == NULL) repl = _dl_get_origin (); -@@ -352,9 +349,9 @@ _dl_dst_substitute (struct link_map *l, const char *name, char *result, +@@ -352,9 +349,9 @@ check_for_trusted = (INTUSE(__libc_enable_secure) && l->l_type == lt_executable); } @@ -783,7 +795,7 @@ repl = DL_DST_LIB;
if (repl != NULL && repl != (const char *) -1) -@@ -374,6 +371,7 @@ _dl_dst_substitute (struct link_map *l, const char *name, char *result, +@@ -374,6 +371,7 @@ element, but keep an empty element at the end. */ if (wp == result && is_path && *name == ':' && name[1] != '\0') ++name; @@ -791,9 +803,10 @@ } else /* No DST we recognize. */ ---- glibc-2.14.1/elf/dl-support.c -+++ glibc-2.14.1-2/elf/dl-support.c -@@ -81,10 +81,8 @@ unsigned long long _dl_load_adds; +diff -Nur a/elf/dl-support.c b/elf/dl-support.c +--- a/elf/dl-support.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/elf/dl-support.c 2011-12-22 17:59:24.561119300 +0000 +@@ -82,10 +82,8 @@ create a fake scope containing nothing. */ struct r_scope_elem _dl_initial_searchlist;
@@ -804,9 +817,10 @@
/* Random data provided by the kernel. */ void *_dl_random; ---- glibc-2.14.1/elf/ldconfig.c -+++ glibc-2.14.1-2/elf/ldconfig.c -@@ -1034,17 +1034,19 @@ search_dirs (void) +diff -Nur a/elf/ldconfig.c b/elf/ldconfig.c +--- a/elf/ldconfig.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/elf/ldconfig.c 2011-12-22 17:59:24.562119301 +0000 +@@ -1034,17 +1034,19 @@
static void parse_conf_include (const char *config_file, unsigned int lineno, @@ -828,7 +842,7 @@
if (do_chroot && opt_chroot) { -@@ -1105,7 +1107,14 @@ parse_conf (const char *filename, bool do_chroot) +@@ -1105,7 +1107,14 @@ cp += 8; while ((dir = strsep (&cp, " \t")) != NULL) if (dir[0] != '\0') @@ -844,7 +858,7 @@ } else if (!strncasecmp (cp, "hwcap", 5) && isblank (cp[5])) { -@@ -1168,7 +1177,7 @@ parse_conf (const char *filename, bool do_chroot) +@@ -1168,7 +1177,7 @@ config files to read. */ static void parse_conf_include (const char *config_file, unsigned int lineno, @@ -853,7 +867,7 @@ { if (opt_chroot && pattern[0] != '/') error (EXIT_FAILURE, 0, -@@ -1200,7 +1209,7 @@ parse_conf_include (const char *config_file, unsigned int lineno, +@@ -1200,7 +1209,7 @@ { case 0: for (size_t i = 0; i < gl.gl_pathc; ++i) @@ -862,7 +876,7 @@ globfree64 (&gl); break;
-@@ -1243,6 +1252,8 @@ main (int argc, char **argv) +@@ -1243,6 +1252,8 @@ /* Set the text message domain. */ textdomain (_libc_intl_domainname);
@@ -871,7 +885,7 @@ /* Parse and process arguments. */ int remaining; argp_parse (&argp, argc, argv, 0, &remaining, NULL); -@@ -1352,12 +1363,14 @@ main (int argc, char **argv) +@@ -1352,12 +1363,14 @@
if (!opt_only_cline) { @@ -887,9 +901,10 @@ }
const char *aux_cache_file = _PATH_LDCONFIG_AUX_CACHE; ---- glibc-2.14.1/elf/ldd.bash.in -+++ glibc-2.14.1-2/elf/ldd.bash.in -@@ -167,18 +167,6 @@ warning: you do not have execution permission for" "`$file'" >&2 +diff -Nur a/elf/ldd.bash.in b/elf/ldd.bash.in +--- a/elf/ldd.bash.in 2011-12-22 16:50:52.000000000 +0000 ++++ b/elf/ldd.bash.in 2011-12-22 17:59:24.563119302 +0000 +@@ -167,18 +167,6 @@ fi done case $ret in @@ -908,7 +923,7 @@ 1) # This can be a non-ELF binary or no binary at all. nonelf "$file" || { -@@ -186,7 +174,7 @@ warning: you do not have execution permission for" "`$file'" >&2 +@@ -186,7 +174,7 @@ result=1 } ;; @@ -917,8 +932,9 @@ try_trace "$RTLD" "$file" || result=1 ;; *) ---- glibc-2.14.1/elf/rtld-Rules -+++ glibc-2.14.1-2/elf/rtld-Rules +diff -Nur a/elf/rtld-Rules b/elf/rtld-Rules +--- a/elf/rtld-Rules 2011-12-22 16:50:52.000000000 +0000 ++++ b/elf/rtld-Rules 2011-12-22 17:59:24.563119302 +0000 @@ -1,7 +1,7 @@ # Subroutine makefile for compiling libc modules linked into dynamic linker.
@@ -928,7 +944,7 @@ # This file is part of the GNU C Library.
# The GNU C Library is free software; you can redistribute it and/or -@@ -131,6 +131,6 @@ ifdef rtld-depfiles +@@ -131,6 +131,6 @@ endif
# This here is the whole point of all the shenanigans. @@ -936,9 +952,10 @@ +rtld-CPPFLAGS := -DNOT_IN_libc=1 -DIS_IN_rtld=1 -DIN_LIB=rtld
endif ---- glibc-2.14.1/elf/rtld.c -+++ glibc-2.14.1-2/elf/rtld.c -@@ -107,7 +107,6 @@ static struct audit_list +diff -Nur a/elf/rtld.c b/elf/rtld.c +--- a/elf/rtld.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/elf/rtld.c 2011-12-22 17:59:24.564119303 +0000 +@@ -107,7 +107,6 @@ struct audit_list *next; } *audit_list;
@@ -946,7 +963,7 @@ /* Set nonzero during loading and initialization of executable and libraries, cleared before the executable's entry point runs. This must not be initialized to nonzero, because the unused dynamic -@@ -117,7 +116,6 @@ static struct audit_list +@@ -117,7 +116,6 @@ never be called. */ int _dl_starting_up = 0; INTVARDEF(_dl_starting_up) @@ -954,7 +971,7 @@
/* This is the structure which defines all variables global to ld.so (except those which cannot be added for some reason). */ -@@ -923,10 +921,8 @@ dl_main (const ElfW(Phdr) *phdr, +@@ -929,10 +927,8 @@ /* Process the environment variable which control the behaviour. */ process_envvars (&mode);
@@ -965,7 +982,18 @@
if (*user_entry == (ElfW(Addr)) ENTRY_POINT) { -@@ -2263,6 +2259,7 @@ ERROR: ld.so: object '%s' cannot be loaded as audit interface: %s; ignored.\n", +@@ -1397,7 +1393,9 @@ + char *copy = malloc (len); + if (copy == NULL) + _dl_fatal_printf ("out of memory\n"); +- l->l_libname->name = l->l_name = memcpy (copy, dsoname, len); ++ l->l_libname->name = memcpy (copy, dsoname, len); ++ if (GLRO(dl_debug_mask)) ++ l->l_name = copy; + } + + /* Add the vDSO to the object list. */ +@@ -2276,6 +2274,7 @@ lnp->dont_free = 1; lnp = lnp->next; } @@ -973,7 +1001,7 @@
if (l != &GL(dl_rtld_map)) _dl_relocate_object (l, l->l_scope, GLRO(dl_lazy) ? RTLD_LAZY : 0, -@@ -2312,7 +2309,6 @@ ERROR: ld.so: object '%s' cannot be loaded as audit interface: %s; ignored.\n", +@@ -2327,7 +2326,6 @@
/* Make sure no new search directories have been added. */ assert (GLRO(dl_init_all_dirs) == GL(dl_all_dirs)); @@ -981,24 +1009,28 @@ if (! prelinked && rtld_multiple_ref) { /* There was an explicit ref to the dynamic linker as a shared lib. ---- glibc-2.14.1/extra-lib.mk -+++ glibc-2.14.1-2/extra-lib.mk -@@ -101,4 +101,4 @@ ifneq (,$(cpp-srcs-left)) +diff -Nur a/extra-lib.mk b/extra-lib.mk +--- a/extra-lib.mk 2011-12-22 16:50:52.000000000 +0000 ++++ b/extra-lib.mk 2011-12-22 17:59:24.564119303 +0000 +@@ -101,4 +101,4 @@ include $(patsubst %,$(..)cppflags-iterator.mk,$(cpp-srcs-left)) endif
-CPPFLAGS-$(lib) := -DNOT_IN_libc=1 -DIS_IN_$(lib)=1 +CPPFLAGS-$(lib) := -DNOT_IN_libc=1 -DIS_IN_$(lib)=1 -DIN_LIB=$(lib) ---- glibc-2.14.1/include/bits/stdlib-ldbl.h -+++ glibc-2.14.1-2/include/bits/stdlib-ldbl.h +diff -Nur a/include/bits/stdlib-ldbl.h b/include/bits/stdlib-ldbl.h +--- a/include/bits/stdlib-ldbl.h 1970-01-01 00:00:00.000000000 +0000 ++++ b/include/bits/stdlib-ldbl.h 2011-12-22 17:59:24.565119304 +0000 @@ -0,0 +1 @@ +#include <stdlib/bits/stdlib-ldbl.h> ---- glibc-2.14.1/include/bits/wchar-ldbl.h -+++ glibc-2.14.1-2/include/bits/wchar-ldbl.h +diff -Nur a/include/bits/wchar-ldbl.h b/include/bits/wchar-ldbl.h +--- a/include/bits/wchar-ldbl.h 1970-01-01 00:00:00.000000000 +0000 ++++ b/include/bits/wchar-ldbl.h 2011-12-22 17:59:24.565119304 +0000 @@ -0,0 +1 @@ +#include <wcsmbs/bits/wchar-ldbl.h> ---- glibc-2.14.1/include/features.h -+++ glibc-2.14.1-2/include/features.h +diff -Nur a/include/features.h b/include/features.h +--- a/include/features.h 2011-12-22 16:50:52.000000000 +0000 ++++ b/include/features.h 2011-12-22 17:59:24.565119304 +0000 @@ -310,8 +310,13 @@ #endif
@@ -1015,9 +1047,10 @@ # define __USE_FORTIFY_LEVEL 2 # else # define __USE_FORTIFY_LEVEL 1 ---- glibc-2.14.1/include/libc-symbols.h -+++ glibc-2.14.1-2/include/libc-symbols.h -@@ -635,7 +635,7 @@ for linking") +diff -Nur a/include/libc-symbols.h b/include/libc-symbols.h +--- a/include/libc-symbols.h 2011-12-22 16:50:52.000000000 +0000 ++++ b/include/libc-symbols.h 2011-12-22 17:59:24.566119304 +0000 +@@ -626,7 +626,7 @@ # define libc_hidden_proto(name, attrs...) hidden_proto (name, ##attrs) # define libc_hidden_def(name) hidden_def (name) # define libc_hidden_weak(name) hidden_weak (name) @@ -1026,8 +1059,9 @@ # define libc_hidden_ver(local, name) hidden_ver (local, name) # define libc_hidden_data_def(name) hidden_data_def (name) # define libc_hidden_data_weak(name) hidden_data_weak (name) ---- glibc-2.14.1/include/link.h -+++ glibc-2.14.1-2/include/link.h +diff -Nur a/include/link.h b/include/link.h +--- a/include/link.h 2011-12-22 16:50:52.000000000 +0000 ++++ b/include/link.h 2011-12-22 17:59:24.567119304 +0000 @@ -1,6 +1,6 @@ /* Data structure for communication from the run-time dynamic linker for loaded ELF shared objects. @@ -1036,7 +1070,7 @@ This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or -@@ -192,6 +192,9 @@ struct link_map +@@ -192,6 +192,9 @@ during LD_TRACE_PRELINKING=1 contains any DT_SYMBOLIC libraries. */ @@ -1046,7 +1080,7 @@
/* Collected information about own RPATH directories. */ struct r_search_path_struct l_rpath_dirs; -@@ -240,9 +243,6 @@ struct link_map +@@ -240,9 +243,6 @@
/* List of object in order of the init and fini calls. */ struct link_map **l_initfini; @@ -1056,8 +1090,18 @@
/* List of the dependencies introduced through symbol binding. */ struct link_map_reldeps ---- glibc-2.14.1/include/stap-probe.h -+++ glibc-2.14.1-2/include/stap-probe.h +@@ -290,7 +290,7 @@ + #endif + #ifndef FORCED_DYNAMIC_TLS_OFFSET + # if NO_TLS_OFFSET == 0 +-# define FORCED_DYNAMIC_TLS_OFFSET 1 ++# define FORCED_DYNAMIC_TLS_OFFSET -1 + # elif NO_TLS_OFFSET == -1 + # define FORCED_DYNAMIC_TLS_OFFSET -2 + # else +diff -Nur a/include/stap-probe.h b/include/stap-probe.h +--- a/include/stap-probe.h 1970-01-01 00:00:00.000000000 +0000 ++++ b/include/stap-probe.h 2011-12-22 17:59:24.567119304 +0000 @@ -0,0 +1,140 @@ +/* Macros for defining Systemtap <sys/sdt.h> static probe points. + Copyright (C) 2011 Free Software Foundation, Inc. @@ -1199,17 +1243,19 @@ +#endif /* USE_STAP_PROBE. */ + +#endif /* stap-probe.h */ ---- glibc-2.14.1/include/sys/resource.h -+++ glibc-2.14.1-2/include/sys/resource.h -@@ -13,4 +13,5 @@ extern int __getrusage (enum __rusage_who __who, struct rusage *__usage) +diff -Nur a/include/sys/resource.h b/include/sys/resource.h +--- a/include/sys/resource.h 2011-12-22 16:50:52.000000000 +0000 ++++ b/include/sys/resource.h 2011-12-22 17:59:24.567119304 +0000 +@@ -13,4 +13,5 @@
extern int __setrlimit (enum __rlimit_resource __resource, const struct rlimit *__rlimits); +libc_hidden_proto (__getrlimit) #endif ---- glibc-2.14.1/inet/Makefile -+++ glibc-2.14.1-2/inet/Makefile -@@ -57,6 +57,8 @@ tests := htontest test_ifindex tst-ntoa tst-ether_aton tst-network \ +diff -Nur a/inet/Makefile b/inet/Makefile +--- a/inet/Makefile 2011-12-22 16:50:52.000000000 +0000 ++++ b/inet/Makefile 2011-12-22 17:59:24.568119304 +0000 +@@ -57,6 +57,8 @@
include ../Rules
@@ -1218,9 +1264,10 @@ ifeq ($(have-thread-library),yes)
CFLAGS-gethstbyad_r.c = -DUSE_NSCD=1 -fexceptions ---- glibc-2.14.1/intl/locale.alias -+++ glibc-2.14.1-2/intl/locale.alias -@@ -57,8 +57,6 @@ korean ko_KR.eucKR +diff -Nur a/intl/locale.alias b/intl/locale.alias +--- a/intl/locale.alias 2011-12-22 16:50:52.000000000 +0000 ++++ b/intl/locale.alias 2011-12-22 17:59:24.568119304 +0000 +@@ -57,8 +57,6 @@ korean.euc ko_KR.eucKR ko_KR ko_KR.eucKR lithuanian lt_LT.ISO-8859-13 @@ -1229,9 +1276,10 @@ norwegian nb_NO.ISO-8859-1 nynorsk nn_NO.ISO-8859-1 polish pl_PL.ISO-8859-2 ---- glibc-2.14.1/libio/stdio.h -+++ glibc-2.14.1-2/libio/stdio.h -@@ -165,10 +165,12 @@ typedef _G_fpos64_t fpos64_t; +diff -Nur a/libio/stdio.h b/libio/stdio.h +--- a/libio/stdio.h 2011-12-22 16:50:52.000000000 +0000 ++++ b/libio/stdio.h 2011-12-22 17:59:24.569119304 +0000 +@@ -169,10 +169,12 @@ extern struct _IO_FILE *stdin; /* Standard input stream. */ extern struct _IO_FILE *stdout; /* Standard output stream. */ extern struct _IO_FILE *stderr; /* Standard error output stream. */ @@ -1244,8 +1292,9 @@
__BEGIN_NAMESPACE_STD /* Remove file FILENAME. */ ---- glibc-2.14.1/locale/iso-4217.def -+++ glibc-2.14.1-2/locale/iso-4217.def +diff -Nur a/locale/iso-4217.def b/locale/iso-4217.def +--- a/locale/iso-4217.def 2011-12-22 16:50:52.000000000 +0000 ++++ b/locale/iso-4217.def 2011-12-22 17:59:24.569119304 +0000 @@ -8,6 +8,7 @@ * * !!! The list has to be sorted !!! @@ -1254,7 +1303,7 @@ DEFINE_INT_CURR("AED") /* United Arab Emirates Dirham */ DEFINE_INT_CURR("AFN") /* Afghanistan Afgani */ DEFINE_INT_CURR("ALL") /* Albanian Lek */ -@@ -15,12 +16,14 @@ DEFINE_INT_CURR("AMD") /* Armenia Dram */ +@@ -15,12 +16,14 @@ DEFINE_INT_CURR("ANG") /* Netherlands Antilles */ DEFINE_INT_CURR("AOA") /* Angolan Kwanza */ DEFINE_INT_CURR("ARS") /* Argentine Peso */ @@ -1269,7 +1318,7 @@ DEFINE_INT_CURR("BGN") /* Bulgarian Lev */ DEFINE_INT_CURR("BHD") /* Bahraini Dinar */ DEFINE_INT_CURR("BIF") /* Burundi Franc */ -@@ -44,6 +47,7 @@ DEFINE_INT_CURR("CUP") /* Cuban Peso */ +@@ -44,6 +47,7 @@ DEFINE_INT_CURR("CVE") /* Cape Verde Escudo */ DEFINE_INT_CURR("CYP") /* Cypriot Pound */ DEFINE_INT_CURR("CZK") /* Czech Koruna */ @@ -1277,7 +1326,7 @@ DEFINE_INT_CURR("DJF") /* Djibouti Franc */ DEFINE_INT_CURR("DKK") /* Danish Krone (Faroe Islands, Greenland) */ DEFINE_INT_CURR("DOP") /* Dominican Republic */ -@@ -51,16 +55,20 @@ DEFINE_INT_CURR("DZD") /* Algerian Dinar */ +@@ -51,16 +55,20 @@ DEFINE_INT_CURR("EEK") /* Estonian Kroon */ DEFINE_INT_CURR("EGP") /* Egyptian Pound */ DEFINE_INT_CURR("ERN") /* Eritrean Nakfa */ @@ -1298,7 +1347,7 @@ DEFINE_INT_CURR("GTQ") /* Guatemala Quetzal */ DEFINE_INT_CURR("GYD") /* Guyana Dollar */ DEFINE_INT_CURR("HKD") /* Hong Kong Dollar */ -@@ -69,12 +77,14 @@ DEFINE_INT_CURR("HRK") /* Croatia Kuna */ +@@ -69,12 +77,14 @@ DEFINE_INT_CURR("HTG") /* Haiti Gourde */ DEFINE_INT_CURR("HUF") /* Hungarian Forint */ DEFINE_INT_CURR("IDR") /* Indonesia Rupiah */ @@ -1313,7 +1362,7 @@ DEFINE_INT_CURR("JEP") /* Jersey Pound */ DEFINE_INT_CURR("JMD") /* Jamaican Dollar */ DEFINE_INT_CURR("JOD") /* Jordanian Dinar */ -@@ -94,6 +104,7 @@ DEFINE_INT_CURR("LKR") /* Sri Lankan Rupee */ +@@ -94,6 +104,7 @@ DEFINE_INT_CURR("LRD") /* Liberian Dollar */ DEFINE_INT_CURR("LSL") /* Lesotho Maloti */ DEFINE_INT_CURR("LTL") /* Lithuanian Litas */ @@ -1321,7 +1370,7 @@ DEFINE_INT_CURR("LVL") /* Latvia Lat */ DEFINE_INT_CURR("LYD") /* Libyan Arab Jamahiriya Dinar */ DEFINE_INT_CURR("MAD") /* Moroccan Dirham */ -@@ -114,6 +125,7 @@ DEFINE_INT_CURR("MZM") /* Mozambique Metical */ +@@ -114,6 +125,7 @@ DEFINE_INT_CURR("NAD") /* Namibia Dollar */ DEFINE_INT_CURR("NGN") /* Nigeria Naira */ DEFINE_INT_CURR("NIO") /* Nicaragua Cordoba Oro */ @@ -1329,7 +1378,7 @@ DEFINE_INT_CURR("NOK") /* Norwegian Krone */ DEFINE_INT_CURR("NPR") /* Nepalese Rupee */ DEFINE_INT_CURR("NZD") /* New Zealand Dollar */ -@@ -124,6 +136,7 @@ DEFINE_INT_CURR("PGK") /* Papau New Guinea Kina */ +@@ -124,6 +136,7 @@ DEFINE_INT_CURR("PHP") /* Philippines Peso */ DEFINE_INT_CURR("PKR") /* Pakistan Rupee */ DEFINE_INT_CURR("PLN") /* Polish Zloty */ @@ -1337,18 +1386,10 @@ DEFINE_INT_CURR("PYG") /* Paraguay Guarani */ DEFINE_INT_CURR("QAR") /* Qatar Rial */ DEFINE_INT_CURR("ROL") /* Romanian Leu */ ---- glibc-2.14.1/locale/programs/locarchive.c -+++ glibc-2.14.1-2/locale/programs/locarchive.c -@@ -134,7 +134,7 @@ create_archive (const char *archivefname, struct locarhandle *ah) - size_t reserved = RESERVE_MMAP_SIZE; - int xflags = 0; - if (total < reserved -- && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_PRIVATE | MAP_ANON, -+ && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_SHARED | MAP_ANON, - -1, 0)) != MAP_FAILED)) - xflags = MAP_FIXED; - else -@@ -241,9 +241,9 @@ oldlocrecentcmp (const void *a, const void *b) +diff -Nur a/locale/programs/locarchive.c b/locale/programs/locarchive.c +--- a/locale/programs/locarchive.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/locale/programs/locarchive.c 2011-12-22 17:59:24.570119304 +0000 +@@ -253,9 +253,9 @@ /* forward decls for below */ static uint32_t add_locale (struct locarhandle *ah, const char *name, locale_data_t data, bool replace); @@ -1361,25 +1402,7 @@
static bool -@@ -396,7 +396,7 @@ enlarge_archive (struct locarhandle *ah, const struct locarhead *head) - size_t reserved = RESERVE_MMAP_SIZE; - int xflags = 0; - if (total < reserved -- && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_PRIVATE | MAP_ANON, -+ && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_SHARED | MAP_ANON, - -1, 0)) != MAP_FAILED)) - xflags = MAP_FIXED; - else -@@ -614,7 +614,7 @@ open_archive (struct locarhandle *ah, bool readonly) - int xflags = 0; - void *p; - if (st.st_size < reserved -- && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_PRIVATE | MAP_ANON, -+ && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_SHARED | MAP_ANON, - -1, 0)) != MAP_FAILED)) - xflags = MAP_FIXED; - else -@@ -649,7 +649,7 @@ close_archive (struct locarhandle *ah) +@@ -636,7 +636,7 @@ #include "../../intl/explodename.c" #include "../../intl/l10nflist.c"
@@ -1388,7 +1411,7 @@ insert_name (struct locarhandle *ah, const char *name, size_t name_len, bool replace) { -@@ -707,7 +707,7 @@ insert_name (struct locarhandle *ah, +@@ -694,7 +694,7 @@ return &namehashtab[idx]; }
@@ -1397,9 +1420,13 @@ add_alias (struct locarhandle *ah, const char *alias, bool replace, const char *oldname, uint32_t *locrec_offset_p) { ---- glibc-2.14.1/localedata/ChangeLog -+++ glibc-2.14.1-2/localedata/ChangeLog -@@ -1,3 +1,11 @@ +diff -Nur a/localedata/ChangeLog b/localedata/ChangeLog +--- a/localedata/ChangeLog 2011-12-22 16:50:52.000000000 +0000 ++++ b/localedata/ChangeLog 2011-12-22 17:59:24.571119304 +0000 +@@ -64,6 +64,14 @@ + * tests-mbwc/tst_funcs.h (TST_DECL_VARS, TST_HEAD_LOCALE): + Remove unused variable. + +2011-06-28 Andreas Schwab schwab@redhat.com + + * charmaps/GB18030: Correct some entries. @@ -1411,9 +1438,10 @@ 2011-05-21 Ulrich Drepper drepper@gmail.com
[BZ #12788] ---- glibc-2.14.1/localedata/Makefile -+++ glibc-2.14.1-2/localedata/Makefile -@@ -227,6 +227,7 @@ $(INSTALL-SUPPORTED-LOCALES): install-locales-dir +diff -Nur a/localedata/Makefile b/localedata/Makefile +--- a/localedata/Makefile 2011-12-22 16:50:52.000000000 +0000 ++++ b/localedata/Makefile 2011-12-22 17:59:24.572119304 +0000 +@@ -224,6 +224,7 @@ echo -n '...'; \ input=`echo $$locale | sed 's/([^.]*)[^@]*(.*)/\1\2/'`; \ $(LOCALEDEF) --alias-file=../intl/locale.alias \ @@ -1421,9 +1449,10 @@ -i locales/$$input -c -f charmaps/$$charset \ $(addprefix --prefix=,$(install_root)) $$locale; \ echo ' done'; \ ---- glibc-2.14.1/localedata/SUPPORTED -+++ glibc-2.14.1-2/localedata/SUPPORTED -@@ -86,6 +86,7 @@ cy_GB.UTF-8/UTF-8 \ +diff -Nur a/localedata/SUPPORTED b/localedata/SUPPORTED +--- a/localedata/SUPPORTED 2011-12-22 16:50:52.000000000 +0000 ++++ b/localedata/SUPPORTED 2011-12-22 17:59:24.572119304 +0000 +@@ -88,6 +88,7 @@ cy_GB/ISO-8859-14 \ da_DK.UTF-8/UTF-8 \ da_DK/ISO-8859-1 \ @@ -1431,7 +1460,7 @@ de_AT.UTF-8/UTF-8 \ de_AT/ISO-8859-1 \ de_AT@euro/ISO-8859-15 \ -@@ -117,6 +118,7 @@ en_DK.UTF-8/UTF-8 \ +@@ -119,6 +120,7 @@ en_DK/ISO-8859-1 \ en_GB.UTF-8/UTF-8 \ en_GB/ISO-8859-1 \ @@ -1439,7 +1468,7 @@ en_HK.UTF-8/UTF-8 \ en_HK/ISO-8859-1 \ en_IE.UTF-8/UTF-8 \ -@@ -132,6 +134,7 @@ en_SG.UTF-8/UTF-8 \ +@@ -134,6 +136,7 @@ en_SG/ISO-8859-1 \ en_US.UTF-8/UTF-8 \ en_US/ISO-8859-1 \ @@ -1447,7 +1476,7 @@ en_ZA.UTF-8/UTF-8 \ en_ZA/ISO-8859-1 \ en_ZM/UTF-8 \ -@@ -313,6 +316,8 @@ nl_NL/ISO-8859-1 \ +@@ -316,6 +319,8 @@ nl_NL@euro/ISO-8859-15 \ nn_NO.UTF-8/UTF-8 \ nn_NO/ISO-8859-1 \ @@ -1456,7 +1485,7 @@ nr_ZA/UTF-8 \ nso_ZA/UTF-8 \ oc_FR.UTF-8/UTF-8 \ -@@ -374,6 +379,7 @@ sv_FI/ISO-8859-1 \ +@@ -377,6 +382,7 @@ sv_FI@euro/ISO-8859-15 \ sv_SE.UTF-8/UTF-8 \ sv_SE/ISO-8859-1 \ @@ -1464,9 +1493,10 @@ sw_KE/UTF-8 \ sw_TZ/UTF-8 \ ta_IN/UTF-8 \ ---- glibc-2.14.1/localedata/locales/cy_GB -+++ glibc-2.14.1-2/localedata/locales/cy_GB -@@ -248,8 +248,11 @@ mon "<U0049><U006F><U006E><U0061><U0077><U0072>";/ +diff -Nur a/localedata/locales/cy_GB b/localedata/locales/cy_GB +--- a/localedata/locales/cy_GB 2011-12-22 16:50:52.000000000 +0000 ++++ b/localedata/locales/cy_GB 2011-12-22 17:59:24.573119304 +0000 +@@ -248,8 +248,11 @@ d_t_fmt "<U0044><U0079><U0064><U0064><U0020><U0025><U0041><U0020><U0025><U0064><U0020><U006d><U0069><U0073><U0020><U0025><U0042><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>" d_fmt "<U0025><U0064><U002E><U0025><U006D><U002E><U0025><U0079>" t_fmt "<U0025><U0054>" @@ -1480,9 +1510,10 @@ END LC_TIME
LC_MESSAGES ---- glibc-2.14.1/localedata/locales/en_GB -+++ glibc-2.14.1-2/localedata/locales/en_GB -@@ -116,8 +116,8 @@ mon "<U004A><U0061><U006E><U0075><U0061><U0072><U0079>";/ +diff -Nur a/localedata/locales/en_GB b/localedata/locales/en_GB +--- a/localedata/locales/en_GB 2011-12-22 16:50:52.000000000 +0000 ++++ b/localedata/locales/en_GB 2011-12-22 17:59:24.573119304 +0000 +@@ -116,8 +116,8 @@ d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>" d_fmt "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0079>" t_fmt "<U0025><U0054>" @@ -1493,8 +1524,9 @@ date_fmt "<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065>/ <U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020>/ <U0025><U005A><U0020><U0025><U0059>" ---- glibc-2.14.1/localedata/locales/no_NO -+++ glibc-2.14.1-2/localedata/locales/no_NO +diff -Nur a/localedata/locales/no_NO b/localedata/locales/no_NO +--- a/localedata/locales/no_NO 1970-01-01 00:00:00.000000000 +0000 ++++ b/localedata/locales/no_NO 2011-12-22 17:59:24.573119304 +0000 @@ -0,0 +1,69 @@ +escape_char / +comment_char % @@ -1565,8 +1597,9 @@ +LC_ADDRESS +copy "nb_NO" +END LC_ADDRESS ---- glibc-2.14.1/localedata/locales/zh_TW -+++ glibc-2.14.1-2/localedata/locales/zh_TW +diff -Nur a/localedata/locales/zh_TW b/localedata/locales/zh_TW +--- a/localedata/locales/zh_TW 2011-12-22 16:50:52.000000000 +0000 ++++ b/localedata/locales/zh_TW 2011-12-22 17:59:24.574119304 +0000 @@ -1,7 +1,7 @@ comment_char % escape_char / @@ -1576,7 +1609,7 @@ % charmap: BIG5-CP950 % % Original Author: -@@ -17,7 +17,7 @@ escape_char / +@@ -17,7 +17,7 @@ % Reference: http://wwwold.dkuug.dk/JTC1/SC22/WG20/docs/n690.pdf
LC_IDENTIFICATION @@ -1585,7 +1618,7 @@ source "" address "" contact "" -@@ -25,7 +25,7 @@ email "bug-glibc-locales@gnu.org" +@@ -25,7 +25,7 @@ tel "" fax "" language "Chinese" @@ -1594,8 +1627,9 @@ revision "0.2" date "2000-08-02" % ---- glibc-2.14.1/login/programs/pt_chown.c -+++ glibc-2.14.1-2/login/programs/pt_chown.c +diff -Nur a/login/programs/pt_chown.c b/login/programs/pt_chown.c +--- a/login/programs/pt_chown.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/login/programs/pt_chown.c 2011-12-22 17:59:24.574119304 +0000 @@ -29,6 +29,7 @@ #include <string.h> #include <sys/stat.h> @@ -1604,7 +1638,7 @@ #ifdef HAVE_LIBCAP # include <sys/capability.h> # include <sys/prctl.h> -@@ -143,7 +144,7 @@ main (int argc, char *argv[]) +@@ -143,7 +144,7 @@ uid_t uid = getuid (); int remaining;
@@ -1613,7 +1647,7 @@ { #ifdef HAVE_LIBCAP /* Drop privileges. */ -@@ -176,6 +177,13 @@ main (int argc, char *argv[]) +@@ -176,6 +177,13 @@
/* We aren't going to be using privileges, so drop them right now. */ setuid (uid); @@ -1627,7 +1661,7 @@
/* Set locale via LC_ALL. */ setlocale (LC_ALL, ""); -@@ -195,9 +203,5 @@ main (int argc, char *argv[]) +@@ -195,9 +203,5 @@ return EXIT_FAILURE; }
@@ -1637,8 +1671,9 @@ - return EXIT_SUCCESS; } ---- glibc-2.14.1/malloc/mcheck.c -+++ glibc-2.14.1-2/malloc/mcheck.c +diff -Nur a/malloc/mcheck.c b/malloc/mcheck.c +--- a/malloc/mcheck.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/malloc/mcheck.c 2011-12-22 17:59:24.575119304 +0000 @@ -25,10 +25,26 @@ # include <mcheck.h> # include <stdint.h> @@ -1666,7 +1701,7 @@ /* Old hook values. */ static void (*old_free_hook) (__ptr_t ptr, __const __ptr_t); static __ptr_t (*old_malloc_hook) (__malloc_size_t size, const __ptr_t); -@@ -199,7 +215,7 @@ freehook (__ptr_t ptr, const __ptr_t caller) +@@ -199,7 +215,7 @@ if (old_free_hook != NULL) (*old_free_hook) (ptr, caller); else @@ -1675,7 +1710,7 @@ __free_hook = freehook; }
-@@ -222,7 +238,7 @@ mallochook (__malloc_size_t size, const __ptr_t caller) +@@ -222,7 +238,7 @@ hdr = (struct hdr *) (*old_malloc_hook) (sizeof (struct hdr) + size + 1, caller); else @@ -1684,7 +1719,7 @@ __malloc_hook = mallochook; if (hdr == NULL) return NULL; -@@ -259,7 +275,7 @@ memalignhook (__malloc_size_t alignment, __malloc_size_t size, +@@ -259,7 +275,7 @@ if (old_memalign_hook != NULL) block = (*old_memalign_hook) (alignment, slop + size + 1, caller); else @@ -1693,7 +1728,7 @@ __memalign_hook = memalignhook; if (block == NULL) return NULL; -@@ -320,8 +336,8 @@ reallochook (__ptr_t ptr, __malloc_size_t size, const __ptr_t caller) +@@ -320,8 +336,8 @@ sizeof (struct hdr) + size + 1, caller); else @@ -1704,7 +1739,7 @@ __free_hook = freehook; __malloc_hook = mallochook; __memalign_hook = memalignhook; -@@ -381,8 +397,8 @@ mcheck (func) +@@ -381,8 +397,8 @@ if (__malloc_initialized <= 0 && !mcheck_used) { /* We call malloc() once here to ensure it is initialized. */ @@ -1715,8 +1750,9 @@
old_free_hook = __free_hook; __free_hook = freehook; ---- glibc-2.14.1/manual/libc.texinfo -+++ glibc-2.14.1-2/manual/libc.texinfo +diff -Nur a/manual/libc.texinfo b/manual/libc.texinfo +--- a/manual/libc.texinfo 2011-12-22 16:50:52.000000000 +0000 ++++ b/manual/libc.texinfo 2011-12-22 17:59:24.575119304 +0000 @@ -5,7 +5,7 @@ @c setchapternewpage odd
@@ -1726,9 +1762,10 @@ @direntry * Libc: (libc). C library. @end direntry ---- glibc-2.14.1/misc/sys/cdefs.h -+++ glibc-2.14.1-2/misc/sys/cdefs.h -@@ -132,7 +132,10 @@ +diff -Nur a/misc/sys/cdefs.h b/misc/sys/cdefs.h +--- a/misc/sys/cdefs.h 2011-12-22 16:50:52.000000000 +0000 ++++ b/misc/sys/cdefs.h 2011-12-22 17:59:24.576119305 +0000 +@@ -146,7 +146,10 @@ #define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1) #define __bos0(ptr) __builtin_object_size (ptr, 0)
@@ -1740,7 +1777,7 @@ # define __warndecl(name, msg) \ extern void name (void) __attribute__((__warning__ (msg))) # define __warnattr(msg) __attribute__((__warning__ (msg))) -@@ -291,10 +294,16 @@ +@@ -316,10 +319,16 @@
/* GCC 4.3 and above with -std=c99 or -std=gnu99 implements ISO C99 inline semantics, unless -fgnu89-inline is used. */ @@ -1759,7 +1796,7 @@ # define __extern_always_inline \ extern __always_inline __attribute__ ((__gnu_inline__, __artificial__)) # else -@@ -314,7 +323,10 @@ +@@ -339,7 +348,10 @@
/* GCC 4.3 and above allow passing all anonymous arguments of an __extern_always_inline function to some other vararg function. */ @@ -1771,9 +1808,10 @@ # define __va_arg_pack() __builtin_va_arg_pack () # define __va_arg_pack_len() __builtin_va_arg_pack_len () #endif ---- glibc-2.14.1/nis/Makefile -+++ glibc-2.14.1-2/nis/Makefile -@@ -23,9 +23,9 @@ subdir := nis +diff -Nur a/nis/Makefile b/nis/Makefile +--- a/nis/Makefile 2011-12-22 16:50:52.000000000 +0000 ++++ b/nis/Makefile 2011-12-22 17:59:24.576119305 +0000 +@@ -23,9 +23,9 @@
aux := nis_hash
@@ -1785,7 +1823,7 @@
# These are the databases available for the nis (and perhaps later nisplus) # service. This must be a superset of the services in nss. -@@ -69,6 +69,8 @@ libnss_nisplus-inhibit-o = $(filter-out .os,$(object-suffixes)) +@@ -69,6 +69,8 @@
include ../Rules
@@ -1794,8 +1832,9 @@
$(objpfx)libnss_compat.so: $(objpfx)libnsl.so$(libnsl.so-version) $(objpfx)libnss_nis.so: $(objpfx)libnsl.so$(libnsl.so-version) \ ---- glibc-2.14.1/nis/nss -+++ glibc-2.14.1-2/nis/nss +diff -Nur a/nis/nss b/nis/nss +--- a/nis/nss 2011-12-22 16:50:52.000000000 +0000 ++++ b/nis/nss 2011-12-22 17:59:24.577119306 +0000 @@ -25,7 +25,7 @@ # memory with every getXXent() call. Otherwise each getXXent() call # might result into a network communication with the server to get @@ -1805,9 +1844,10 @@ # # ADJUNCT_AS_SHADOW # If set to TRUE, the passwd routines in the NIS NSS module will not ---- glibc-2.14.1/nptl/ChangeLog -+++ glibc-2.14.1-2/nptl/ChangeLog -@@ -45,6 +45,51 @@ +diff -Nur a/nptl/ChangeLog b/nptl/ChangeLog +--- a/nptl/ChangeLog 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/ChangeLog 2011-12-22 17:59:24.579119308 +0000 +@@ -195,6 +195,51 @@ clearing memory. Patch partly by Robert Rex robert.rex@exasol.com.
@@ -1859,7 +1899,7 @@ 2011-01-19 Roland McGrath roland@redhat.com
* pthread_cond_wait.c (__pthread_cond_wait): Fix comment typo. -@@ -4774,6 +4819,11 @@ +@@ -4924,6 +4969,11 @@ Move definition inside libpthread, libc, librt check. Provide definition for rtld.
@@ -1871,7 +1911,7 @@ 2004-09-02 Ulrich Drepper drepper@redhat.com
* sysdeps/alpha/jmpbuf-unwind.h: Define __libc_unwind_longjmp. -@@ -6848,6 +6898,11 @@ +@@ -6998,6 +7048,11 @@
* Makefile [$(build-shared) = yes] (tests): Depend on $(test-modules).
@@ -1883,8 +1923,9 @@ 2003-07-25 Jakub Jelinek jakub@redhat.com
* tst-cancel17.c (do_test): Check if aio_cancel failed. ---- glibc-2.14.1/nptl/DESIGN-systemtap-probes.txt -+++ glibc-2.14.1-2/nptl/DESIGN-systemtap-probes.txt +diff -Nur a/nptl/DESIGN-systemtap-probes.txt b/nptl/DESIGN-systemtap-probes.txt +--- a/nptl/DESIGN-systemtap-probes.txt 1970-01-01 00:00:00.000000000 +0000 ++++ b/nptl/DESIGN-systemtap-probes.txt 2011-12-22 17:59:24.580119308 +0000 @@ -0,0 +1,89 @@ +Systemtap is a dynamic tracing/instrumenting tool available on Linux. Probes +that are not fired at run time have close to zero overhead. @@ -1975,9 +2016,10 @@ + arg1 = condition +cond_broadcast - probe for pthread_cond_broadcast + arg1 = condition ---- glibc-2.14.1/nptl/Makefile -+++ glibc-2.14.1-2/nptl/Makefile -@@ -342,7 +342,8 @@ endif +diff -Nur a/nptl/Makefile b/nptl/Makefile +--- a/nptl/Makefile 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/Makefile 2011-12-22 17:59:24.580119308 +0000 +@@ -342,7 +342,8 @@ extra-objs += $(crti-objs) $(crtn-objs) omit-deps += crti crtn
@@ -1987,7 +2029,7 @@ endif
CFLAGS-flockfile.c = -D_IO_MTSAFE_IO -@@ -529,15 +530,19 @@ $(addprefix $(objpfx), \ +@@ -529,15 +530,19 @@ $(tests) $(xtests) $(test-srcs))): $(objpfx)libpthread.so \ $(objpfx)libpthread_nonshared.a $(objpfx)tst-unload: $(common-objpfx)dlfcn/libdl.so @@ -2009,9 +2051,10 @@ else $(addprefix $(objpfx),$(tests) $(test-srcs)): $(objpfx)libpthread.a endif ---- glibc-2.14.1/nptl/Versions -+++ glibc-2.14.1-2/nptl/Versions -@@ -30,6 +30,7 @@ libc { +diff -Nur a/nptl/Versions b/nptl/Versions +--- a/nptl/Versions 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/Versions 2011-12-22 17:59:24.581119308 +0000 +@@ -30,6 +30,7 @@ __libc_alloca_cutoff; # Internal libc interface to libpthread __libc_dl_error_tsd; @@ -2019,9 +2062,10 @@ } }
---- glibc-2.14.1/nptl/nptl-init.c -+++ glibc-2.14.1-2/nptl/nptl-init.c -@@ -415,7 +415,7 @@ __pthread_initialize_minimal_internal (void) +diff -Nur a/nptl/nptl-init.c b/nptl/nptl-init.c +--- a/nptl/nptl-init.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/nptl-init.c 2011-12-22 17:59:24.581119308 +0000 +@@ -415,7 +415,7 @@ /* Determine the default allowed stack size. This is the size used in case the user does not specify one. */ struct rlimit limit; @@ -2030,8 +2074,9 @@ || limit.rlim_cur == RLIM_INFINITY) /* The system limit is not usable. Use an architecture-specific default. */ ---- glibc-2.14.1/nptl/pthread_cond_broadcast.c -+++ glibc-2.14.1-2/nptl/pthread_cond_broadcast.c +diff -Nur a/nptl/pthread_cond_broadcast.c b/nptl/pthread_cond_broadcast.c +--- a/nptl/pthread_cond_broadcast.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/pthread_cond_broadcast.c 2011-12-22 17:59:24.582119308 +0000 @@ -23,6 +23,7 @@ #include <lowlevellock.h> #include <pthread.h> @@ -2040,7 +2085,7 @@
#include <shlib-compat.h> #include <kernel-features.h> -@@ -32,6 +33,8 @@ int +@@ -32,6 +33,8 @@ __pthread_cond_broadcast (cond) pthread_cond_t *cond; { @@ -2049,8 +2094,9 @@ int pshared = (cond->__data.__mutex == (void *) ~0l) ? LLL_SHARED : LLL_PRIVATE; /* Make sure we are alone. */ ---- glibc-2.14.1/nptl/pthread_cond_destroy.c -+++ glibc-2.14.1-2/nptl/pthread_cond_destroy.c +diff -Nur a/nptl/pthread_cond_destroy.c b/nptl/pthread_cond_destroy.c +--- a/nptl/pthread_cond_destroy.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/pthread_cond_destroy.c 2011-12-22 17:59:24.582119308 +0000 @@ -20,6 +20,7 @@ #include <errno.h> #include <shlib-compat.h> @@ -2059,7 +2105,7 @@
int -@@ -29,6 +30,8 @@ __pthread_cond_destroy (cond) +@@ -29,6 +30,8 @@ int pshared = (cond->__data.__mutex == (void *) ~0l) ? LLL_SHARED : LLL_PRIVATE;
@@ -2068,8 +2114,9 @@ /* Make sure we are alone. */ lll_lock (cond->__data.__lock, pshared);
---- glibc-2.14.1/nptl/pthread_cond_init.c -+++ glibc-2.14.1-2/nptl/pthread_cond_init.c +diff -Nur a/nptl/pthread_cond_init.c b/nptl/pthread_cond_init.c +--- a/nptl/pthread_cond_init.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/pthread_cond_init.c 2011-12-22 17:59:24.583119308 +0000 @@ -20,6 +20,7 @@
#include <shlib-compat.h> @@ -2078,7 +2125,7 @@
int -@@ -42,6 +43,8 @@ __pthread_cond_init (cond, cond_attr) +@@ -42,6 +43,8 @@ ? NULL : (void *) ~0l); cond->__data.__broadcast_seq = 0;
@@ -2087,8 +2134,9 @@ return 0; } versioned_symbol (libpthread, __pthread_cond_init, ---- glibc-2.14.1/nptl/pthread_cond_signal.c -+++ glibc-2.14.1-2/nptl/pthread_cond_signal.c +diff -Nur a/nptl/pthread_cond_signal.c b/nptl/pthread_cond_signal.c +--- a/nptl/pthread_cond_signal.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/pthread_cond_signal.c 2011-12-22 17:59:24.583119308 +0000 @@ -26,6 +26,7 @@
#include <shlib-compat.h> @@ -2097,7 +2145,7 @@
int -@@ -35,6 +36,8 @@ __pthread_cond_signal (cond) +@@ -35,6 +36,8 @@ int pshared = (cond->__data.__mutex == (void *) ~0l) ? LLL_SHARED : LLL_PRIVATE;
@@ -2106,8 +2154,9 @@ /* Make sure we are alone. */ lll_lock (cond->__data.__lock, pshared);
---- glibc-2.14.1/nptl/pthread_cond_wait.c -+++ glibc-2.14.1-2/nptl/pthread_cond_wait.c +diff -Nur a/nptl/pthread_cond_wait.c b/nptl/pthread_cond_wait.c +--- a/nptl/pthread_cond_wait.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/pthread_cond_wait.c 2011-12-22 17:59:24.583119308 +0000 @@ -25,6 +25,7 @@ #include <pthreadP.h>
@@ -2116,7 +2165,7 @@
struct _condvar_cleanup_buffer -@@ -101,6 +102,8 @@ __pthread_cond_wait (cond, mutex) +@@ -101,6 +102,8 @@ int pshared = (cond->__data.__mutex == (void *) ~0l) ? LLL_SHARED : LLL_PRIVATE;
@@ -2125,9 +2174,10 @@ /* Make sure we are alone. */ lll_lock (cond->__data.__lock, pshared);
---- glibc-2.14.1/nptl/pthread_create.c -+++ glibc-2.14.1-2/nptl/pthread_create.c -@@ -31,6 +31,8 @@ +diff -Nur a/nptl/pthread_create.c b/nptl/pthread_create.c +--- a/nptl/pthread_create.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/pthread_create.c 2011-12-22 17:59:24.584119309 +0000 +@@ -32,6 +32,8 @@
#include <shlib-compat.h>
@@ -2136,7 +2186,7 @@
/* Local function to start thread and handle cleanup. */ static int start_thread (void *arg); -@@ -296,6 +298,8 @@ start_thread (void *arg) +@@ -300,6 +302,8 @@ CANCEL_RESET (oldtype); }
@@ -2145,7 +2195,7 @@ /* Run the code the user provided. */ #ifdef CALL_THREAD_FCT THREAD_SETMEM (pd, result, CALL_THREAD_FCT (pd)); -@@ -552,6 +556,8 @@ __pthread_create_2_1 (newthread, attr, start_routine, arg) +@@ -557,6 +561,8 @@ /* Pass the descriptor to the caller. */ *newthread = (pthread_t) pd;
@@ -2154,8 +2204,9 @@ /* Start the thread. */ return create_thread (pd, iattr, STACK_VARIABLES_ARGS); } ---- glibc-2.14.1/nptl/pthread_join.c -+++ glibc-2.14.1-2/nptl/pthread_join.c +diff -Nur a/nptl/pthread_join.c b/nptl/pthread_join.c +--- a/nptl/pthread_join.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/pthread_join.c 2011-12-22 17:59:24.585119309 +0000 @@ -23,6 +23,8 @@ #include <atomic.h> #include "pthreadP.h" @@ -2165,7 +2216,7 @@
static void cleanup (void *arg) -@@ -55,6 +57,8 @@ pthread_join (threadid, thread_return) +@@ -55,6 +57,8 @@ struct pthread *self = THREAD_SELF; int result = 0;
@@ -2174,7 +2225,7 @@ /* During the wait we change to asynchronous cancellation. If we are canceled the thread we are waiting for must be marked as un-wait-ed for again. */ -@@ -110,5 +114,7 @@ pthread_join (threadid, thread_return) +@@ -110,5 +114,7 @@ __free_tcb (pd); }
@@ -2182,8 +2233,9 @@ + return result; } ---- glibc-2.14.1/nptl/pthread_mutex_destroy.c -+++ glibc-2.14.1-2/nptl/pthread_mutex_destroy.c +diff -Nur a/nptl/pthread_mutex_destroy.c b/nptl/pthread_mutex_destroy.c +--- a/nptl/pthread_mutex_destroy.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/pthread_mutex_destroy.c 2011-12-22 17:59:24.585119309 +0000 @@ -20,11 +20,15 @@ #include <errno.h> #include "pthreadP.h" @@ -2200,8 +2252,9 @@ if ((mutex->__data.__kind & PTHREAD_MUTEX_ROBUST_NORMAL_NP) == 0 && mutex->__data.__nusers != 0) return EBUSY; ---- glibc-2.14.1/nptl/pthread_mutex_init.c -+++ glibc-2.14.1-2/nptl/pthread_mutex_init.c +diff -Nur a/nptl/pthread_mutex_init.c b/nptl/pthread_mutex_init.c +--- a/nptl/pthread_mutex_init.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/pthread_mutex_init.c 2011-12-22 17:59:24.586119309 +0000 @@ -24,6 +24,8 @@ #include <kernel-features.h> #include "pthreadP.h" @@ -2211,7 +2264,7 @@ static const struct pthread_mutexattr default_attr = { /* Default is a normal mutex, not shared between processes. */ -@@ -135,6 +137,8 @@ __pthread_mutex_init (mutex, mutexattr) +@@ -135,6 +137,8 @@ // mutex->__spins = 0; already done by memset // mutex->__next = NULL; already done by memset
@@ -2220,8 +2273,9 @@ return 0; } strong_alias (__pthread_mutex_init, pthread_mutex_init) ---- glibc-2.14.1/nptl/pthread_mutex_lock.c -+++ glibc-2.14.1-2/nptl/pthread_mutex_lock.c +diff -Nur a/nptl/pthread_mutex_lock.c b/nptl/pthread_mutex_lock.c +--- a/nptl/pthread_mutex_lock.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/pthread_mutex_lock.c 2011-12-22 17:59:24.586119309 +0000 @@ -24,6 +24,7 @@ #include <not-cancel.h> #include "pthreadP.h" @@ -2230,7 +2284,7 @@
#ifndef LLL_MUTEX_LOCK -@@ -48,6 +49,9 @@ __pthread_mutex_lock (mutex) +@@ -48,6 +49,9 @@ assert (sizeof (mutex->__size) >= sizeof (mutex->__data));
unsigned int type = PTHREAD_MUTEX_TYPE (mutex); @@ -2240,7 +2294,7 @@ if (__builtin_expect (type & ~PTHREAD_MUTEX_KIND_MASK_NP, 0)) return __pthread_mutex_lock_full (mutex);
-@@ -127,6 +131,8 @@ __pthread_mutex_lock (mutex) +@@ -127,6 +131,8 @@ ++mutex->__data.__nusers; #endif
@@ -2249,7 +2303,7 @@ return 0; }
-@@ -467,6 +473,8 @@ __pthread_mutex_lock_full (pthread_mutex_t *mutex) +@@ -467,6 +473,8 @@ ++mutex->__data.__nusers; #endif
@@ -2258,8 +2312,9 @@ return 0; } #ifndef __pthread_mutex_lock ---- glibc-2.14.1/nptl/pthread_mutex_timedlock.c -+++ glibc-2.14.1-2/nptl/pthread_mutex_timedlock.c +diff -Nur a/nptl/pthread_mutex_timedlock.c b/nptl/pthread_mutex_timedlock.c +--- a/nptl/pthread_mutex_timedlock.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/pthread_mutex_timedlock.c 2011-12-22 17:59:24.586119309 +0000 @@ -24,6 +24,8 @@ #include <lowlevellock.h> #include <not-cancel.h> @@ -2269,7 +2324,7 @@
int pthread_mutex_timedlock (mutex, abstime) -@@ -34,6 +36,8 @@ pthread_mutex_timedlock (mutex, abstime) +@@ -34,6 +36,8 @@ pid_t id = THREAD_GETMEM (THREAD_SELF, tid); int result = 0;
@@ -2278,7 +2333,7 @@ /* We must not check ABSTIME here. If the thread does not block abstime must not be checked for a valid value. */
-@@ -172,6 +176,8 @@ pthread_mutex_timedlock (mutex, abstime) +@@ -172,6 +176,8 @@
++mutex->__data.__count;
@@ -2287,7 +2342,7 @@ return 0; } } -@@ -242,6 +248,8 @@ pthread_mutex_timedlock (mutex, abstime) +@@ -242,6 +248,8 @@
++mutex->__data.__count;
@@ -2296,7 +2351,7 @@ return 0; } } -@@ -377,6 +385,8 @@ pthread_mutex_timedlock (mutex, abstime) +@@ -377,6 +385,8 @@
++mutex->__data.__count;
@@ -2305,7 +2360,7 @@ return 0; } } -@@ -477,6 +487,8 @@ pthread_mutex_timedlock (mutex, abstime) +@@ -477,6 +487,8 @@ /* Record the ownership. */ mutex->__data.__owner = id; ++mutex->__data.__nusers; @@ -2314,8 +2369,9 @@ }
out: ---- glibc-2.14.1/nptl/pthread_mutex_unlock.c -+++ glibc-2.14.1-2/nptl/pthread_mutex_unlock.c +diff -Nur a/nptl/pthread_mutex_unlock.c b/nptl/pthread_mutex_unlock.c +--- a/nptl/pthread_mutex_unlock.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/pthread_mutex_unlock.c 2011-12-22 17:59:24.587119309 +0000 @@ -22,6 +22,7 @@ #include <stdlib.h> #include "pthreadP.h" @@ -2324,7 +2380,7 @@
static int internal_function -@@ -50,6 +51,9 @@ __pthread_mutex_unlock_usercnt (mutex, decr) +@@ -50,6 +51,9 @@
/* Unlock. */ lll_unlock (mutex->__data.__lock, PTHREAD_MUTEX_PSHARED (mutex)); @@ -2334,7 +2390,7 @@ return 0; } else if (__builtin_expect (type == PTHREAD_MUTEX_RECURSIVE_NP, 1)) -@@ -272,6 +276,9 @@ __pthread_mutex_unlock_full (pthread_mutex_t *mutex, int decr) +@@ -272,6 +276,9 @@ PTHREAD_MUTEX_PSHARED (mutex));
int oldprio = newval >> PTHREAD_MUTEX_PRIO_CEILING_SHIFT; @@ -2344,7 +2400,7 @@ return __pthread_tpp_change_priority (oldprio, -1);
default: -@@ -279,6 +286,7 @@ __pthread_mutex_unlock_full (pthread_mutex_t *mutex, int decr) +@@ -279,6 +286,7 @@ return EINVAL; }
@@ -2352,8 +2408,9 @@ return 0; }
---- glibc-2.14.1/nptl/pthread_rwlock_destroy.c -+++ glibc-2.14.1-2/nptl/pthread_rwlock_destroy.c +diff -Nur a/nptl/pthread_rwlock_destroy.c b/nptl/pthread_rwlock_destroy.c +--- a/nptl/pthread_rwlock_destroy.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/pthread_rwlock_destroy.c 2011-12-22 17:59:24.587119309 +0000 @@ -18,12 +18,15 @@ 02111-1307 USA. */
@@ -2370,8 +2427,9 @@ /* Nothing to be done. For now. */ return 0; } ---- glibc-2.14.1/nptl/pthread_rwlock_rdlock.c -+++ glibc-2.14.1-2/nptl/pthread_rwlock_rdlock.c +diff -Nur a/nptl/pthread_rwlock_rdlock.c b/nptl/pthread_rwlock_rdlock.c +--- a/nptl/pthread_rwlock_rdlock.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/pthread_rwlock_rdlock.c 2011-12-22 17:59:24.588119309 +0000 @@ -22,6 +22,7 @@ #include <lowlevellock.h> #include <pthread.h> @@ -2380,7 +2438,7 @@
/* Acquire read lock for RWLOCK. */ -@@ -31,6 +32,8 @@ __pthread_rwlock_rdlock (rwlock) +@@ -31,6 +32,8 @@ { int result = 0;
@@ -2389,7 +2447,7 @@ /* Make sure we are alone. */ lll_lock (rwlock->__data.__lock, rwlock->__data.__shared);
-@@ -49,6 +52,8 @@ __pthread_rwlock_rdlock (rwlock) +@@ -49,6 +52,8 @@ --rwlock->__data.__nr_readers; result = EAGAIN; } @@ -2398,8 +2456,9 @@
break; } ---- glibc-2.14.1/nptl/pthread_rwlock_unlock.c -+++ glibc-2.14.1-2/nptl/pthread_rwlock_unlock.c +diff -Nur a/nptl/pthread_rwlock_unlock.c b/nptl/pthread_rwlock_unlock.c +--- a/nptl/pthread_rwlock_unlock.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/pthread_rwlock_unlock.c 2011-12-22 17:59:24.588119309 +0000 @@ -22,11 +22,14 @@ #include <lowlevellock.h> #include <pthread.h> @@ -2415,8 +2474,9 @@ lll_lock (rwlock->__data.__lock, rwlock->__data.__shared); if (rwlock->__data.__writer) rwlock->__data.__writer = 0; ---- glibc-2.14.1/nptl/pthread_rwlock_wrlock.c -+++ glibc-2.14.1-2/nptl/pthread_rwlock_wrlock.c +diff -Nur a/nptl/pthread_rwlock_wrlock.c b/nptl/pthread_rwlock_wrlock.c +--- a/nptl/pthread_rwlock_wrlock.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/pthread_rwlock_wrlock.c 2011-12-22 17:59:24.588119309 +0000 @@ -22,6 +22,7 @@ #include <lowlevellock.h> #include <pthread.h> @@ -2425,7 +2485,7 @@
/* Acquire write lock for RWLOCK. */ -@@ -31,6 +32,8 @@ __pthread_rwlock_wrlock (rwlock) +@@ -31,6 +32,8 @@ { int result = 0;
@@ -2434,7 +2494,7 @@ /* Make sure we are alone. */ lll_lock (rwlock->__data.__lock, rwlock->__data.__shared);
-@@ -41,6 +44,8 @@ __pthread_rwlock_wrlock (rwlock) +@@ -41,6 +44,8 @@ { /* Mark self as writer. */ rwlock->__data.__writer = THREAD_GETMEM (THREAD_SELF, tid); @@ -2443,8 +2503,9 @@ break; }
---- glibc-2.14.1/nptl/sysdeps/unix/sysv/linux/bits/posix_opt.h -+++ glibc-2.14.1-2/nptl/sysdeps/unix/sysv/linux/bits/posix_opt.h +diff -Nur a/nptl/sysdeps/unix/sysv/linux/bits/posix_opt.h b/nptl/sysdeps/unix/sysv/linux/bits/posix_opt.h +--- a/nptl/sysdeps/unix/sysv/linux/bits/posix_opt.h 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/sysdeps/unix/sysv/linux/bits/posix_opt.h 2011-12-22 17:59:24.589119309 +0000 @@ -189,4 +189,7 @@ /* Typed memory objects are not available. */ #define _POSIX_TYPED_MEMORY_OBJECTS -1 @@ -2453,8 +2514,9 @@ +#define _XOPEN_STREAMS -1 + #endif /* bits/posix_opt.h */ ---- glibc-2.14.1/nptl/sysdeps/unix/sysv/linux/i386/Versions -+++ glibc-2.14.1-2/nptl/sysdeps/unix/sysv/linux/i386/Versions +diff -Nur a/nptl/sysdeps/unix/sysv/linux/i386/Versions b/nptl/sysdeps/unix/sysv/linux/i386/Versions +--- a/nptl/sysdeps/unix/sysv/linux/i386/Versions 1970-01-01 00:00:00.000000000 +0000 ++++ b/nptl/sysdeps/unix/sysv/linux/i386/Versions 2011-12-22 17:59:24.589119309 +0000 @@ -0,0 +1,6 @@ +libc { + GLIBC_PRIVATE { @@ -2462,8 +2524,9 @@ + __uname; + } +} ---- glibc-2.14.1/nptl/sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S -+++ glibc-2.14.1-2/nptl/sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S +diff -Nur a/nptl/sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S +--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S 2011-12-22 17:59:24.589119309 +0000 @@ -22,6 +22,8 @@ #include <kernel-features.h> #include <lowlevellock.h> @@ -2473,7 +2536,7 @@ .text
#ifdef __ASSUME_PRIVATE_FUTEX -@@ -91,7 +93,8 @@ __lll_lock_wait_private: +@@ -91,7 +93,8 @@ cmpl %edx, %eax /* NB: %edx == 2 */ jne 2f
@@ -2483,8 +2546,9 @@ ENTER_KERNEL
2: movl %edx, %eax ---- glibc-2.14.1/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S -+++ glibc-2.14.1-2/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S +diff -Nur a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S +--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S 2011-12-22 17:59:24.590119310 +0000 @@ -24,6 +24,7 @@ #include <kernel-features.h> #include <pthread-pi-defines.h> @@ -2493,7 +2557,7 @@
.text
-@@ -49,6 +50,8 @@ __pthread_cond_broadcast: +@@ -49,6 +50,8 @@
movl 20(%esp), %ebx
@@ -2502,8 +2566,9 @@ /* Get internal lock. */ movl $1, %edx xorl %eax, %eax ---- glibc-2.14.1/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S -+++ glibc-2.14.1-2/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S +diff -Nur a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S +--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S 2011-12-22 17:59:24.590119310 +0000 @@ -24,7 +24,7 @@ #include <kernel-features.h> #include <pthread-pi-defines.h> @@ -2513,7 +2578,7 @@
.text
-@@ -45,6 +45,8 @@ __pthread_cond_signal: +@@ -45,6 +45,8 @@
movl 12(%esp), %edi
@@ -2522,8 +2587,9 @@ /* Get internal lock. */ movl $1, %edx xorl %eax, %eax ---- glibc-2.14.1/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S -+++ glibc-2.14.1-2/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S +diff -Nur a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S +--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S 2011-12-22 17:59:24.591119311 +0000 @@ -24,7 +24,7 @@ #include <pthread-errnos.h> #include <pthread-pi-defines.h> @@ -2533,7 +2599,7 @@
.text
-@@ -61,6 +61,8 @@ __pthread_cond_timedwait: +@@ -61,6 +61,8 @@ movl 20(%esp), %ebx movl 28(%esp), %ebp
@@ -2542,8 +2608,9 @@ cmpl $1000000000, 4(%ebp) movl $EINVAL, %eax jae 18f ---- glibc-2.14.1/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S -+++ glibc-2.14.1-2/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S +diff -Nur a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S +--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S 2011-12-22 17:59:24.591119311 +0000 @@ -25,6 +25,7 @@ #include <pthread-errnos.h> #include <pthread-pi-defines.h> @@ -2552,7 +2619,7 @@
.text -@@ -61,6 +62,8 @@ __pthread_cond_wait: +@@ -61,6 +62,8 @@ xorl %esi, %esi movl 20(%esp), %ebx
@@ -2561,8 +2628,9 @@ /* Get internal lock. */ movl $1, %edx xorl %eax, %eax ---- glibc-2.14.1/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S -+++ glibc-2.14.1-2/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S +diff -Nur a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S +--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S 2011-12-22 17:59:24.592119312 +0000 @@ -23,6 +23,7 @@ #include <pthread-errnos.h> #include <kernel-features.h> @@ -2571,7 +2639,7 @@
.text
-@@ -41,6 +42,8 @@ __pthread_rwlock_rdlock: +@@ -41,6 +42,8 @@ xorl %esi, %esi movl 12(%esp), %ebx
@@ -2580,8 +2648,9 @@ /* Get the lock. */ movl $1, %edx xorl %eax, %eax ---- glibc-2.14.1/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S -+++ glibc-2.14.1-2/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S +diff -Nur a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S +--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S 2011-12-22 17:59:24.592119312 +0000 @@ -23,6 +23,7 @@ #include <pthread-errnos.h> #include <kernel-features.h> @@ -2590,7 +2659,7 @@
.text
-@@ -41,6 +42,8 @@ __pthread_rwlock_wrlock: +@@ -41,6 +42,8 @@ xorl %esi, %esi movl 12(%esp), %ebx
@@ -2599,8 +2668,9 @@ /* Get the lock. */ movl $1, %edx xorl %eax, %eax ---- glibc-2.14.1/nptl/sysdeps/unix/sysv/linux/i386/lowlevellock.h -+++ glibc-2.14.1-2/nptl/sysdeps/unix/sysv/linux/i386/lowlevellock.h +diff -Nur a/nptl/sysdeps/unix/sysv/linux/i386/lowlevellock.h b/nptl/sysdeps/unix/sysv/linux/i386/lowlevellock.h +--- a/nptl/sysdeps/unix/sysv/linux/i386/lowlevellock.h 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/sysdeps/unix/sysv/linux/i386/lowlevellock.h 2011-12-22 17:59:24.593119312 +0000 @@ -20,6 +20,8 @@ #ifndef _LOWLEVELLOCK_H #define _LOWLEVELLOCK_H 1 @@ -2610,7 +2680,7 @@ #ifndef __ASSEMBLER__ # include <time.h> # include <sys/param.h> -@@ -226,6 +228,7 @@ LLL_STUB_UNWIND_INFO_END +@@ -226,6 +228,7 @@ do { \ int __ignore; \ register __typeof (nr) _nr asm ("edx") = (nr); \ @@ -2618,9 +2688,10 @@ __asm __volatile (LLL_EBX_LOAD \ LLL_ENTER_KERNEL \ LLL_EBX_LOAD \ ---- glibc-2.14.1/nptl/sysdeps/unix/sysv/linux/i386/smp.h -+++ glibc-2.14.1-2/nptl/sysdeps/unix/sysv/linux/i386/smp.h -@@ -37,7 +37,7 @@ is_smp_system (void) +diff -Nur a/nptl/sysdeps/unix/sysv/linux/i386/smp.h b/nptl/sysdeps/unix/sysv/linux/i386/smp.h +--- a/nptl/sysdeps/unix/sysv/linux/i386/smp.h 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/sysdeps/unix/sysv/linux/i386/smp.h 2011-12-22 17:59:24.593119312 +0000 +@@ -37,7 +37,7 @@ char *cp;
/* Try reading the number using `sysctl' first. */ @@ -2629,8 +2700,9 @@ cp = u.uts.version; else { ---- glibc-2.14.1/nptl/sysdeps/unix/sysv/linux/kernel-features.h -+++ glibc-2.14.1-2/nptl/sysdeps/unix/sysv/linux/kernel-features.h +diff -Nur a/nptl/sysdeps/unix/sysv/linux/kernel-features.h b/nptl/sysdeps/unix/sysv/linux/kernel-features.h +--- a/nptl/sysdeps/unix/sysv/linux/kernel-features.h 1970-01-01 00:00:00.000000000 +0000 ++++ b/nptl/sysdeps/unix/sysv/linux/kernel-features.h 2011-12-22 17:59:24.593119312 +0000 @@ -0,0 +1,6 @@ +#include_next <kernel-features.h> + @@ -2638,8 +2710,9 @@ +#ifndef __ASSUME_CLONE_THREAD_FLAGS +# define __ASSUME_CLONE_THREAD_FLAGS 1 +#endif ---- glibc-2.14.1/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S -+++ glibc-2.14.1-2/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S +diff -Nur a/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S b/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S +--- a/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S 2011-12-22 17:59:24.594119312 +0000 @@ -22,6 +22,8 @@ #include <kernel-features.h> #include <lowlevellock.h> @@ -2649,7 +2722,7 @@ .text
#ifdef __ASSUME_PRIVATE_FUTEX -@@ -91,7 +93,8 @@ __lll_lock_wait_private: +@@ -87,7 +89,8 @@ cmpl %edx, %eax /* NB: %edx == 2 */ jne 2f
@@ -2659,7 +2732,7 @@ syscall
2: movl %edx, %eax -@@ -130,7 +133,8 @@ __lll_lock_wait: +@@ -126,7 +129,8 @@ cmpl %edx, %eax /* NB: %edx == 2 */ jne 2f
@@ -2669,8 +2742,9 @@ syscall
2: movl %edx, %eax ---- glibc-2.14.1/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h -+++ glibc-2.14.1-2/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h +diff -Nur a/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h b/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h +--- a/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h 2011-12-22 17:59:24.594119312 +0000 @@ -20,6 +20,8 @@ #ifndef _LOWLEVELLOCK_H #define _LOWLEVELLOCK_H 1 @@ -2680,7 +2754,7 @@ #ifndef __ASSEMBLER__ # include <time.h> # include <sys/param.h> -@@ -227,6 +229,7 @@ LLL_STUB_UNWIND_INFO_END +@@ -227,6 +229,7 @@ do { \ int __ignore; \ register __typeof (nr) _nr __asm ("edx") = (nr); \ @@ -2688,8 +2762,9 @@ __asm __volatile ("syscall" \ : "=a" (__ignore) \ : "0" (SYS_futex), "D" (futex), \ ---- glibc-2.14.1/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_broadcast.S -+++ glibc-2.14.1-2/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_broadcast.S +diff -Nur a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_broadcast.S b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_broadcast.S +--- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_broadcast.S 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_broadcast.S 2011-12-22 17:59:24.595119312 +0000 @@ -25,7 +25,7 @@ #include <kernel-features.h> #include <pthread-pi-defines.h> @@ -2708,8 +2783,9 @@ /* Get internal lock. */ movl $1, %esi xorl %eax, %eax ---- glibc-2.14.1/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S -+++ glibc-2.14.1-2/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S +diff -Nur a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S +--- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S 2011-12-22 17:59:24.595119312 +0000 @@ -24,6 +24,7 @@ #include <pthread-pi-defines.h> #include <kernel-features.h> @@ -2727,8 +2803,9 @@ /* Get internal lock. */ movq %rdi, %r8 movl $1, %esi ---- glibc-2.14.1/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S -+++ glibc-2.14.1-2/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S +diff -Nur a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S +--- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S 2011-12-22 17:59:24.596119312 +0000 @@ -23,6 +23,7 @@ #include <lowlevelcond.h> #include <pthread-pi-defines.h> @@ -2737,7 +2814,7 @@
#include <kernel-features.h>
-@@ -71,6 +72,8 @@ __pthread_cond_timedwait: +@@ -68,6 +69,8 @@ cfi_adjust_cfa_offset(FRAME_SIZE) cfi_remember_state
@@ -2746,17 +2823,18 @@ cmpq $1000000000, 8(%rdx) movl $EINVAL, %eax jae 48f ---- glibc-2.14.1/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S -+++ glibc-2.14.1-2/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S -@@ -23,6 +23,7 @@ - #include <lowlevelcond.h> +diff -Nur a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S +--- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S 2011-12-22 17:59:24.596119312 +0000 +@@ -24,6 +24,7 @@ #include <tcb-offsets.h> #include <pthread-pi-defines.h> + #include <pthread-errnos.h> +#include <stap-probe.h>
#include <kernel-features.h>
-@@ -65,6 +66,8 @@ __pthread_cond_wait: +@@ -66,6 +67,8 @@ +--------------------------+ */
@@ -2765,8 +2843,9 @@ cmpq $-1, dep_mutex(%rdi)
/* Prepare structure passed to cancellation handler. */ ---- glibc-2.14.1/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S -+++ glibc-2.14.1-2/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S +diff -Nur a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S +--- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S 2011-12-22 17:59:24.597119312 +0000 @@ -22,7 +22,7 @@ #include <lowlevelrwlock.h> #include <pthread-errnos.h> @@ -2786,8 +2865,9 @@ xorq %r10, %r10
/* Get the lock. */ ---- glibc-2.14.1/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S -+++ glibc-2.14.1-2/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S +diff -Nur a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S +--- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S 2011-12-22 16:50:52.000000000 +0000 ++++ b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S 2011-12-22 17:59:24.597119312 +0000 @@ -22,7 +22,7 @@ #include <lowlevelrwlock.h> #include <pthread-errnos.h> @@ -2807,8 +2887,9 @@ xorq %r10, %r10
/* Get the lock. */ ---- glibc-2.14.1/nscd/nscd.conf -+++ glibc-2.14.1-2/nscd/nscd.conf +diff -Nur a/nscd/nscd.conf b/nscd/nscd.conf +--- a/nscd/nscd.conf 2011-12-22 16:50:52.000000000 +0000 ++++ b/nscd/nscd.conf 2011-12-22 17:59:24.597119312 +0000 @@ -33,7 +33,7 @@ # logfile /var/log/nscd.log # threads 4 @@ -2818,8 +2899,9 @@ # stat-user somebody debug-level 0 # reload-count 5 ---- glibc-2.14.1/nscd/nscd.init -+++ glibc-2.14.1-2/nscd/nscd.init +diff -Nur a/nscd/nscd.init b/nscd/nscd.init +--- a/nscd/nscd.init 2011-12-22 16:50:52.000000000 +0000 ++++ b/nscd/nscd.init 2011-12-22 17:59:24.598119312 +0000 @@ -9,6 +9,7 @@ # slow naming services like NIS, NIS+, LDAP, or hesiod. # processname: /usr/sbin/nscd @@ -2851,7 +2933,7 @@
RETVAL=0 prog=nscd -@@ -50,7 +39,7 @@ start () { +@@ -50,7 +39,7 @@ [ -d /var/run/nscd ] || mkdir /var/run/nscd [ -d /var/db/nscd ] || mkdir /var/db/nscd echo -n $"Starting $prog: " @@ -2860,7 +2942,7 @@ RETVAL=$? echo [ $RETVAL -eq 0 ] && touch /var/lock/subsys/nscd -@@ -83,11 +72,11 @@ restart() { +@@ -83,11 +72,11 @@ # See how we were called. case "$1" in start) @@ -2874,7 +2956,7 @@ RETVAL=$? ;; status) -@@ -99,14 +88,17 @@ case "$1" in +@@ -99,14 +88,17 @@ RETVAL=$? ;; try-restart | condrestart) @@ -2896,9 +2978,32 @@ ;; *) echo $"Usage: $0 {start|stop|status|restart|reload|condrestart}" ---- glibc-2.14.1/nss/Makefile -+++ glibc-2.14.1-2/nss/Makefile -@@ -75,6 +75,7 @@ endif +diff -Nur a/nscd/selinux.c b/nscd/selinux.c +--- a/nscd/selinux.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/nscd/selinux.c 2011-12-22 17:59:24.598119312 +0000 +@@ -270,6 +270,18 @@ + { + int rc; + ++#if defined HAVE_LIBAUDIT && defined HAVE_LIBCAP ++ if (server_user != NULL && getuid () == 0) ++ { ++ /* We need to preserve the capabilities in the AVC thread. */ ++ if (prctl (PR_SET_KEEPCAPS, 1) == -1) ++ { ++ dbg_log (_("Failed to set keep-capabilities")); ++ error (EXIT_FAILURE, errno, _("prctl(KEEPCAPS) failed")); ++ } ++ } ++#endif ++ + rc = + pthread_create (&avc_notify_thread, NULL, (void *(*) (void *)) run, NULL); + if (rc != 0) +diff -Nur a/nss/Makefile b/nss/Makefile +--- a/nss/Makefile 2011-12-22 16:50:52.000000000 +0000 ++++ b/nss/Makefile 2011-12-22 17:59:24.599119312 +0000 +@@ -88,6 +88,7 @@
include ../Rules
@@ -2906,16 +3011,10 @@
ifeq (yes,$(build-static-nss)) $(objpfx)getent: $(objpfx)libnss_files.a ---- glibc-2.14.1/nss/nss_files/files-XXX.c -+++ glibc-2.14.1-2/nss/nss_files/files-XXX.c -@@ -1,5 +1,5 @@ - /* Common code for file-based databases in nss_files module. -- Copyright (C) 1996-1999,2001,2002,2004,2007,2008 -+ Copyright (C) 1996-1999,2001,2002,2004,2007,2008,2010 - Free Software Foundation, Inc. - This file is part of the GNU C Library. - -@@ -190,7 +190,7 @@ internal_getent (struct STRUCTURE *result, +diff -Nur a/nss/nss_files/files-XXX.c b/nss/nss_files/files-XXX.c +--- a/nss/nss_files/files-XXX.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/nss/nss_files/files-XXX.c 2011-12-22 17:59:24.599119312 +0000 +@@ -190,7 +190,7 @@ { char *p; struct parser_data *data = (void *) buffer; @@ -2924,9 +3023,10 @@ int parse_result;
if (buflen < sizeof *data + 2) ---- glibc-2.14.1/posix/Makefile -+++ glibc-2.14.1-2/posix/Makefile -@@ -325,15 +325,8 @@ $(inst_libexecdir)/getconf: $(inst_bindir)/getconf \ +diff -Nur a/posix/Makefile b/posix/Makefile +--- a/posix/Makefile 2011-12-22 16:50:52.000000000 +0000 ++++ b/posix/Makefile 2011-12-22 17:59:24.600119312 +0000 +@@ -320,15 +320,8 @@ mv -f $@/$$spec.new $@/$$spec; \ done < $(objpfx)getconf.speclist
@@ -2946,8 +3046,9 @@ + | sed -n -e '/START_OF_STRINGS/,$${/(POSIX_V[67]|XBS5)_/{s/^[^"]*"//;s/".*$$//;p}}' \ + > $@.new mv -f $@.new $@ ---- glibc-2.14.1/posix/gai.conf -+++ glibc-2.14.1-2/posix/gai.conf +diff -Nur a/posix/gai.conf b/posix/gai.conf +--- a/posix/gai.conf 2011-12-22 16:50:52.000000000 +0000 ++++ b/posix/gai.conf 2011-12-22 17:59:24.600119312 +0000 @@ -41,7 +41,7 @@ # # precedence <mask> <value> @@ -2972,8 +3073,9 @@ #scopev4 ::ffff:0.0.0.0/96 14 +# +# This is what the Red Hat setting currently uses. ---- glibc-2.14.1/posix/getconf.speclist.h -+++ glibc-2.14.1-2/posix/getconf.speclist.h +diff -Nur a/posix/getconf.speclist.h b/posix/getconf.speclist.h +--- a/posix/getconf.speclist.h 1970-01-01 00:00:00.000000000 +0000 ++++ b/posix/getconf.speclist.h 2011-12-22 17:59:24.600119312 +0000 @@ -0,0 +1,39 @@ +#include <unistd.h> +const char *START_OF_STRINGS = @@ -3014,9 +3116,10 @@ +"XBS5_LPBIG_OFFBIG" +#endif +""; ---- glibc-2.14.1/posix/regcomp.c -+++ glibc-2.14.1-2/posix/regcomp.c -@@ -2745,40 +2745,29 @@ parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, re_token_t *token, +diff -Nur a/posix/regcomp.c b/posix/regcomp.c +--- a/posix/regcomp.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/posix/regcomp.c 2011-12-22 17:59:24.601119313 +0000 +@@ -2745,40 +2745,29 @@
/* Local function for parse_bracket_exp used in _LIBC environement. Seek the collating symbol entry correspondings to NAME. @@ -3036,7 +3139,8 @@ - if (symb_table[2 * elem] != 0) - { - int32_t second = hash % (table_size - 2) + 1; -- ++ int32_t elem; + - do - { - /* First compare the hashing value. */ @@ -3050,8 +3154,7 @@ - /* Yep, this is the entry. */ - break; - } -+ int32_t elem; - +- - /* Next entry. */ - elem += second; - } @@ -3075,7 +3178,7 @@ }
/* Local function for parse_bracket_exp used in _LIBC environment. -@@ -2787,8 +2776,7 @@ parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, re_token_t *token, +@@ -2787,8 +2776,7 @@
auto inline unsigned int __attribute ((always_inline)) @@ -3085,7 +3188,7 @@ { if (br_elem->type == SB_CHAR) { -@@ -2816,7 +2804,7 @@ parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, re_token_t *token, +@@ -2816,7 +2804,7 @@ int32_t elem, idx; elem = seek_collating_symbol_entry (br_elem->opr.name, sym_name_len); @@ -3094,7 +3197,7 @@ { /* We found the entry. */ idx = symb_table[2 * elem + 1]; -@@ -2834,7 +2822,7 @@ parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, re_token_t *token, +@@ -2834,7 +2822,7 @@ /* Return the collation sequence value. */ return *(unsigned int *) (extra + idx); } @@ -3103,7 +3206,7 @@ { /* No valid character. Match it as a single byte character. */ -@@ -2856,11 +2844,8 @@ parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, re_token_t *token, +@@ -2856,11 +2844,8 @@
auto inline reg_errcode_t __attribute ((always_inline)) @@ -3117,7 +3220,7 @@ { unsigned int ch; uint32_t start_collseq; -@@ -2939,25 +2924,22 @@ parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, re_token_t *token, +@@ -2939,25 +2924,22 @@
auto inline reg_errcode_t __attribute ((always_inline)) @@ -3147,19 +3250,21 @@ { /* No valid character, treat it as a normal character. */ ---- glibc-2.14.1/resolv/Makefile -+++ glibc-2.14.1-2/resolv/Makefile -@@ -77,6 +77,7 @@ CPPFLAGS += -Dgethostbyname=res_gethostbyname \ - -Dgetnetbyaddr=res_getnetbyaddr - +diff -Nur a/resolv/Makefile b/resolv/Makefile +--- a/resolv/Makefile 2011-12-22 16:50:52.000000000 +0000 ++++ b/resolv/Makefile 2011-12-22 17:59:24.602119314 +0000 +@@ -81,6 +81,7 @@ + CFLAGS-libresolv += -fstack-protector + endif CFLAGS-res_hconf.c = -fexceptions +CFLAGS-res_send.c += -fno-strict-aliasing
# The BIND code elicits some harmless warnings. +cflags += -Wno-strict-prototypes -Wno-write-strings ---- glibc-2.14.1/resource/getrlimit.c -+++ glibc-2.14.1-2/resource/getrlimit.c -@@ -28,6 +28,7 @@ __getrlimit (enum __rlimit_resource resource, struct rlimit *rlimits) +diff -Nur a/resource/getrlimit.c b/resource/getrlimit.c +--- a/resource/getrlimit.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/resource/getrlimit.c 2011-12-22 17:59:24.603119315 +0000 +@@ -28,6 +28,7 @@ __set_errno (ENOSYS); return -1; } @@ -3167,20 +3272,22 @@ weak_alias (__getrlimit, getrlimit)
stub_warning (getrlimit) ---- glibc-2.14.1/scripts/check-local-headers.sh -+++ glibc-2.14.1-2/scripts/check-local-headers.sh -@@ -31,6 +31,8 @@ fgrep -v "$includedir/asm" | - fgrep -v "$includedir/linux" | - fgrep -v "$includedir/selinux" | - fgrep -v "$includedir/sys/capability.h" | -+fgrep -v "$includedir/sys/sdt.h" | -+fgrep -v "$includedir/sys/sdt-config.h" | - fgrep -v "$includedir/gd" | - fgrep -v "$includedir/nss3"; then - # If we found a match something is wrong. ---- glibc-2.14.1/stdio-common/vfprintf.c -+++ glibc-2.14.1-2/stdio-common/vfprintf.c -@@ -1161,41 +1161,9 @@ vfprintf (FILE *s, const CHAR_T *format, va_list ap) +diff -Nur a/scripts/check-local-headers.sh b/scripts/check-local-headers.sh +--- a/scripts/check-local-headers.sh 2011-12-22 16:50:52.000000000 +0000 ++++ b/scripts/check-local-headers.sh 2011-12-22 17:59:24.603119315 +0000 +@@ -29,7 +29,7 @@ + BEGIN { + status = 0 + exclude = "^" includedir \ +- "/(asm[-/]|linux/|selinux/|gd|nss3/|sys/capability\.h|libaudit\.h)" ++ "/(asm[-/]|linux/|selinux/|gd|nss3/|sys/capability\.h|libaudit\.h|sys/sdt(-config)?\.h))" + } + /^[^ ]/ && $1 ~ /.*:/ { obj = $1 } + { +diff -Nur a/stdio-common/vfprintf.c b/stdio-common/vfprintf.c +--- a/stdio-common/vfprintf.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/stdio-common/vfprintf.c 2011-12-22 17:59:24.604119316 +0000 +@@ -1161,41 +1161,9 @@ else if (!is_long && spec != L_('S')) \ { \ if (prec != -1) \ @@ -3225,8 +3332,9 @@ else \ len = strlen (string); \ } \ ---- glibc-2.14.1/streams/Makefile -+++ glibc-2.14.1-2/streams/Makefile +diff -Nur a/streams/Makefile b/streams/Makefile +--- a/streams/Makefile 2011-12-22 16:50:52.000000000 +0000 ++++ b/streams/Makefile 2011-12-22 17:59:24.605119317 +0000 @@ -21,7 +21,7 @@ # subdir := streams @@ -3236,9 +3344,10 @@ routines = isastream getmsg getpmsg putmsg putpmsg fattach fdetach
include ../Rules ---- glibc-2.14.1/sunrpc/Makefile -+++ glibc-2.14.1-2/sunrpc/Makefile -@@ -53,7 +53,7 @@ headers-in-tirpc = $(addprefix rpc/,auth.h auth_unix.h clnt.h pmap_clnt.h \ +diff -Nur a/sunrpc/Makefile b/sunrpc/Makefile +--- a/sunrpc/Makefile 2011-12-22 16:50:52.000000000 +0000 ++++ b/sunrpc/Makefile 2011-12-22 17:59:24.605119317 +0000 +@@ -53,7 +53,7 @@ des_crypt.h) headers-not-in-tirpc = $(addprefix rpc/,key_prot.h rpc_des.h) \ $(rpcsvc:%=rpcsvc/%) rpcsvc/bootparam.h @@ -3247,7 +3356,7 @@ install-others = $(inst_sysconfdir)/rpc generated = $(rpcsvc:%.x=rpcsvc/%.h) $(rpcsvc:%.x=x%.c) $(rpcsvc:%.x=x%.stmp) \ $(rpcsvc:%.x=rpcsvc/%.stmp) rpcgen -@@ -152,6 +152,10 @@ CFLAGS-openchild.c = -fexceptions +@@ -152,6 +152,10 @@
CPPFLAGS += -D_RPC_THREAD_SAFE_
@@ -3258,8 +3367,9 @@ $(objpfx)tst-getmyaddr: $(common-objpfx)linkobj/libc.so $(objpfx)tst-xdrmem: $(common-objpfx)linkobj/libc.so $(objpfx)tst-xdrmem2: $(common-objpfx)linkobj/libc.so ---- glibc-2.14.1/sysdeps/generic/dl-cache.h -+++ glibc-2.14.1-2/sysdeps/generic/dl-cache.h +diff -Nur a/sysdeps/generic/dl-cache.h b/sysdeps/generic/dl-cache.h +--- a/sysdeps/generic/dl-cache.h 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/generic/dl-cache.h 2011-12-22 17:59:24.605119317 +0000 @@ -36,6 +36,14 @@ # define add_system_dir(dir) add_dir (dir) #endif @@ -3275,8 +3385,9 @@ #define CACHEMAGIC "ld.so-1.7.0"
/* libc5 and glibc 2.0/2.1 use the same format. For glibc 2.2 another ---- glibc-2.14.1/sysdeps/i386/Makefile -+++ glibc-2.14.1-2/sysdeps/i386/Makefile +diff -Nur a/sysdeps/i386/Makefile b/sysdeps/i386/Makefile +--- a/sysdeps/i386/Makefile 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/i386/Makefile 2011-12-22 17:59:24.606119317 +0000 @@ -2,6 +2,8 @@ # Every i386 port in use uses gas syntax (I think). asm-CPPFLAGS += -DGAS_SYNTAX @@ -3286,7 +3397,7 @@ # The i386 `long double' is a distinct type we support. long-double-fcts = yes
-@@ -65,6 +67,14 @@ endif +@@ -68,6 +70,14 @@
ifneq (,$(filter -mno-tls-direct-seg-refs,$(CFLAGS))) defines += -DNO_TLS_DIRECT_SEG_REFS @@ -3301,8 +3412,9 @@ endif
ifeq ($(subdir),elf) ---- glibc-2.14.1/sysdeps/i386/__longjmp.S -+++ glibc-2.14.1-2/sysdeps/i386/__longjmp.S +diff -Nur a/sysdeps/i386/__longjmp.S b/sysdeps/i386/__longjmp.S +--- a/sysdeps/i386/__longjmp.S 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/i386/__longjmp.S 2011-12-22 17:59:24.606119317 +0000 @@ -1,5 +1,5 @@ /* longjmp for i386. - Copyright (C) 1995-1998,2000,2002,2005,2006,2009 @@ -3318,7 +3430,7 @@
.text ENTRY (__longjmp) -@@ -33,6 +34,7 @@ ENTRY (__longjmp) +@@ -33,6 +34,7 @@ movl (JB_SP*4)(%eax), %ecx PTR_DEMANGLE (%edx) PTR_DEMANGLE (%ecx) @@ -3326,7 +3438,7 @@ cfi_def_cfa(%eax, 0) cfi_register(%eip, %edx) cfi_register(%esp, %ecx) -@@ -50,6 +52,7 @@ ENTRY (__longjmp) +@@ -50,6 +52,7 @@ cfi_restore(%edi) cfi_restore(%ebp)
@@ -3334,7 +3446,7 @@ movl 8(%esp), %eax /* Second argument is return value. */ movl %ecx, %esp #else -@@ -57,12 +60,14 @@ ENTRY (__longjmp) +@@ -57,12 +60,14 @@ movl 8(%esp), %eax /* Second argument is return value. */ /* Save the return address now. */ movl (JB_PC*4)(%ecx), %edx @@ -3349,8 +3461,9 @@ #endif /* Jump to saved PC. */ jmp *%edx ---- glibc-2.14.1/sysdeps/i386/bsd-_setjmp.S -+++ glibc-2.14.1-2/sysdeps/i386/bsd-_setjmp.S +diff -Nur a/sysdeps/i386/bsd-_setjmp.S b/sysdeps/i386/bsd-_setjmp.S +--- a/sysdeps/i386/bsd-_setjmp.S 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/i386/bsd-_setjmp.S 2011-12-22 17:59:24.606119317 +0000 @@ -1,5 +1,6 @@ /* BSD `_setjmp' entry point to `sigsetjmp (..., 0)'. i386 version. - Copyright (C) 1994-1997,2000-2002,2005, 2006 Free Software Foundation, Inc. @@ -3367,7 +3480,7 @@
#define PARMS LINKAGE /* no space for saved regs */ #define JMPBUF PARMS -@@ -47,6 +49,7 @@ ENTRY (BP_SYM (_setjmp)) +@@ -47,6 +49,7 @@ #endif movl %ecx, (JB_SP*4)(%edx) movl PCOFF(%esp), %ecx /* Save PC we are returning to now. */ @@ -3375,8 +3488,9 @@ #ifdef PTR_MANGLE PTR_MANGLE (%ecx) #endif ---- glibc-2.14.1/sysdeps/i386/bsd-setjmp.S -+++ glibc-2.14.1-2/sysdeps/i386/bsd-setjmp.S +diff -Nur a/sysdeps/i386/bsd-setjmp.S b/sysdeps/i386/bsd-setjmp.S +--- a/sysdeps/i386/bsd-setjmp.S 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/i386/bsd-setjmp.S 2011-12-22 17:59:24.607119317 +0000 @@ -1,5 +1,6 @@ /* BSD `setjmp' entry point to `sigsetjmp (..., 1)'. i386 version. - Copyright (C) 1994-1997,2000,2001,2005, 2006 Free Software Foundation, Inc. @@ -3393,7 +3507,7 @@
#define PARMS LINKAGE /* no space for saved regs */ #define JMPBUF PARMS -@@ -49,6 +51,7 @@ ENTRY (BP_SYM (setjmp)) +@@ -49,6 +51,7 @@ #endif movl %ecx, (JB_SP*4)(%eax) movl PCOFF(%esp), %ecx /* Save PC we are returning to now. */ @@ -3401,9 +3515,10 @@ #ifdef PTR_MANGLE PTR_MANGLE (%ecx) #endif ---- glibc-2.14.1/sysdeps/i386/i686/Makefile -+++ glibc-2.14.1-2/sysdeps/i386/i686/Makefile -@@ -9,19 +9,3 @@ stack-align-test-flags += -msse +diff -Nur a/sysdeps/i386/i686/Makefile b/sysdeps/i386/i686/Makefile +--- a/sysdeps/i386/i686/Makefile 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/i386/i686/Makefile 2011-12-22 17:59:24.607119317 +0000 +@@ -9,19 +9,3 @@ ifeq ($(subdir),string) sysdep_routines += cacheinfo endif @@ -3423,8 +3538,9 @@ -ASFLAGS-.ob += -Wa,-mtune=i686 -ASFLAGS-.oS += -Wa,-mtune=i686 -endif ---- glibc-2.14.1/sysdeps/i386/setjmp.S -+++ glibc-2.14.1-2/sysdeps/i386/setjmp.S +diff -Nur a/sysdeps/i386/setjmp.S b/sysdeps/i386/setjmp.S +--- a/sysdeps/i386/setjmp.S 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/i386/setjmp.S 2011-12-22 17:59:24.608119317 +0000 @@ -1,5 +1,5 @@ /* setjmp for i386. - Copyright (C) 1995,1996,1997,2000,2001,2005,2006 @@ -3440,7 +3556,7 @@
#define PARMS LINKAGE /* no space for saved regs */ #define JMPBUF PARMS -@@ -44,6 +45,7 @@ ENTRY (BP_SYM (__sigsetjmp)) +@@ -44,6 +45,7 @@ #endif movl %ecx, (JB_SP*4)(%eax) movl PCOFF(%esp), %ecx /* Save PC we are returning to now. */ @@ -3448,9 +3564,10 @@ #ifdef PTR_MANGLE PTR_MANGLE (%ecx) #endif ---- glibc-2.14.1/sysdeps/ia64/Makefile -+++ glibc-2.14.1-2/sysdeps/ia64/Makefile -@@ -12,8 +12,8 @@ elide-routines.os += hp-timing +diff -Nur a/sysdeps/ia64/Makefile b/sysdeps/ia64/Makefile +--- a/sysdeps/ia64/Makefile 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/ia64/Makefile 2011-12-22 17:59:24.608119317 +0000 +@@ -12,8 +12,8 @@
ifeq (yes,$(build-shared)) # Compatibility @@ -3461,8 +3578,9 @@ endif endif
---- glibc-2.14.1/sysdeps/ia64/ia64libgcc.S -+++ glibc-2.14.1-2/sysdeps/ia64/ia64libgcc.S +diff -Nur a/sysdeps/ia64/ia64libgcc.S b/sysdeps/ia64/ia64libgcc.S +--- a/sysdeps/ia64/ia64libgcc.S 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/ia64/ia64libgcc.S 1970-01-01 00:00:00.000000000 +0000 @@ -1,350 +0,0 @@ -/* From the Intel IA-64 Optimization Guide, choose the minimum latency - alternative. */ @@ -3814,8 +3932,9 @@ - .symver ___multi3, __multi3@GLIBC_2.2 - -#endif ---- glibc-2.14.1/sysdeps/ia64/libgcc-compat.c -+++ glibc-2.14.1-2/sysdeps/ia64/libgcc-compat.c +diff -Nur a/sysdeps/ia64/libgcc-compat.c b/sysdeps/ia64/libgcc-compat.c +--- a/sysdeps/ia64/libgcc-compat.c 1970-01-01 00:00:00.000000000 +0000 ++++ b/sysdeps/ia64/libgcc-compat.c 2011-12-22 17:59:24.613119317 +0000 @@ -0,0 +1,84 @@ +/* pre-.hidden libgcc compatibility + Copyright (C) 2002 Free Software Foundation, Inc. @@ -3901,17 +4020,19 @@ +symbol_version (INTUSE (__multi3), __multi3, GLIBC_2.2); + +#endif ---- glibc-2.14.1/sysdeps/mach/hurd/getrlimit.c -+++ glibc-2.14.1-2/sysdeps/mach/hurd/getrlimit.c -@@ -44,4 +44,5 @@ __getrlimit (enum __rlimit_resource resource, struct rlimit *rlimits) +diff -Nur a/sysdeps/mach/hurd/getrlimit.c b/sysdeps/mach/hurd/getrlimit.c +--- a/sysdeps/mach/hurd/getrlimit.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/mach/hurd/getrlimit.c 2011-12-22 17:59:24.613119317 +0000 +@@ -44,4 +44,5 @@
return 0; } +libc_hidden_def (__getrlimit) weak_alias (__getrlimit, getrlimit) ---- glibc-2.14.1/sysdeps/posix/getaddrinfo.c -+++ glibc-2.14.1-2/sysdeps/posix/getaddrinfo.c -@@ -565,8 +565,8 @@ gaih_inet (const char *name, const struct gaih_service *service, +diff -Nur a/sysdeps/posix/getaddrinfo.c b/sysdeps/posix/getaddrinfo.c +--- a/sysdeps/posix/getaddrinfo.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/posix/getaddrinfo.c 2011-12-22 17:59:24.615119317 +0000 +@@ -565,8 +565,8 @@
/* If we do not have to look for IPv6 addresses, use the simple, old functions, which do not support @@ -3920,9 +4041,9 @@ + IPv6 scope ids, nor retrieving the canonical name. */ + if (req->ai_family == AF_INET && (req->ai_flags & AI_CANONNAME) == 0) { - int family = req->ai_family; size_t tmpbuflen = 512; -@@ -1115,68 +1115,10 @@ gaih_inet (const char *name, const struct gaih_service *service, + assert (tmpbuf == NULL); +@@ -1105,68 +1105,10 @@ /* Only the first entry gets the canonical name. */ if (at2 == at && (req->ai_flags & AI_CANONNAME) != 0) { @@ -3994,7 +4115,7 @@
#ifdef HAVE_LIBIDN if (req->ai_flags & AI_CANONIDN) -@@ -1191,9 +1133,6 @@ gaih_inet (const char *name, const struct gaih_service *service, +@@ -1181,9 +1123,6 @@ int rc = __idna_to_unicode_lzlz (canon, &out, idn_flags); if (rc != IDNA_SUCCESS) { @@ -4004,7 +4125,7 @@ if (rc == IDNA_MALLOC_ERROR) result = -EAI_MEMORY; else if (rc == IDNA_DLOPEN_ERROR) -@@ -1223,17 +1162,11 @@ gaih_inet (const char *name, const struct gaih_service *service, +@@ -1213,17 +1152,11 @@ canon = strdup (canon); if (canon == NULL) { @@ -4022,7 +4143,7 @@ }
family = at2->family; -@@ -1370,10 +1303,12 @@ static const struct scopeentry +@@ -1360,10 +1293,12 @@ /* Link-local addresses: scope 2. */ { { { 169, 254, 0, 0 } }, htonl_c (0xffff0000), 2 }, { { { 127, 0, 0, 0 } }, htonl_c (0xff000000), 2 }, @@ -4035,9 +4156,10 @@ /* Default: scope 14. */ { { { 0, 0, 0, 0 } }, htonl_c (0x00000000), 14 } }; ---- glibc-2.14.1/sysdeps/powerpc/powerpc64/Makefile -+++ glibc-2.14.1-2/sysdeps/powerpc/powerpc64/Makefile -@@ -33,6 +33,7 @@ ifneq ($(elf),no) +diff -Nur a/sysdeps/powerpc/powerpc64/Makefile b/sysdeps/powerpc/powerpc64/Makefile +--- a/sysdeps/powerpc/powerpc64/Makefile 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/powerpc/powerpc64/Makefile 2011-12-22 17:59:24.615119317 +0000 +@@ -33,6 +33,7 @@ # we use -fpic instead which is much better. CFLAGS-initfini.s += -fpic -O1 endif @@ -4045,17 +4167,19 @@ endif
ifeq ($(subdir),elf) ---- glibc-2.14.1/sysdeps/powerpc/powerpc64/elf/Makefile -+++ glibc-2.14.1-2/sysdeps/powerpc/powerpc64/elf/Makefile -@@ -9,3 +9,5 @@ CFLAGS-rtld-mempcpy.os = $(no-special-regs) +diff -Nur a/sysdeps/powerpc/powerpc64/elf/Makefile b/sysdeps/powerpc/powerpc64/elf/Makefile +--- a/sysdeps/powerpc/powerpc64/elf/Makefile 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/powerpc/powerpc64/elf/Makefile 2011-12-22 17:59:24.616119318 +0000 +@@ -9,3 +9,5 @@ CFLAGS-rtld-memmove.os = $(no-special-regs) CFLAGS-rtld-memchr.os = $(no-special-regs) CFLAGS-rtld-strnlen.os = $(no-special-regs) + +CFLAGS-gmon-start.c = -fno-strict-aliasing ---- glibc-2.14.1/sysdeps/s390/s390-64/utf16-utf32-z9.c -+++ glibc-2.14.1-2/sysdeps/s390/s390-64/utf16-utf32-z9.c -@@ -169,10 +169,7 @@ gconv_end (struct __gconv_step *data) +diff -Nur a/sysdeps/s390/s390-64/utf16-utf32-z9.c b/sysdeps/s390/s390-64/utf16-utf32-z9.c +--- a/sysdeps/s390/s390-64/utf16-utf32-z9.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/s390/s390-64/utf16-utf32-z9.c 2011-12-22 17:59:24.616119318 +0000 +@@ -169,10 +169,7 @@ register unsigned long long outlen asm("11") = outend - outptr; \ uint64_t cc = 0; \ \ @@ -4067,9 +4191,10 @@ " jo 0b \n\t" \ " ipm %2 \n" \ : "+a" (pOutput), "+a" (pInput), "+d" (cc), \ ---- glibc-2.14.1/sysdeps/s390/s390-64/utf8-utf16-z9.c -+++ glibc-2.14.1-2/sysdeps/s390/s390-64/utf8-utf16-z9.c -@@ -151,10 +151,7 @@ gconv_end (struct __gconv_step *data) +diff -Nur a/sysdeps/s390/s390-64/utf8-utf16-z9.c b/sysdeps/s390/s390-64/utf8-utf16-z9.c +--- a/sysdeps/s390/s390-64/utf8-utf16-z9.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/s390/s390-64/utf8-utf16-z9.c 2011-12-22 17:59:24.616119318 +0000 +@@ -151,10 +151,7 @@ register unsigned long long outlen asm("11") = outend - outptr; \ uint64_t cc = 0; \ \ @@ -4081,9 +4206,10 @@ " jo 0b \n\t" \ " ipm %2 \n" \ : "+a" (pOutput), "+a" (pInput), "+d" (cc), \ ---- glibc-2.14.1/sysdeps/s390/s390-64/utf8-utf32-z9.c -+++ glibc-2.14.1-2/sysdeps/s390/s390-64/utf8-utf32-z9.c -@@ -155,10 +155,7 @@ gconv_end (struct __gconv_step *data) +diff -Nur a/sysdeps/s390/s390-64/utf8-utf32-z9.c b/sysdeps/s390/s390-64/utf8-utf32-z9.c +--- a/sysdeps/s390/s390-64/utf8-utf32-z9.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/s390/s390-64/utf8-utf32-z9.c 2011-12-22 17:59:24.617119319 +0000 +@@ -155,10 +155,7 @@ register unsigned long long outlen asm("11") = outend - outptr; \ uint64_t cc = 0; \ \ @@ -4095,9 +4221,10 @@ " jo 0b \n\t" \ " ipm %2 \n" \ : "+a" (pOutput), "+a" (pInput), "+d" (cc), \ ---- glibc-2.14.1/sysdeps/unix/nice.c -+++ glibc-2.14.1-2/sysdeps/unix/nice.c -@@ -42,7 +42,12 @@ nice (int incr) +diff -Nur a/sysdeps/unix/nice.c b/sysdeps/unix/nice.c +--- a/sysdeps/unix/nice.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/unix/nice.c 2011-12-22 17:59:24.617119319 +0000 +@@ -42,7 +42,12 @@ __set_errno (save); }
@@ -4111,9 +4238,10 @@ if (result == -1) { if (errno == EACCES) ---- glibc-2.14.1/sysdeps/unix/sysv/linux/check_pf.c -+++ glibc-2.14.1-2/sysdeps/unix/sysv/linux/check_pf.c -@@ -27,13 +27,10 @@ +diff -Nur a/sysdeps/unix/sysv/linux/check_pf.c b/sysdeps/unix/sysv/linux/check_pf.c +--- a/sysdeps/unix/sysv/linux/check_pf.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/unix/sysv/linux/check_pf.c 2011-12-22 17:59:24.618119320 +0000 +@@ -27,16 +27,14 @@ #include <unistd.h> #include <sys/socket.h>
@@ -4123,14 +4251,19 @@ - #include <not-cancel.h> #include <kernel-features.h> + #include <bits/libc-lock.h> + #include <atomic.h> + #include <nscd/nscd-client.h>
+#include "netlinkaccess.h" ++
#ifndef IFA_F_HOMEADDRESS # define IFA_F_HOMEADDRESS 0 ---- glibc-2.14.1/sysdeps/unix/sysv/linux/futimesat.c -+++ glibc-2.14.1-2/sysdeps/unix/sysv/linux/futimesat.c -@@ -37,14 +37,14 @@ futimesat (fd, file, tvp) +diff -Nur a/sysdeps/unix/sysv/linux/futimesat.c b/sysdeps/unix/sysv/linux/futimesat.c +--- a/sysdeps/unix/sysv/linux/futimesat.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/unix/sysv/linux/futimesat.c 2011-12-22 17:59:24.618119320 +0000 +@@ -37,14 +37,14 @@ { int result;
@@ -4148,7 +4281,7 @@ result = INLINE_SYSCALL (futimesat, 3, fd, file, tvp); # ifndef __ASSUME_ATFCTS if (result == -1 && errno == ENOSYS) -@@ -58,22 +58,7 @@ futimesat (fd, file, tvp) +@@ -58,22 +58,7 @@ #ifndef __ASSUME_ATFCTS char *buf = NULL;
@@ -4172,19 +4305,9 @@ { size_t filelen = strlen (file); if (__builtin_expect (filelen == 0, 0)) ---- glibc-2.14.1/sysdeps/unix/sysv/linux/getpagesize.c -+++ glibc-2.14.1-2/sysdeps/unix/sysv/linux/getpagesize.c -@@ -28,7 +28,7 @@ - int - __getpagesize () - { --#ifdef __ASSUME_AT_PAGESIZE -+#if 0 && defined __ASSUME_AT_PAGESIZE - assert (GLRO(dl_pagesize) != 0); - return GLRO(dl_pagesize); - #else ---- glibc-2.14.1/sysdeps/unix/sysv/linux/i386/____longjmp_chk.S -+++ glibc-2.14.1-2/sysdeps/unix/sysv/linux/i386/____longjmp_chk.S +diff -Nur a/sysdeps/unix/sysv/linux/i386/____longjmp_chk.S b/sysdeps/unix/sysv/linux/i386/____longjmp_chk.S +--- a/sysdeps/unix/sysv/linux/i386/____longjmp_chk.S 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/unix/sysv/linux/i386/____longjmp_chk.S 2011-12-22 17:59:24.619119321 +0000 @@ -1,4 +1,5 @@ -/* Copyright (C) 2001,2004,2005,2006,2009 Free Software Foundation, Inc. +/* Copyright (C) 2001,2004,2005,2006,2009,2011 @@ -4200,7 +4323,7 @@
.section .rodata.str1.1,"aMS",@progbits,1 -@@ -79,7 +81,9 @@ ENTRY (____longjmp_chk) +@@ -79,7 +81,9 @@ cfi_adjust_cfa_offset(-12) movl 4(%esp), %ecx
@@ -4211,15 +4334,16 @@ cfi_def_cfa(%ecx, 0) cfi_register(%eip, %edx) cfi_register(%esp, %edi) -@@ -102,5 +106,6 @@ ENTRY (____longjmp_chk) +@@ -102,5 +106,6 @@ cfi_restore(%ebp)
/* Jump to saved PC. */ + LIBC_PROBE (longjmp_target, 3, 4@%ecx, -4@%eax, 4@%edx) jmp *%edx END (____longjmp_chk) ---- glibc-2.14.1/sysdeps/unix/sysv/linux/i386/dl-cache.h -+++ glibc-2.14.1-2/sysdeps/unix/sysv/linux/i386/dl-cache.h +diff -Nur a/sysdeps/unix/sysv/linux/i386/dl-cache.h b/sysdeps/unix/sysv/linux/i386/dl-cache.h +--- a/sysdeps/unix/sysv/linux/i386/dl-cache.h 1970-01-01 00:00:00.000000000 +0000 ++++ b/sysdeps/unix/sysv/linux/i386/dl-cache.h 2011-12-22 17:59:24.620119321 +0000 @@ -0,0 +1,59 @@ +/* Support for reading /etc/ld.so.cache files written by Linux ldconfig. + Copyright (C) 2004 Free Software Foundation, Inc. @@ -4280,16 +4404,18 @@ + } while (0) + +#include_next <dl-cache.h> ---- glibc-2.14.1/sysdeps/unix/sysv/linux/i386/getrlimit.c -+++ glibc-2.14.1-2/sysdeps/unix/sysv/linux/i386/getrlimit.c -@@ -79,4 +79,5 @@ __new_getrlimit (enum __rlimit_resource resource, struct rlimit *rlimits) +diff -Nur a/sysdeps/unix/sysv/linux/i386/getrlimit.c b/sysdeps/unix/sysv/linux/i386/getrlimit.c +--- a/sysdeps/unix/sysv/linux/i386/getrlimit.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/unix/sysv/linux/i386/getrlimit.c 2011-12-22 17:59:24.620119321 +0000 +@@ -79,4 +79,5 @@ }
weak_alias (__new_getrlimit, __getrlimit); +libc_hidden_weak (__getrlimit) versioned_symbol (libc, __new_getrlimit, getrlimit, GLIBC_2_2); ---- glibc-2.14.1/sysdeps/unix/sysv/linux/ia64/dl-cache.h -+++ glibc-2.14.1-2/sysdeps/unix/sysv/linux/ia64/dl-cache.h +diff -Nur a/sysdeps/unix/sysv/linux/ia64/dl-cache.h b/sysdeps/unix/sysv/linux/ia64/dl-cache.h +--- a/sysdeps/unix/sysv/linux/ia64/dl-cache.h 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/unix/sysv/linux/ia64/dl-cache.h 2011-12-22 17:59:24.621119321 +0000 @@ -22,4 +22,31 @@ #define _dl_cache_check_flags(flags) \ ((flags) == _DL_CACHE_DEFAULT_ID) @@ -4322,29 +4448,33 @@ + } while (0) + #include_next <dl-cache.h> ---- glibc-2.14.1/sysdeps/unix/sysv/linux/ia64/dl-procinfo.c -+++ glibc-2.14.1-2/sysdeps/unix/sysv/linux/ia64/dl-procinfo.c +diff -Nur a/sysdeps/unix/sysv/linux/ia64/dl-procinfo.c b/sysdeps/unix/sysv/linux/ia64/dl-procinfo.c +--- a/sysdeps/unix/sysv/linux/ia64/dl-procinfo.c 1970-01-01 00:00:00.000000000 +0000 ++++ b/sysdeps/unix/sysv/linux/ia64/dl-procinfo.c 2011-12-22 17:59:24.621119321 +0000 @@ -0,0 +1,5 @@ +#ifdef IS_IN_ldconfig +#include <sysdeps/i386/dl-procinfo.c> +#else +#include <sysdeps/generic/dl-procinfo.c> +#endif ---- glibc-2.14.1/sysdeps/unix/sysv/linux/ia64/dl-procinfo.h -+++ glibc-2.14.1-2/sysdeps/unix/sysv/linux/ia64/dl-procinfo.h +diff -Nur a/sysdeps/unix/sysv/linux/ia64/dl-procinfo.h b/sysdeps/unix/sysv/linux/ia64/dl-procinfo.h +--- a/sysdeps/unix/sysv/linux/ia64/dl-procinfo.h 1970-01-01 00:00:00.000000000 +0000 ++++ b/sysdeps/unix/sysv/linux/ia64/dl-procinfo.h 2011-12-22 17:59:24.621119321 +0000 @@ -0,0 +1,5 @@ +#ifdef IS_IN_ldconfig +#include <sysdeps/unix/sysv/linux/i386/dl-procinfo.h> +#else +#include <sysdeps/generic/dl-procinfo.h> +#endif ---- glibc-2.14.1/sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed -+++ glibc-2.14.1-2/sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed +diff -Nur a/sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed b/sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed +--- a/sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed 2011-12-22 17:59:24.621119321 +0000 @@ -1 +1 @@ -s_^(RTLDLIST=)([^ ]*)-ia64(.so.[0-9.]*)[ ]*$_\1"\2-ia64\3 \2\3"_ +s_^(RTLDLIST=)([^ ]*)-ia64(.so.[0-9.]*)[ ]*$_\1"\2-ia64\3 /emul/ia32-linux\2\3"_ ---- glibc-2.14.1/sysdeps/unix/sysv/linux/netlinkaccess.h -+++ glibc-2.14.1-2/sysdeps/unix/sysv/linux/netlinkaccess.h +diff -Nur a/sysdeps/unix/sysv/linux/netlinkaccess.h b/sysdeps/unix/sysv/linux/netlinkaccess.h +--- a/sysdeps/unix/sysv/linux/netlinkaccess.h 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/unix/sysv/linux/netlinkaccess.h 2011-12-22 17:59:24.621119321 +0000 @@ -25,6 +25,24 @@
#include <kernel-features.h> @@ -4370,8 +4500,9 @@
struct netlink_res { ---- glibc-2.14.1/sysdeps/unix/sysv/linux/paths.h -+++ glibc-2.14.1-2/sysdeps/unix/sysv/linux/paths.h +diff -Nur a/sysdeps/unix/sysv/linux/paths.h b/sysdeps/unix/sysv/linux/paths.h +--- a/sysdeps/unix/sysv/linux/paths.h 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/unix/sysv/linux/paths.h 2011-12-22 17:59:24.622119321 +0000 @@ -62,7 +62,7 @@ #define _PATH_TTY "/dev/tty" #define _PATH_UNIX "/boot/vmlinux" @@ -4381,9 +4512,10 @@ #define _PATH_WTMP "/var/log/wtmp"
/* Provide trailing slash, since mostly used for building pathnames. */ ---- glibc-2.14.1/sysdeps/unix/sysv/linux/tcsetattr.c -+++ glibc-2.14.1-2/sysdeps/unix/sysv/linux/tcsetattr.c -@@ -49,6 +49,7 @@ tcsetattr (fd, optional_actions, termios_p) +diff -Nur a/sysdeps/unix/sysv/linux/tcsetattr.c b/sysdeps/unix/sysv/linux/tcsetattr.c +--- a/sysdeps/unix/sysv/linux/tcsetattr.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/unix/sysv/linux/tcsetattr.c 2011-12-22 17:59:24.622119321 +0000 +@@ -49,6 +49,7 @@ { struct __kernel_termios k_termios; unsigned long int cmd; @@ -4391,7 +4523,7 @@
switch (optional_actions) { -@@ -80,6 +81,35 @@ tcsetattr (fd, optional_actions, termios_p) +@@ -80,6 +81,35 @@ memcpy (&k_termios.c_cc[0], &termios_p->c_cc[0], __KERNEL_NCCS * sizeof (cc_t));
@@ -4428,8 +4560,9 @@ + return retval; } libc_hidden_def (tcsetattr) ---- glibc-2.14.1/sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S -+++ glibc-2.14.1-2/sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S +diff -Nur a/sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S b/sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S +--- a/sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S 2011-12-22 17:59:24.623119321 +0000 @@ -19,6 +19,7 @@ #include <sysdep.h> #include <jmpbuf-offsets.h> @@ -4438,7 +4571,7 @@
.section .rodata.str1.1,"aMS",@progbits,1 .type longjmp_msg,@object -@@ -94,7 +95,9 @@ ENTRY(____longjmp_chk) +@@ -94,7 +95,9 @@ movl %ebx, %esi cfi_restore (%rsi)
@@ -4449,15 +4582,16 @@ cfi_def_cfa(%rdi, 0) cfi_register(%rsp,%r8) cfi_register(%rbp,%r9) -@@ -113,5 +116,6 @@ ENTRY(____longjmp_chk) +@@ -113,5 +116,6 @@ movl %esi, %eax movq %r8,%rsp movq %r9,%rbp + LIBC_PROBE (longjmp_target, 3, 8@%rdi, -4@%eax, 8@%rdx) jmpq *%rdx END (____longjmp_chk) ---- glibc-2.14.1/sysdeps/x86_64/__longjmp.S -+++ glibc-2.14.1-2/sysdeps/x86_64/__longjmp.S +diff -Nur a/sysdeps/x86_64/__longjmp.S b/sysdeps/x86_64/__longjmp.S +--- a/sysdeps/x86_64/__longjmp.S 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/x86_64/__longjmp.S 2011-12-22 17:59:24.623119321 +0000 @@ -1,4 +1,4 @@ -/* Copyright (C) 2001,2004,2005,2006,2009 Free Software Foundation, Inc. +/* Copyright (C) 2001,2004,2005,2006,2009,2011 Free Software Foundation, Inc. @@ -4472,7 +4606,7 @@
/* Jump to the position specified by ENV, causing the setjmp call there to return VAL, or 1 if VAL is 0. -@@ -34,6 +35,7 @@ ENTRY(__longjmp) +@@ -34,6 +35,7 @@ PTR_DEMANGLE (%r9) PTR_DEMANGLE (%rdx) #endif @@ -4480,15 +4614,16 @@ /* We add unwind information for the target here. */ cfi_def_cfa(%rdi, 0) cfi_register(%rsp,%r8) -@@ -53,5 +55,6 @@ ENTRY(__longjmp) +@@ -53,5 +55,6 @@ mov %esi, %eax movq %r8,%rsp movq %r9,%rbp + LIBC_PROBE (longjmp_target, 3, 8@%rdi, -4@%eax, 8@%rdx) jmpq *%rdx END (__longjmp) ---- glibc-2.14.1/sysdeps/x86_64/setjmp.S -+++ glibc-2.14.1-2/sysdeps/x86_64/setjmp.S +diff -Nur a/sysdeps/x86_64/setjmp.S b/sysdeps/x86_64/setjmp.S +--- a/sysdeps/x86_64/setjmp.S 2011-12-22 16:50:52.000000000 +0000 ++++ b/sysdeps/x86_64/setjmp.S 2011-12-22 17:59:24.624119322 +0000 @@ -1,5 +1,5 @@ /* setjmp for x86-64. - Copyright (C) 2001, 2003, 2005, 2006 Free Software Foundation, Inc. @@ -4504,7 +4639,7 @@
ENTRY (__sigsetjmp) /* Save registers. */ -@@ -41,6 +42,7 @@ ENTRY (__sigsetjmp) +@@ -41,6 +42,7 @@ #endif movq %rdx, (JB_RSP*8)(%rdi) movq (%rsp), %rax /* Save PC we are returning to now. */ @@ -4512,9 +4647,10 @@ #ifdef PTR_MANGLE PTR_MANGLE (%rax) #endif ---- glibc-2.14.1/timezone/zic.c -+++ glibc-2.14.1-2/timezone/zic.c -@@ -1921,7 +1921,7 @@ const int zonecount; +diff -Nur a/timezone/zic.c b/timezone/zic.c +--- a/timezone/zic.c 2011-12-22 16:50:52.000000000 +0000 ++++ b/timezone/zic.c 2011-12-22 17:59:24.625119322 +0000 +@@ -1921,7 +1921,7 @@ if (stdrp != NULL && stdrp->r_hiyear == 2037) return; } diff --git a/glibc/patches/glibc-rh730856.patch b/glibc/patches/glibc-rh730856.patch new file mode 100644 index 0000000..f7bd5d1 --- /dev/null +++ b/glibc/patches/glibc-rh730856.patch @@ -0,0 +1,16 @@ +2011-09-01 Andreas Schwab schwab@redhat.com + + * resolv/res_query.c (__libc_res_nquery): Update assertion. + +diff -ru a/resolv/res_query.c b/resolv/res_query.c +--- a/resolv/res_query.c 2011-12-12 14:10:52.000000000 -0700 ++++ b/resolv/res_query.c 2011-12-12 14:23:04.832739111 -0700 +@@ -248,7 +248,7 @@ + && *resplen2 > (int) sizeof (HEADER)) + { + /* Special case of partial answer. */ +- assert (hp != hp2); ++ assert (n == 0 || hp != hp2); + hp = hp2; + } + else if (answerp2 != NULL && *resplen2 < (int) sizeof (HEADER) diff --git a/glibc/patches/glibc-rh740506.patch b/glibc/patches/glibc-rh740506.patch new file mode 100644 index 0000000..6e20ff9 --- /dev/null +++ b/glibc/patches/glibc-rh740506.patch @@ -0,0 +1,35 @@ + * malloc/arena.c (arena_get2): Avoid unnecessarily + retrieving #cpus from /proc. + * malloc/malloc.c (mALLOPt): Clamp arena_test based on + the value of arena_max. + +diff --git a/malloc/arena.c b/malloc/arena.c +index cb8548b..00f1da5 100644 +--- a/malloc/arena.c ++++ b/malloc/arena.c +@@ -828,7 +828,7 @@ arena_get2(mstate a_tsd, size_t size) + { + if (mp_.arena_max != 0) + narenas_limit = mp_.arena_max; +- else ++ else if (narenas > mp_.arena_test) + { + int n = __get_nprocs (); + +diff --git a/malloc/malloc.c b/malloc/malloc.c +index 8608083..f8d32da 100644 +--- a/malloc/malloc.c ++++ b/malloc/malloc.c +@@ -4842,6 +4842,12 @@ int mALLOPt(int param_number, int value) + break; + #endif + } ++#ifdef PER_THREAD ++ /* Clamp ARENA_TEST from ARENA_MAX to avoid creating too many ++ arenas. */ ++ if (mp_.arena_max > 0 && mp_.arena_max <= mp_.arena_test) ++ mp_.arena_test = mp_.arena_max - 1; ++#endif + (void)mutex_unlock(&av->mutex); + return res; + } diff --git a/glibc/patches/glibc-rh757881.patch b/glibc/patches/glibc-rh757881.patch new file mode 100644 index 0000000..0b41987 --- /dev/null +++ b/glibc/patches/glibc-rh757881.patch @@ -0,0 +1,170 @@ +Index: glibc-2.12-2-gc4ccff1/malloc/arena.c +=================================================================== +--- glibc-2.12-2-gc4ccff1.orig/malloc/arena.c ++++ glibc-2.12-2-gc4ccff1/malloc/arena.c +@@ -870,7 +870,7 @@ heap_trim(heap, pad) heap_info *heap; si + heap = prev_heap; + if(!prev_inuse(p)) { /* consolidate backward */ + p = prev_chunk(p); +- unlink(p, bck, fwd); ++ unlink(ar_ptr, p, bck, fwd); + } + assert(((unsigned long)((char*)p + new_size) & (pagesz-1)) == 0); + assert( ((char*)p + new_size) == ((char*)heap + heap->size) ); +Index: glibc-2.12-2-gc4ccff1/malloc/hooks.c +=================================================================== +--- glibc-2.12-2-gc4ccff1.orig/malloc/hooks.c ++++ glibc-2.12-2-gc4ccff1/malloc/hooks.c +@@ -219,7 +219,9 @@ top_check() + (char*)t + chunksize(t) == mp_.sbrk_base + main_arena.system_mem))) + return 0; + ++ mutex_unlock(&main_arena); + malloc_printerr (check_action, "malloc: top chunk is corrupt", t); ++ mutex_lock(&main_arena); + + /* Try to set up a new top chunk. */ + brk = MORECORE(0); +Index: glibc-2.12-2-gc4ccff1/malloc/malloc.c +=================================================================== +--- glibc-2.12-2-gc4ccff1.orig/malloc/malloc.c ++++ glibc-2.12-2-gc4ccff1/malloc/malloc.c +@@ -1541,12 +1541,14 @@ + #define last(b) ((b)->bk) + + /* Take a chunk off a bin list */ +-#define unlink(P, BK, FD) { \ ++#define unlink(AV, P, BK, FD) { \ + FD = P->fd; \ + BK = P->bk; \ +- if (__builtin_expect (FD->bk != P || BK->fd != P, 0)) \ ++ if (__builtin_expect (FD->bk != P || BK->fd != P, 0)) { \ ++ mutex_unlock(&(AV)->mutex); \ + malloc_printerr (check_action, "corrupted double-linked list", P); \ +- else { \ ++ mutex_lock(&(AV)->mutex); \ ++ } else { \ + FD->bk = BK; \ + BK->fd = FD; \ + if (!in_smallbin_range (P->size) \ +@@ -2593,7 +2595,9 @@ + + else if (contiguous(av) && old_size && brk < old_end) { + /* Oops! Someone else killed our space.. Can't touch anything. */ ++ mutex_unlock(&av->mutex); + malloc_printerr (3, "break adjusted to free malloc space", brk); ++ mutex_lock(&av->mutex); + } + + /* +@@ -3467,7 +3471,9 @@ + { + errstr = "malloc(): memory corruption (fast)"; + errout: ++ mutex_unlock(&av->mutex); + malloc_printerr (check_action, errstr, chunk2mem (victim)); ++ mutex_lock(&av->mutex); + return NULL; + } + check_remalloced_chunk(av, victim, nb); +@@ -3552,8 +3558,12 @@ + bck = victim->bk; + if (__builtin_expect (victim->size <= 2 * SIZE_SZ, 0) + || __builtin_expect (victim->size > av->system_mem, 0)) +- malloc_printerr (check_action, "malloc(): memory corruption", +- chunk2mem (victim)); ++ { ++ void *p = chunk2mem(victim); ++ mutex_unlock(&av->mutex); ++ malloc_printerr (check_action, "malloc(): memory corruption", p); ++ mutex_lock(&av->mutex); ++ } + size = chunksize(victim); + + /* +@@ -3694,7 +3704,7 @@ + victim = victim->fd; + + remainder_size = size - nb; +- unlink(victim, bck, fwd); ++ unlink(av, victim, bck, fwd); + + /* Exhaust */ + if (remainder_size < MINSIZE) { +@@ -3792,7 +3802,7 @@ + remainder_size = size - nb; + + /* unlink */ +- unlink(victim, bck, fwd); ++ unlink(av, victim, bck, fwd); + + /* Exhaust */ + if (remainder_size < MINSIZE) { +@@ -3927,9 +3937,11 @@ + { + errstr = "free(): invalid pointer"; + errout: +- if (! have_lock && locked) ++ if (have_lock || locked) + (void)mutex_unlock(&av->mutex); + malloc_printerr (check_action, errstr, chunk2mem(p)); ++ if (have_lock) ++ mutex_lock(&av->mutex); + return; + } + /* We know that each chunk is at least MINSIZE bytes in size. */ +@@ -4073,7 +4085,7 @@ + prevsize = p->prev_size; + size += prevsize; + p = chunk_at_offset(p, -((long) prevsize)); +- unlink(p, bck, fwd); ++ unlink(av, p, bck, fwd); + } + + if (nextchunk != av->top) { +@@ -4082,7 +4094,7 @@ + + /* consolidate forward */ + if (!nextinuse) { +- unlink(nextchunk, bck, fwd); ++ unlink(av, nextchunk, bck, fwd); + size += nextsize; + } else + clear_inuse_bit_at_offset(nextchunk, 0); +@@ -4243,7 +4255,7 @@ + prevsize = p->prev_size; + size += prevsize; + p = chunk_at_offset(p, -((long) prevsize)); +- unlink(p, bck, fwd); ++ unlink(av, p, bck, fwd); + } + + if (nextchunk != av->top) { +@@ -4251,7 +4263,7 @@ + + if (!nextinuse) { + size += nextsize; +- unlink(nextchunk, bck, fwd); ++ unlink(av, nextchunk, bck, fwd); + } else + clear_inuse_bit_at_offset(nextchunk, 0); + +@@ -4320,7 +4332,9 @@ + { + errstr = "realloc(): invalid old size"; + errout: ++ mutex_unlock(&av->mutex); + malloc_printerr (check_action, errstr, chunk2mem(oldp)); ++ mutex_lock(&av->mutex); + return NULL; + } + +@@ -4362,7 +4376,7 @@ + (unsigned long)(newsize = oldsize + nextsize) >= + (unsigned long)(nb)) { + newp = oldp; +- unlink(next, bck, fwd); ++ unlink(av, next, bck, fwd); + } + + /* allocate, copy, free */ diff --git a/glibc/patches/glibc-rh769421.patch b/glibc/patches/glibc-rh769421.patch new file mode 100644 index 0000000..67f5ad7 --- /dev/null +++ b/glibc/patches/glibc-rh769421.patch @@ -0,0 +1,229 @@ +diff -rup a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S +--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S 2011-12-22 18:04:12.937212834 +0000 ++++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S 2011-12-22 18:04:42.104222278 +0000 +@@ -137,7 +137,6 @@ __pthread_cond_wait: + cmpl $PI_BIT, %eax + jne 18f + +-90: + movl $(FUTEX_WAIT_REQUEUE_PI|FUTEX_PRIVATE_FLAG), %ecx + movl %ebp, %edx + xorl %esi, %esi +@@ -151,9 +150,6 @@ __pthread_cond_wait: + sete 16(%esp) + je 19f + +- cmpl $-EAGAIN, %eax +- je 91f +- + /* Normal and PI futexes dont mix. Use normal futex functions only + if the kernel does not support the PI futex functions. */ + cmpl $-ENOSYS, %eax +@@ -398,78 +394,6 @@ __pthread_cond_wait: + #endif + call __lll_unlock_wake + jmp 11b +- +-91: +-.LcleanupSTART2: +- /* FUTEX_WAIT_REQUEUE_PI returned EAGAIN. We need to +- call it again. */ +- +- /* Get internal lock. */ +- movl $1, %edx +- xorl %eax, %eax +- LOCK +-#if cond_lock == 0 +- cmpxchgl %edx, (%ebx) +-#else +- cmpxchgl %edx, cond_lock(%ebx) +-#endif +- jz 92f +- +-#if cond_lock == 0 +- movl %ebx, %edx +-#else +- leal cond_lock(%ebx), %edx +-#endif +-#if (LLL_SHARED-LLL_PRIVATE) > 255 +- xorl %ecx, %ecx +-#endif +- cmpl $-1, dep_mutex(%ebx) +- setne %cl +- subl $1, %ecx +- andl $(LLL_SHARED-LLL_PRIVATE), %ecx +-#if LLL_PRIVATE != 0 +- addl $LLL_PRIVATE, %ecx +-#endif +- call __lll_lock_wait +- +-92: +- /* Increment the cond_futex value again, so it can be used as a new +- expected value. */ +- addl $1, cond_futex(%ebx) +- movl cond_futex(%ebx), %ebp +- +- /* Unlock. */ +- LOCK +-#if cond_lock == 0 +- subl $1, (%ebx) +-#else +- subl $1, cond_lock(%ebx) +-#endif +- je 93f +-#if cond_lock == 0 +- movl %ebx, %eax +-#else +- leal cond_lock(%ebx), %eax +-#endif +-#if (LLL_SHARED-LLL_PRIVATE) > 255 +- xorl %ecx, %ecx +-#endif +- cmpl $-1, dep_mutex(%ebx) +- setne %cl +- subl $1, %ecx +- andl $(LLL_SHARED-LLL_PRIVATE), %ecx +-#if LLL_PRIVATE != 0 +- addl $LLL_PRIVATE, %ecx +-#endif +- call __lll_unlock_wake +- +-93: +- /* Set the rest of SYS_futex args for FUTEX_WAIT_REQUEUE_PI. */ +- xorl %ecx, %ecx +- movl dep_mutex(%ebx), %edi +- jmp 90b +-.LcleanupEND2: +- + .size __pthread_cond_wait, .-__pthread_cond_wait + versioned_symbol (libpthread, __pthread_cond_wait, pthread_cond_wait, + GLIBC_2_3_2) +@@ -642,10 +566,6 @@ __condvar_w_cleanup: + .long .LcleanupEND-.Lsub_cond_futex + .long __condvar_w_cleanup-.LSTARTCODE + .uleb128 0 +- .long .LcleanupSTART2-.LSTARTCODE +- .long .LcleanupEND2-.LcleanupSTART2 +- .long __condvar_w_cleanup-.LSTARTCODE +- .uleb128 0 + .long .LcallUR-.LSTARTCODE + .long .LENDCODE-.LcallUR + .long 0 +Only in b/nptl/sysdeps/unix/sysv/linux/i386/i486: pthread_cond_wait.S.orig +diff -rup a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S +--- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S 2011-12-22 18:04:12.941212837 +0000 ++++ b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S 2011-12-22 18:05:05.155229737 +0000 +@@ -23,7 +23,6 @@ + #include <lowlevelcond.h> + #include <tcb-offsets.h> + #include <pthread-pi-defines.h> +-#include <pthread-errnos.h> + #include <stap-probe.h> + + #include <kernel-features.h> +@@ -137,14 +136,11 @@ __pthread_cond_wait: + cmpl $PI_BIT, %eax + jne 61f + +-90: + movl $(FUTEX_WAIT_REQUEUE_PI|FUTEX_PRIVATE_FLAG), %esi + movl $SYS_futex, %eax + syscall + + movl $1, %r8d +- cmpq $-EAGAIN, %rax +- je 91f + #ifdef __ASSUME_REQUEUE_PI + jmp 62f + #else +@@ -331,70 +327,6 @@ __pthread_cond_wait: + + 13: movq %r10, %rax + jmp 14b +- +-91: +-.LcleanupSTART2: +- /* FUTEX_WAIT_REQUEUE_PI returned EAGAIN. We need to +- call it again. */ +- movq 8(%rsp), %rdi +- +- /* Get internal lock. */ +- movl $1, %esi +- xorl %eax, %eax +- LOCK +-#if cond_lock == 0 +- cmpxchgl %esi, (%rdi) +-#else +- cmpxchgl %esi, cond_lock(%rdi) +-#endif +- jz 92f +- +-#if cond_lock != 0 +- addq $cond_lock, %rdi +-#endif +- cmpq $-1, dep_mutex-cond_lock(%rdi) +- movl $LLL_PRIVATE, %eax +- movl $LLL_SHARED, %esi +- cmovne %eax, %esi +- callq __lll_lock_wait +-#if cond_lock != 0 +- subq $cond_lock, %rdi +-#endif +-92: +- /* Increment the cond_futex value again, so it can be used as a new +- expected value. */ +- incl cond_futex(%rdi) +- movl cond_futex(%rdi), %edx +- +- /* Release internal lock. */ +- LOCK +-#if cond_lock == 0 +- decl (%rdi) +-#else +- decl cond_lock(%rdi) +-#endif +- jz 93f +- +-#if cond_lock != 0 +- addq $cond_lock, %rdi +-#endif +- cmpq $-1, dep_mutex-cond_lock(%rdi) +- movl $LLL_PRIVATE, %eax +- movl $LLL_SHARED, %esi +- cmovne %eax, %esi +- /* The call preserves %rdx. */ +- callq __lll_unlock_wake +-#if cond_lock != 0 +- subq $cond_lock, %rdi +-#endif +-93: +- /* Set the rest of SYS_futex args for FUTEX_WAIT_REQUEUE_PI. */ +- xorq %r10, %r10 +- movq dep_mutex(%rdi), %r8 +- leaq cond_futex(%rdi), %rdi +- jmp 90b +-.LcleanupEND2: +- + .size __pthread_cond_wait, .-__pthread_cond_wait + versioned_symbol (libpthread, __pthread_cond_wait, pthread_cond_wait, + GLIBC_2_3_2) +@@ -547,15 +479,11 @@ __condvar_cleanup1: + .uleb128 .LcleanupSTART-.LSTARTCODE + .uleb128 .LcleanupEND-.LcleanupSTART + .uleb128 __condvar_cleanup1-.LSTARTCODE +- .uleb128 0 +- .uleb128 .LcleanupSTART2-.LSTARTCODE +- .uleb128 .LcleanupEND2-.LcleanupSTART2 +- .uleb128 __condvar_cleanup1-.LSTARTCODE +- .uleb128 0 ++ .uleb128 0 + .uleb128 .LcallUR-.LSTARTCODE + .uleb128 .LENDCODE-.LcallUR + .uleb128 0 +- .uleb128 0 ++ .uleb128 0 + .Lcstend: + + +Only in b/nptl/sysdeps/unix/sysv/linux/x86_64: pthread_cond_wait.S.orig +Only in b/nptl/sysdeps/unix/sysv/linux/x86_64: pthread_cond_wait.S.rej diff --git a/libcap-ng/libcap-ng.nm b/libcap-ng/libcap-ng.nm index fae925b..d0a015f 100644 --- a/libcap-ng/libcap-ng.nm +++ b/libcap-ng/libcap-ng.nm @@ -5,7 +5,7 @@
name = libcap-ng version = 0.6.6 -release = 1 +release = 2
groups = System/Libraries url = http://people.redhat.com/sgrubb/libcap-ng @@ -27,11 +27,11 @@ build
install_cmds # Move libraries to lib - mkdir -pv %{BUILDROOT}/lib - mv -vf %{BUILDROOT}/usr/lib/libcap-ng.so.* %{BUILDROOT}/lib/ + mkdir -pv %{BUILDROOT}/%{lib} + mv -vf %{BUILDROOT}%{libdir}/libcap-ng.so.* %{BUILDROOT}/%{lib}/
# Recreate symlink - ln -svf ../../lib/libcap-ng.so.0 %{BUILDROOT}/usr/lib/libcap-ng.so + ln -svf ../../%{lib}/libcap-ng.so.0 %{BUILDROOT}%{libdir}/libcap-ng.so end
# XXX Testsuite is broken by the package developers @@ -42,7 +42,6 @@ end
packages package %{name} - end
package %{name}-devel template DEVEL diff --git a/libpng/libpng.nm b/libpng/libpng.nm index 3841816..752ba69 100644 --- a/libpng/libpng.nm +++ b/libpng/libpng.nm @@ -4,7 +4,7 @@ ###############################################################################
name = libpng -version = 1.5.6 +version = 1.5.7 release = 1
groups = System/Libraries diff --git a/mailcap/mailcap.nm b/mailcap/mailcap.nm index 01fd954..be52d0d 100644 --- a/mailcap/mailcap.nm +++ b/mailcap/mailcap.nm @@ -5,7 +5,7 @@
name = mailcap version = 2.1.36 -release = 1 +release = 2 arch = noarch
groups = System/Base @@ -26,6 +26,10 @@ source_dl = sources = %{thisapp}.tar.xz
build + requires + perl + end + build = # Nothing to do.
test diff --git a/perl-FCGI/perl-FCGI.nm b/perl-FCGI/perl-FCGI.nm new file mode 100644 index 0000000..439449c --- /dev/null +++ b/perl-FCGI/perl-FCGI.nm @@ -0,0 +1,49 @@ +############################################################################### +# IPFire.org - An Open Source Firewall Solution # +# Copyright (C) - IPFire Development Team info@ipfire.org # +############################################################################### + +name = perl-FCGI +version = 0.74 +release = 1 +thisapp = FCGI-%{version} + +groups = Development/Libraries +url = http://search.cpan.org/dist/FCGI +license = OML +summary = FastCGI perl bindings. + +description + FastCGI perl bindings. +end + +source_dl = http://search.cpan.org/CPAN/authors/id/F/FL/FLORA/ + +build + requires + perl(ExtUtils::MakeMaker) + end + + build + perl Makefile.PL INSTALLDIRS=vendor OPTIMIZE="%{CFLAGS}" + make %{PARALLELISMFLAGS} + end + + test + make test + end + + make_install_targets = pure_install DESTDIR=%{BUILDROOT} +end + +packages + package %{name} + requires + perl + end + end + + package %{name}-debuginfo + template DEBUGINFO + end +end diff --git a/perl/perl.nm b/perl/perl.nm index 253b4c7..8201e4f 100644 --- a/perl/perl.nm +++ b/perl/perl.nm @@ -8,6 +8,9 @@ version = 5.14.2 # Never reset release in this package, just increase. release = 10
+perl_epoch = 2 +thisver = %{perl_epoch}:%{version}-%{_release} + maintainer = Michael Tremer michael.tremer@ipfire.org groups = Development/Languages url = http://www.perl.org/ @@ -34,6 +37,7 @@ build gcc-c++ gdbm-devel iana-etc + perl procps zlib-devel end @@ -46,55 +50,66 @@ build sed -i 's/command /command[ -]/' makedepend.SH end
+ configure_options = \ + -des \ + -Doptimize="%{CFLAGS}" \ + -Dccdlflags="-Wl,--enable-new-dtags" \ + -Dlddlflags="-shared %{CFLAGS} %{LDFLAGS}" \ + -DDDEBUGGING=-g \ + -Dversion=%{version} \ + -Dmyhostname=localhost \ + -Dperladmin=root@localhost \ + -Dcc="gcc" \ + -Dcf_by="%{DISTRO_VENDOR}" \ + -Dprefix=/usr \ + -Dvendorprefix=/usr \ + -Dsiteprefix="/usr/local" \ + -Dsitelib="/usr/local/share/perl5" \ + -Dsitearch="/usr/local/lib/perl5" \ + -Dprivlib="/usr/share/perl5" \ + -Dvendorlib="/usr/share/perl5/vendor_perl" \ + -Darchlib="%{libdir}/perl5" \ + -Dvendorarch="%{libdir}/perl5/vendor_perl" \ + -Darchname=%{arch}-linux-thread-multi \ + -Dpager="/usr/bin/less -isr" \ + -Dman1dir=/usr/share/man/man1 \ + -Dman3dir=/usr/share/man/man3 \ + -Duseshrplib \ + -Dusethreads \ + -Duseithreads \ + -Duselargefiles \ + -Dd_semctl_semun \ + -Di_db \ + -Ui_ndbm \ + -Di_gdbm \ + -Di_shadow \ + -Di_syslog \ + -Dman3ext=3pm \ + -Duseperlio \ + -Dinstallusrbinperl=n \ + -Ubincompat5005 \ + -Uversiononly \ + -Dd_gethostent_r_proto \ + -Ud_endhostent_r_proto \ + -Ud_sethostent_r_proto \ + -Ud_endprotoent_r_proto \ + -Ud_setprotoent_r_proto \ + -Ud_endservent_r_proto \ + -Ud_setservent_r_proto \ + -Dscriptdir="/usr/bin" + + if "%{DISTRO_ARCH}" == "x86_64" + configure_options += \ + -Dlibpth="/usr/local/lib64 /lib64 %{prefix}/lib64" + end + build sed -i -e "s|BUILD_ZLIB\s*= True|BUILD_ZLIB = False|" \ -e "s|INCLUDE\s*= ./zlib-src|INCLUDE = /usr/include|" \ -e "s|LIB\s*= ./zlib-src|LIB = %{libdir}|" \ cpan/Compress-Raw-Zlib/config.in
- sh ./Configure -des \ - -Doptimize="%{CFLAGS}" \ - -Dversion=%{version} \ - -Dmyhostname=localhost \ - -Dperladmin=root@localhost \ - -Dcc="gcc" \ - -Dcf_by="%{DISTRO_VENDOR}" \ - -Dprefix=/usr \ - -Dvendorprefix=/usr \ - -Dsiteprefix="/usr/local" \ - -Dsitelib="/usr/local/share/perl5" \ - -Dsitearch="/usr/local/lib/perl5" \ - -Dprivlib="/usr/share/perl5" \ - -Dvendorlib="/usr/share/perl5/vendor_perl" \ - -Darchlib="%{libdir}/perl5" \ - -Dvendorarch="%{libdir}/perl5/vendor_perl" \ - -Darchname=%{arch}-linux-thread-multi \ - -Dpager="/usr/bin/less -isr" \ - -Dman1dir=/usr/share/man/man1 \ - -Dman3dir=/usr/share/man/man3 \ - -Duseshrplib \ - -Dusethreads \ - -Duseithreads \ - -Duselargefiles \ - -Dd_semctl_semun \ - -Di_db \ - -Ui_ndbm \ - -Di_gdbm \ - -Di_shadow \ - -Di_syslog \ - -Dman3ext=3pm \ - -Duseperlio \ - -Dinstallusrbinperl=n \ - -Ubincompat5005 \ - -Uversiononly \ - -Dd_gethostent_r_proto \ - -Ud_endhostent_r_proto \ - -Ud_sethostent_r_proto \ - -Ud_endprotoent_r_proto \ - -Ud_setprotoent_r_proto \ - -Ud_endservent_r_proto \ - -Ud_setservent_r_proto \ - -Dscriptdir="/usr/bin" + sh ./Configure %{configure_options}
make %{PARALLELISMFLAGS} end @@ -119,7 +134,7 @@ end
# This variable contains the constant version string # of this perl package. -perl_requires := %{name}=%{thisver} +perl_requires := %{name} = %{thisver}
packages package perl @@ -127,8 +142,7 @@ packages epoch = 2
requires - perl-libs=%{thisver} - perl(Carp) + perl-libs = %{version}-%{_release} end
provides @@ -189,24 +203,14 @@ packages perl(constant) perl(strict) perl(vars) - - # XXX why? - perl(Mac::InternetConfig) - perl(NDBM_File) end
filter_requires - %{perl_filter_requires} DBIx InternetConfig - perl(Mac - perl(NDBM_File - perl(VMS - end - - filter_provides - Carp - perl(Carp) + Mac:: + NDBM_File + VMS:: end end
@@ -407,7 +411,7 @@ packages end
filter_requires - perl(Mac::BuildTools) + Mac::BuildTools end
files @@ -494,10 +498,9 @@ packages end
filter_requires - %{perl_filter_requires} DBIx Your::Module::Here - perl(DBD::SQLite) + DBD::SQLite end
files @@ -531,8 +534,13 @@ packages %{perl_requires} end
+ provides + perl(Carp) = %{version} + perl(Carp::Heavy) = %{version} + end + # Do not export unversioned module - filter_provides = ^perl(Carp)\s*$ + #filter_provides = ^perl(Carp)\s*$
files /usr/share/perl5/Carp* @@ -565,9 +573,9 @@ packages /usr/share/perl5/Digest.pm /usr/share/perl5/Digest/base.pm /usr/share/perl5/Digest/file.pm - /usr/share/man/man5/Digest.3* - /usr/share/man/man5/Digest::base.3* - /usr/share/man/man5/Digest::file.3* + /usr/share/man/man3/Digest.3* + /usr/share/man/man3/Digest::base.3* + /usr/share/man/man3/Digest::file.3* end end
@@ -615,6 +623,8 @@ packages
files /usr/bin/shasum + %{libdir}/perl5/Digest/SHA* + %{libdir}/perl5/auto/Digest/SHA* /usr/share/perl5/Digest/SHA* /usr/share/man/man1/shasum.1* /usr/share/man/man3/Digest::SHA.3* @@ -682,6 +692,10 @@ packages perl(Test::Harness) end
+ filter_requires + VMS::Filespec + end + files /usr/bin/instmodsh /usr/share/perl5/ExtUtils/Command/ @@ -1246,7 +1260,7 @@ packages end
filter_requires - perl(VMS::Filespec) + VMS::Filespec end
files @@ -1298,10 +1312,6 @@ packages %{perl_requires} end
- filter_requires - %{perl_filter_requires} - end - files /usr/share/perl5/Pod/Escapes.pm /usr/share/man/man3/Pod::Escapes.* @@ -1324,10 +1334,6 @@ packages %{perl_requires} end
- filter_requires - %{perl_filter_requires} - end - files /usr/share/perl5/Pod/Simple/ /usr/share/perl5/Pod/Simple.pm @@ -1400,10 +1406,6 @@ packages %{perl_requires} end
- filter_requires - %{perl_filter_requires} - end - files /usr/bin/prove /usr/share/perl5/App*
hooks/post-receive -- IPFire 3.x development tree