aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2009-04-07 06:20:59 +0000
committerJakub Jelinek <jakub@redhat.com>2009-04-07 06:20:59 +0000
commit11799e4168a3ef36af3cb7ffb4f5cfaed7e244d7 (patch)
treedbf8c4b86a0b68b7754f43e579c8f035d47d1ec5
parent1a6da537df1fe1726d95407ec04cf65caa1f8121 (diff)
downloadglibc-11799e4168a3ef36af3cb7ffb4f5cfaed7e244d7.tar.xz
glibc-11799e4168a3ef36af3cb7ffb4f5cfaed7e244d7.zip
Updated to fedora-glibc-20090407T0545
-rw-r--r--ChangeLog87
-rw-r--r--NEWS20
-rw-r--r--config.make.in4
-rwxr-xr-xconfigure5990
-rw-r--r--configure.in60
-rw-r--r--crypt/Makefile19
-rw-r--r--crypt/md5-crypt.c138
-rw-r--r--crypt/sha256-crypt.c149
-rw-r--r--crypt/sha512-crypt.c149
-rw-r--r--elf/elf.h16
-rw-r--r--fedora/branch.mk4
-rw-r--r--fedora/glibc.spec.in11
-rw-r--r--localedata/ChangeLog6
-rw-r--r--localedata/locales/ks_IN211
-rw-r--r--misc/Makefile2
-rw-r--r--misc/Versions3
-rw-r--r--misc/preadv.c41
-rw-r--r--misc/preadv64.c41
-rw-r--r--misc/pwritev.c41
-rw-r--r--misc/pwritev64.c41
-rw-r--r--misc/sys/uio.h83
-rw-r--r--resolv/res_init.c3
-rw-r--r--resolv/res_send.c37
-rw-r--r--resolv/resolv.h1
-rwxr-xr-xscripts/check-local-headers.sh5
-rw-r--r--string/strverscmp.c59
-rw-r--r--sysdeps/posix/preadv.c108
-rw-r--r--sysdeps/posix/preadv64.c9
-rw-r--r--sysdeps/posix/pwritev.c108
-rw-r--r--sysdeps/posix/pwritev64.c9
-rw-r--r--sysdeps/posix/readv.c40
-rw-r--r--sysdeps/posix/writev.c42
-rw-r--r--sysdeps/unix/sysv/linux/bits/socket.h12
-rw-r--r--sysdeps/unix/sysv/linux/kernel-features.h14
-rw-r--r--sysdeps/unix/sysv/linux/preadv.c88
-rw-r--r--sysdeps/unix/sysv/linux/preadv64.c6
-rw-r--r--sysdeps/unix/sysv/linux/pwritev.c88
-rw-r--r--sysdeps/unix/sysv/linux/pwritev64.c6
-rw-r--r--sysdeps/unix/sysv/linux/readv.c46
-rw-r--r--sysdeps/unix/sysv/linux/sys/eventfd.h2
-rw-r--r--sysdeps/unix/sysv/linux/wordsize-64/preadv64.c1
-rw-r--r--sysdeps/unix/sysv/linux/wordsize-64/pwritev64.c1
-rw-r--r--sysdeps/unix/sysv/linux/writev.c45
-rw-r--r--sysdeps/x86_64/strchr.S313
-rw-r--r--sysdeps/x86_64/strlen.S146
45 files changed, 4759 insertions, 3546 deletions
diff --git a/ChangeLog b/ChangeLog
index 3bd91c3cee..62e4d49dc2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,90 @@
+2009-04-06 Ulrich Drepper <drepper@redhat.com>
+
+ * resolv/resolv.h (RES_SNGLKUP): Define.
+ * resolv/res_init.c (res_setoptions): Recognize single-request option.
+ * resolv/res_send.c (send_dg): If we sent two requests at once and
+ only get one reply before timeout switch to mode where we send the
+ second request only after the first answer has been received.
+
+2009-04-05 Ulrich Drepper <drepper@redhat.com>
+
+ * sysdeps/x86_64/strlen.S: Optimize by using SSE2 instructions.
+ * sysdeps/x86_64/strchr.S: Likewise.
+
+2009-04-03 Ulrich Drepper <drepper@redhat.com>
+
+ * configure.in: We need to test for the compiler earlier.
+
+ * misc/Makefile (routines): Add preadv, preadv64, pwritev, pwritev64.
+ * misc/Versions: Export preadv, preadv64, pwritev, pwritev64 for
+ GLIBC_2.10.
+ * misc/sys/uio.h: Declare preadv, preadv64, pwritev, pwritev64.
+ * sysdeps/unix/sysv/linux/kernel-features.h: Add entries for preadv
+ and pwritev.
+ * misc/preadv.c: New file.
+ * misc/preadv64.c: New file.
+ * misc/pwritev.c: New file.
+ * misc/pwritev64.c: New file.
+ * sysdeps/posx/preadv.c: New file.
+ * sysdeps/posx/preadv64.c: New file.
+ * sysdeps/posx/pwritev.c: New file.
+ * sysdeps/posx/pwritev64.c: New file.
+ * sysdeps/unix/sysv/linux/preadv.c: New file.
+ * sysdeps/unix/sysv/linux/preadv64.c: New file.
+ * sysdeps/unix/sysv/linux/pwritev.c: New file.
+ * sysdeps/unix/sysv/linux/pwritev64.c: New file.
+ * sysdeps/unix/sysv/linux/wordsize-64/preadv64.c: New file.
+ * sysdeps/unix/sysv/linux/wordsize-64/pwritev64.c: New file.
+
+ * sysdeps/unix/sysv/linux/readv.c (__libc_readv): Fix calling of
+ compatibility code.
+ * sysdeps/unix/sysv/linux/writev.c (__libc_writev): Likewise.
+
+ * sysdeps/unix/sysv/linux/kernel-features.h: Define
+ __ASSUME_COMPLETE_READV_WRITEV.
+ * sysdeps/unix/sysv/linux/readv.c: No need for userlevel fallback
+ with modern kernels.
+ * sysdeps/unix/sysv/linux/writev.c: Likewise.
+
+ * sysdeps/posix/readv.c: Since read is a cancellation point we have
+ to free a possible malloced buffer in case of cancellation.
+ * sysdeps/posix/writev.c: Likewise for write.
+
+2009-04-02 Ulrich Drepper <drepper@redhat.com>
+
+ * sysdeps/unix/sysv/linux/bits/socket.h: Add missing protocol numbers.
+
+ * configure.in: Recognize --enable-nss-crypt.
+ * config.make.in: Add nss-crypt entry.
+ * crypt/Makefile: If nss-crypt==yes, don't build md5.c, sha256.c,
+ sha512.c. Don't run md5test, sha256test, sha512test. Pass -DUSE_NSS
+ and include path for NSS directory to compiler for md5-crypt,
+ sha256-crypt, sha512-crypt. Link libcrypt.so with -lfreebl3.
+ * crypt/md5-crypt.c: If USE_NSS is defined, don't use local hash
+ function implementation, use NSS. Introduce wrappers around the
+ hash function calls. Little code size optimization.
+ * crypt/sha256-crypt.c: Likewise.
+ * crypt/sha512-crypt.c: Likewise.
+ * scripts/check-local-headers.sh: Ignore nss3 directory.
+
+ * configure.in: Rename pic_default to libc_cv_pic_default.
+ * config.make.in: Likewise.
+
+2009-04-01 Roland McGrath <roland@redhat.com>
+
+ * elf/elf.h (R_SPARC_GLOB_JMP): New macro.
+ (R_SPARC_GOTDATA_HIX22, R_SPARC_GOTDATA_LOX10): New macros.
+ (R_SPARC_GOTDATA_OP_HIX22, R_SPARC_GOTDATA_OP_LOX10): Likewise.
+ (R_SPARC_GOTDATA_OP, R_SPARC_H34): Likewise.
+ (R_SPARC_SIZE32, R_SPARC_SIZE64): Likewise.
+ (R_SPARC_GNU_VTINHERIT, R_SPARC_GNU_VTENTRY, R_SPARC_REV32): Likewise.
+ (R_SPARC_NUM): Update.
+ From Dave Miller <davem@davemloft.net>.
+
+2009-04-01 Ulrich Drepper <drepper@redhat.com>
+
+ * sysdeps/unix/sysv/linux/sys/eventfd.h (EFD_SEMAPHORE): Define.
+
2009-03-31 Ulrich Drepper <drepper@redhat.com>
* elf/dl-open.c: Keep track of used name spaces and only iterate over
diff --git a/NEWS b/NEWS
index 686d5dfdc4..1388caa804 100644
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,4 @@
-GNU C Library NEWS -- history of user-visible changes. 2009-3-14
+GNU C Library NEWS -- history of user-visible changes. 2009-4-6
Copyright (C) 1992-2008, 2009 Free Software Foundation, Inc.
See the end for copying conditions.
@@ -7,10 +7,14 @@ using `glibc' in the "product" field.
Version 2.10
+* New interfaces: preadv, preadv64, pwritev, pwritev64
+ Implemented by Ulrich Drepper.
+
* New Linux interfaces: accept4, fallocate, fallocate64.
+ Implemented by Ulrich Drepper.
* Correct declarations of string function when used in C++ code. This
- could lead to compile error for invalid C++ code.
+ could lead to compile errors for invalid C++ code.
* XPG7/POSIX 2008 compilation environment. Many GNU-specific functions are
now in POSIX.
@@ -24,7 +28,17 @@ Version 2.10
* Support for selecting between multiple function definitions at runtime
using STT_GNU_IFUNC symbols. Implemented by Ulrich Drepper.
-* New locale: nan_TW@latin
+* The libcrypt library can now use the hash function implementations in
+ NSS. Implemented by Ulrich Drepper.
+
+* The malloc implementation can be compiled to be less memory efficient
+ but higher performing in multi-threaded programs.
+ Implemented by Ulrich Drepper.
+
+* New locales: nan_TW@latin, ks_IN
+
+* Faster strlen and strchr on x86-64.
+ Implemented by Ulrich Drepper.
Version 2.9
diff --git a/config.make.in b/config.make.in
index 6da6362f24..73faa77b6f 100644
--- a/config.make.in
+++ b/config.make.in
@@ -81,10 +81,12 @@ sizeof-long-double = @sizeof_long_double@
experimental-malloc = @experimental_malloc@
+nss-crypt = @libc_cv_nss_crypt@
+
# Configuration options.
build-static = @static@
build-shared = @shared@
-build-pic-default= @pic_default@
+build-pic-default= @libc_cv_pic_default@
build-profile = @profile@
build-omitfp = @omitfp@
build-bounded = @bounded@
diff --git a/configure b/configure
index 69af8525be..755589111e 100755
--- a/configure
+++ b/configure
@@ -1,12 +1,12 @@
#! /bin/sh
# From configure.in CVSid.
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.61 for GNU C Library (see version.h).
+# Generated by GNU Autoconf 2.63 for GNU C Library (see version.h).
#
# Report bugs to <glibc>.
#
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-# 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+# 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
# This configure script is free software; the Free Software Foundation
# gives unlimited permission to copy, distribute and modify it.
## --------------------- ##
@@ -18,7 +18,7 @@ DUALCASE=1; export DUALCASE # for MKS sh
if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
emulate sh
NULLCMD=:
- # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+ # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
# is contrary to our usage. Disable this feature.
alias -g '${1+"$@"}'='"$@"'
setopt NO_GLOB_SUBST
@@ -40,17 +40,45 @@ as_cr_Letters=$as_cr_letters$as_cr_LETTERS
as_cr_digits='0123456789'
as_cr_alnum=$as_cr_Letters$as_cr_digits
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
- echo "#! /bin/sh" >conf$$.sh
- echo "exit 0" >>conf$$.sh
- chmod +x conf$$.sh
- if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
- PATH_SEPARATOR=';'
+as_nl='
+'
+export as_nl
+# Printing a long string crashes Solaris 7 /usr/bin/printf.
+as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
+if (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
+ as_echo='printf %s\n'
+ as_echo_n='printf %s'
+else
+ if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
+ as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
+ as_echo_n='/usr/ucb/echo -n'
else
- PATH_SEPARATOR=:
+ as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
+ as_echo_n_body='eval
+ arg=$1;
+ case $arg in
+ *"$as_nl"*)
+ expr "X$arg" : "X\\(.*\\)$as_nl";
+ arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
+ esac;
+ expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
+ '
+ export as_echo_n_body
+ as_echo_n='sh -c $as_echo_n_body as_echo'
fi
- rm -f conf$$.sh
+ export as_echo_body
+ as_echo='sh -c $as_echo_body as_echo'
+fi
+
+# The user is always right.
+if test "${PATH_SEPARATOR+set}" != set; then
+ PATH_SEPARATOR=:
+ (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
+ (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
+ PATH_SEPARATOR=';'
+ }
fi
# Support unset when possible.
@@ -66,8 +94,6 @@ fi
# there to prevent editors from complaining about space-tab.
# (If _AS_PATH_WALK were called with IFS unset, it would disable word
# splitting by setting IFS to empty value.)
-as_nl='
-'
IFS=" "" $as_nl"
# Find who we are. Look in the path if we contain no directory separator.
@@ -90,7 +116,7 @@ if test "x$as_myself" = x; then
as_myself=$0
fi
if test ! -f "$as_myself"; then
- echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
+ $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
{ (exit 1); exit 1; }
fi
@@ -103,17 +129,10 @@ PS2='> '
PS4='+ '
# NLS nuisances.
-for as_var in \
- LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
- LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
- LC_TELEPHONE LC_TIME
-do
- if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
- eval $as_var=C; export $as_var
- else
- ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
- fi
-done
+LC_ALL=C
+export LC_ALL
+LANGUAGE=C
+export LANGUAGE
# Required to use basename.
if expr a : '\(a\)' >/dev/null 2>&1 &&
@@ -135,7 +154,7 @@ as_me=`$as_basename -- "$0" ||
$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
X"$0" : 'X\(//\)$' \| \
X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-echo X/"$0" |
+$as_echo X/"$0" |
sed '/^.*\/\([^/][^/]*\)\/*$/{
s//\1/
q
@@ -161,7 +180,7 @@ else
as_have_required=no
fi
- if test $as_have_required = yes && (eval ":
+ if test $as_have_required = yes && (eval ":
(as_func_return () {
(exit \$1)
}
@@ -243,7 +262,7 @@ IFS=$as_save_IFS
if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
emulate sh
NULLCMD=:
- # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+ # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
# is contrary to our usage. Disable this feature.
alias -g '${1+"$@"}'='"$@"'
setopt NO_GLOB_SUBST
@@ -264,7 +283,7 @@ _ASEOF
if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
emulate sh
NULLCMD=:
- # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+ # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
# is contrary to our usage. Disable this feature.
alias -g '${1+"$@"}'='"$@"'
setopt NO_GLOB_SUBST
@@ -344,10 +363,10 @@ fi
if test "x$CONFIG_SHELL" != x; then
for as_var in BASH_ENV ENV
- do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
- done
- export CONFIG_SHELL
- exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"}
+ do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
+ done
+ export CONFIG_SHELL
+ exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"}
fi
@@ -416,9 +435,10 @@ fi
test \$exitcode = 0") || {
echo No shell found that supports shell functions.
- echo Please tell autoconf@gnu.org about your system,
- echo including any error possibly output before this
- echo message
+ e