diff -Nup a/ChangeLog b/ChangeLog --- a/ChangeLog 2012-01-01 05:16:32.000000000 -0700 +++ b/ChangeLog 2012-01-01 13:08:53.281715870 -0700 @@ -2542,6 +2542,11 @@ * sysdeps/mach/hurd/sys/param.h (DEV_BSIZE): New macro. +2011-09-02 Andreas Schwab + + * nscd/selinux.c (avc_create_thread): Set PR_SET_KEEPCAPS before + spawning AVC thread. + 2011-09-08 Andreas Schwab * elf/dl-load.c (lose): Check for non-null L. @@ -2804,6 +2809,11 @@ * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Fix cfi directive. +2011-08-31 Andreas Schwab + + * include/link.h (FORCED_DYNAMIC_TLS_OFFSET) [NO_TLS_OFFSET == 0]: + Change to -1. + 2011-08-24 David S. Miller * sysdeps/sparc/sparc64/strcmp.S: Rewrite. @@ -3609,6 +3619,14 @@ * config.make.in: Likewise. * malloc/Makefile: Likewise. +2011-06-28 Andreas Schwab + + * iconvdata/gb18030.c: Update tables. + (BODY for FROM_LOOP): Handle non-BMP characters specially. + + * sysdeps/posix/getaddrinfo.c (gaih_inet): Don't use gethostbyaddr + to determine canonical name. + 2011-06-27 Andreas Schwab * iconvdata/gb18030.c (BODY for TO_LOOP): Fix encoding of non-BMP @@ -3740,6 +3758,10 @@ * inet/getnetgrent_r.c: Use DL_CALL_FCT in several places. +2011-06-21 Andreas Schwab + + * iconvdata/gb18030.c: Regenerate tables. + 2011-06-20 David S. Miller * sysdeps/sparc/sparc32/dl-plt.h: Protect against multiple @@ -4362,6 +4384,13 @@ * libio/Makefile (tests): Add bug-fclose1. * libio/bug-fclose1.c: New file. +2011-05-13 Andreas Schwab + + * elf/dl-load.c (is_dst): Remove parameter secure, all callers + changed. Move check for valid use of $ORIGIN ... + (_dl_dst_substitute): ... here. Reset check_for_trusted when a + path element is skipped. + 2011-05-12 Ulrich Drepper [BZ #12511] @@ -4639,13 +4668,6 @@ * stdlib/bug-getcontext.c: New file. * stdlib/Makefile: Add rules to build and run bug-getcontext. -2011-04-13 Andreas Krebbel - - * sysdeps/s390/s390-64/utf16-utf32-z9.c: Wrap the z9-109 - instructions into .machine "z9-109". - * sysdeps/s390/s390-64/utf8-utf16-z9.c: Likewise. - * sysdeps/s390/s390-64/utf8-utf32-z9.c: Likewise. - 2011-04-11 Andreas Krebbel * sysdeps/s390/s390-32/elf/start.S (_start): Skip extra zeroes @@ -4883,6 +4905,31 @@ * sysdeps/unix/sysv/linux/Versions [GLIBC_2.14] (clock_adjtime): Export. +2011-04-06 Andreas Schwab + + * scripts/check-local-headers.sh: Ignore systemtap headers. + +2011-02-21 Roland McGrath + + * sysdeps/x86_64/__longjmp.S: Add a static probe here. + * sysdeps/x86_64/setjmp.S: Likewise. + * sysdeps/i386/bsd-setjmp.S: Likewise. + * sysdeps/i386/bsd-_setjmp.S: Likewise. + * sysdeps/i386/setjmp.S: Likewise. + * sysdeps/i386/__longjmp.S: Likewise. + * sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S: Likewise. + * sysdeps/unix/sysv/linux/i386/____longjmp_chk.S: Likewise. + +2011-02-08 Roland McGrath + + * include/stap-probe.h: New file. + * configure.in: Handle --enable-systemtap. + * configure: Regenerated. + * config.h.in (USE_STAP_PROBE): New #undef. + * extra-lib.mk (CPPFLAGS-$(lib)): Add -DIN_LIB=$(lib). + * elf/Makefile (CPPFLAGS-.os): Add -DIN_LIB=rtld. + * elf/rtld-Rules (rtld-CPPFLAGS): Likewise. + 2011-03-22 Ulrich Drepper * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_check_word): Increment @@ -4943,6 +4990,16 @@ $LDFLAGS and -nostdlib -nostartfiles to linking step. Change main to _start. +2011-03-18 Andreas Schwab + + * elf/ldd.bash.in: Never run file directly. + +2011-03-07 Andreas Schwab + + * include/link.h (struct link_map): Remove l_orig_initfini. + * elf/dl-close.c (_dl_close_worker): Revert its use. + * elf/dl-deps.c (_dl_map_object_deps): Likewise. + 2011-03-06 Ulrich Drepper * elf/dl-load.c (_dl_map_object): If we are looking for the first @@ -5159,6 +5216,12 @@ * shadow/sgetspent.c: Check return value of __sgetspent_r instead of errno. +2011-02-03 Andreas Schwab + + * login/programs/pt_chown.c (main): Check for valid file + descriptor instead of privileges. Be careful to drop all + capabilities when not needed. + 2011-01-19 Ulrich Drepper [BZ #11724] @@ -5846,6 +5909,26 @@ * sysdeps/unix/sysv/linux/internal_statvfs.c (INTERNAL_STATVFS): Mask out sign-bit copies when constructing f_fsid. +2010-09-27 Andreas Schwab + + * include/link.h (struct link_map): Add l_free_initfini. + * elf/dl-deps.c (_dl_map_object_deps): Set it when assigning + l_initfini. + * elf/rtld.c (dl_main): Clear it on all objects loaded on startup. + * elf/dl-libc.c (free_mem): Free l_initfini if l_free_initfini is + set. + + [BZ #11561] + * posix/regcomp.c (parse_bracket_exp): When looking up collating + elements compare against the byte sequence of it, not its name. + + [BZ #6530] + * stdio-common/vfprintf.c (process_string_arg): Revert 2000-07-22 + change. + + * nss/nss_files/files-XXX.c (internal_getent): Declare linebuflen + as size_t. + 2010-09-24 Petr Baudis * debug/stack_chk_fail_local.c: Add missing licence exception. @@ -6638,6 +6721,17 @@ call returning > 0 value. * sysdeps/unix/sysv/linux/getlogin.c (getlogin): Likewise. +2010-07-01 Andreas Schwab + + * include/sys/resource.h (__getrlimit): Add hidden proto. + * sysdeps/unix/sysv/linux/i386/getrlimit.c: Add libc_hidden_weak. + * sysdeps/mach/hurd/getrlimit.c: Add libc_hidden_def. + * resource/getrlimit.c: Likewise. + +2010-06-21 Andreas Schwab + + * sysdeps/i386/i686/Makefile: Don't pass -mtune to assembler. + 2010-06-07 Andreas Schwab * dlfcn/Makefile: Remove explicit dependencies on libc.so and @@ -6690,6 +6784,21 @@ * hurd/hurd/fd.h (__file_name_lookup_at): Update comment. * sysdeps/mach/hurd/linkat.c (linkat): Pass O_NOLINK in FLAGS. +2010-06-11 Andreas Schwab + + * elf/rtld.c (_dl_starting_up): Always define. + (dl_main): Always set _dl_starting_up. + * elf/dl-support.c (_dl_starting_up): Always define. + * elf/dl-init.c (_dl_init): Always clear _dl_starting_up. + +2010-06-10 Andreas Schwab + + * sysdeps/unix/sysv/linux/i386/Versions: Export __uname under + GLIBC_PRIVATE. + * nptl/Versions: Export __getrlimit under GLIBC_PRIVATE. + * sysdeps/unix/sysv/linux/i386/smp.h: Call __uname instead of uname. + * nptl/nptl-init.c: Call __getrlimit instead of getrlimit. + 2010-05-28 Luis Machado * sysdeps/powerpc/powerpc32/power7/memcpy.S: Exchange srdi for srwi. diff -Nup a/ChangeLog.15 b/ChangeLog.15 --- a/ChangeLog.15 2012-01-01 05:16:32.000000000 -0700 +++ b/ChangeLog.15 2012-01-01 13:08:53.283715875 -0700 @@ -477,6 +477,14 @@ 2004-11-26 Jakub Jelinek + * posix/Makefile (generated: Add getconf.speclist. + ($(inst_libexecdir)/getconf): Use getconf.speclist instead of + getconf output. + ($(objpfx)getconf.speclist): New rule. + * posix/getconf.speclist.h: New file. + +2004-11-26 Jakub Jelinek + * sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add GETCONF_DIR. 2004-11-26 Kaz Kojima @@ -1103,6 +1111,13 @@ * sysdeps/generic/tempname.c (__path_search): Add missing argument TRY_TMPDIR. +2004-11-02 Jakub Jelinek + + * include/features.h (__USE_FORTIFY_LEVEL): Also set for Red Hat + GCC 3.4.x-RH >= 3.4.2-8. + * debug/tst-chk1.c (do_test): Deal with GCC 3.4.x-RH not + being able to recognize subobjects. + 2004-10-31 Mariusz Mazur * sysdeps/unix/sysv/linux/alpha/setregid.c: New file. @@ -1443,6 +1458,11 @@ * sysdeps/generic/readonly-area.c (__readonly_str): Renamed to ... (__readonly_area): ... this. +2004-10-19 Jakub Jelinek + + * include/features.h (__USE_FORTIFY_LEVEL): Enable even with + Red Hat gcc4 4.0.0 and above. + 2004-10-18 Jakub Jelinek * sysdeps/generic/strcpy_chk.c (__strcpy_chk): Speed up by checking @@ -3182,6 +3202,23 @@ before return type. * locale/localename.c (__current_locale_name): Likewise. +2004-08-31 Jakub Jelinek + + * elf/ldconfig.c (parse_conf): Add prefix argument, prepend it + before arguments to add_dir and pass to parse_conf_include. + (parse_conf_include): Add prefix argument, pass it down to + parse_conf. + (main): Call arch_startup. Adjust parse_conf caller. + Call add_arch_dirs. + * sysdeps/generic/dl-cache.h (arch_startup, add_arch_dirs): Define. + * sysdeps/unix/sysv/linux/i386/dl-cache.h: New file. + * sysdeps/unix/sysv/linux/ia64/dl-cache.h (EMUL_HACK, arch_startup, + add_arch_dirs): Define. + * sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed: Prepend + /emul/ia32-linux before the 32-bit ld.so pathname. + * sysdeps/unix/sysv/linux/ia64/dl-procinfo.c: New file. + * sysdeps/unix/sysv/linux/ia64/dl-procinfo.h: New file. + 2004-08-30 Roland McGrath * scripts/extract-abilist.awk: If `lastversion' variable defined, omit diff -Nup a/ChangeLog.16 b/ChangeLog.16 --- a/ChangeLog.16 2012-01-01 05:16:32.000000000 -0700 +++ b/ChangeLog.16 2012-01-01 13:08:53.286715876 -0700 @@ -2042,6 +2042,9 @@ (__MATHDECL_2): Use __REDIRECT_NTH instead of __REDIRECT followed by __THROW. + * sysdeps/unix/sysv/linux/futimesat.c (futimesat): If + file == NULL, use __futimes unconditionally. + 2006-02-02 Ulrich Drepper * sysdeps/unix/sysv/linux/futimesat.c [__NR_futimesat] @@ -2101,6 +2104,11 @@ * sysdeps/ieee754/ldbl-128/s_llrintl.c (__llrintl): Fix a typo. * sysdeps/s390/fpu/libm-test-ulps: Remove llrint ulps. +2006-01-30 Jakub Jelinek + + * include/bits/stdlib-ldbl.h: New file. + * include/bits/wchar-ldbl.h: New file. + 2006-01-19 Thomas Schwinge * libio/genops.c: Include . diff -Nup a/ChangeLog.17 b/ChangeLog.17 --- a/ChangeLog.17 2012-01-01 05:16:32.000000000 -0700 +++ b/ChangeLog.17 2012-01-01 13:08:53.290715873 -0700 @@ -256,6 +256,12 @@ * Makerules (libc-abis): Fix search for libc-abis in add-ons. +2010-04-06 Ulrich Drepper + + * sysdeps/posix/getaddrinfo.c (default_scopes): Assign global + scope to RFC 1918 addresses. + * posix/gai.conf: Document difference from RFC 3484. + 2010-04-05 Thomas Schwinge * sysdeps/gnu/unwind-resume.c: New, moved from nptl/sysdeps/pthread/. @@ -2953,6 +2959,11 @@ d2009-10-30 Ulrich Drepper + + * Makeconfig (ASFLAGS): Append $(sysdep-ASFLAGS). + * sysdeps/i386/Makefile (sysdep-ASFLAGS): Add -U__i686. + 2009-07-21 Ulrich Drepper * sysdeps/x86_64/multiarch/strstr.c: Minor cleanups. Remove @@ -3218,6 +3229,11 @@ d2009-10-30 Ulrich Drepper + + * timezone/zic.c (stringzone): Don't try to generate a POSIX TZ + string when the timezone ends in DST. + 2009-06-26 Ulrich Drepper * resolv/resolv.h: Define RES_SNGLKUPREOP. @@ -11818,6 +11834,10 @@ d2009-10-30 Ulrich Drepper + + * locale/programs/locarchive.c (add_alias, insert_name): Remove static. + 2007-04-16 Ulrich Drepper [BZ #4364] @@ -13075,6 +13095,15 @@ d2009-10-30 Ulrich Drepper + + * sysdeps/unix/sysv/linux/netlinkaccess.h: Include linux/if_addr.h + if IFA_MAX is not defined. + (IFA_RTA, IFA_PAYLOAD, IFLA_RTA, IFLA_PAYLOAD): Define if not + defined. + * sysdeps/unix/sysv/linux/check_pf.c: Include netlinkaccess.h + instead of asm/types.h, linux/netlink.h and linux/rtnetlink.h. + 2006-12-09 Ulrich Drepper [BZ #3632] diff -Nup a/ChangeLog.orig b/ChangeLog.orig --- a/ChangeLog.orig 1969-12-31 17:00:00.000000000 -0700 +++ b/ChangeLog.orig 2012-01-01 05:16:32.000000000 -0700 @@ -0,0 +1,6768 @@ +2012-01-01 Ulrich Drepper + + * posix/getconf.c: Update copyright year. + * nss/getent.c: Likewise. + * nss/makedb.c: Likewise. + * iconv/iconvconfig.c: Likewise. + * iconv/iconv_prog.c: Likewise. + * elf/ldconfig.c: Likewise. + * elf/pldd.c: Likewise. + * elf/sotruss.ksh: Likewise. + * catgets/gencat.c: Likewise. + * csu/version.c: Likewise. + * elf/ldd.bash.in: Likewise. + * elf/sprof.c (print_version): Likewise. + * locale/programs/locale.c: Likewise. + * locale/programs/localedef.c: Likewise. + * login/programs/pt_chown.c: Likewise. + * nscd/nscd.c (print_version): Likewise. + * debug/xtrace.sh: Likewise. + * malloc/memusage.sh: Likewise. + * malloc/mtrace.pl: Likewise. + * debug/catchsegv.sh: Likewise. + +2011-12-30 Jakub Jelinek + + * posix/regex_internal.c (re_string_fetch_byte_case): Remove + pure attribute. + +2011-12-23 Ulrich Drepper + + * version.h (RELEASE): Bump for 2.15 release. + * include/features.h (__GLIBC_MINOR__): Bump to 15. + + * sysdeps/x86_64/dl-machine.h: Fix typos in comments. + Patch by Marek Polacek . + + * bits/byteswap.h: Protect long long constants with __extension__. + * sysdeps/i386/bits/byteswap.h: Likewise. + * sysdeps/ia64/bits/byteswap.h: Likewise. + * sysdeps/s390/bits/byteswap.h: Likewise. + * sysdeps/x86_64/bits/byteswap.h: Likewise. + +2011-12-23 Liubov Dmitrieva + + [BZ #13540] + * sysdeps/x86_64/multiarch/strcpy-ssse3.S: Fix overrun in + destination buffer. + * sysdeps/x86_64/multiarch/wcscpy-ssse3.S: Likewise. + +2011-12-23 Marek Polacek + + * elf/dl-addr.c (determine_info): Add inline keyword. + * elf/tst-auditmod4b.c (check_avx): Likewise. + * elf/tst-auditmod6b.c (check_avx): Likewise. + * elf/tst-auditmod6c.c (check_avx): Likewise. + * elf/tst-auditmod7b.c (check_avx): Likewise. + +2011-12-23 Ulrich Drepper + + * sysdeps/i386/fpu/bits/fenv.h (feraiseexcept): Also enable for + !__SSE_MATH__. + +2011-12-23 Liubov Dmitrieva + + [BZ #13540] + * sysdeps/i386/i686/multiarch/wcscpy-ssse3.S: Fix wrong copying + processing for last bytes. + +2011-08-06 Bruno Haible + + [BZ #13061] + * iconvdata/cp1258.c (comp_table_data): Combine U+00A8 U+0301 to + U+0385, not to U+1FEE. + + [BZ #13062] + * iconvdata/tcvn5712-1.c (comp_table_data): Remove useless and wrong + entry for U+00A5 U+0301. + +2011-12-22 Ulrich Drepper + + [BZ #13166] + * inet/getnameinfo.c (getnameinfo): Return EAI_OVERFLOW if the + buffer for the output is too small. + + * sysdeps/i386/fpu/bits/fenv.h [__SSE_MATH__]: Add feraiseexcept + optimization. + + [BZ #13185] + * sysdeps/i386/fpu/fgetexcptflg.c (__fegetexceptflag): Also return + SSE flags if possible. + +2011-12-22 Liubov Dmitrieva + + [BZ #13540] + * sysdeps/i386/i686/multiarch/strcpy-ssse3.S: Fix wrong copying + processing for last bytes. + +2011-12-22 Joseph Myers + + * sysdeps/unix/sysv/linux/Makefile (syscall-list-variants) + (syscall-list-default-options, syscall-list-default-condition) + (syscall-list-includes): Define. + ($(objpfx)syscall-%.h $(objpfx)syscall-%.d): Support arbitrary + list of ABIs and options and #if conditions for each ABI. Do not + handle common syscalls between ABIs specially. + * sysdeps/unix/sysv/linux/powerpc/Makefile (64bit-predefine): + Remove. + (syscall-list-variants, syscall-list-32bit-options) + (syscall-list-32bit-condition, syscall-list-64bit-options) + (syscall-list-64bit-condition): Define. + * sysdeps/unix/sysv/linux/s390/Makefile (64bit-predefine): Remove. + (syscall-list-variants, syscall-list-32bit-options) + (syscall-list-32bit-condition, syscall-list-64bit-options) + (syscall-list-64bit-condition): Define. + * sysdeps/unix/sysv/linux/sparc/Makefile (64bit-predefine): + Remove. + (syscall-list-variants, syscall-list-32bit-options) + (syscall-list-32bit-condition, syscall-list-64bit-options) + (syscall-list-64bit-condition): Define. + * sysdeps/unix/sysv/linux/x86_64/Makefile (64bit-predefine): + Remove. + (syscall-list-variants, syscall-list-32bit-options) + (syscall-list-32bit-condition, syscall-list-64bit-options) + (syscall-list-64bit-condition): Define. + +2011-12-22 Ulrich Drepper + + * locale/iso-639.def: Add brx entry. + + [BZ #13328] + * malloc/mtrace.c (tr_freehook): Avoid unnecessary unlock/lock. + Proposed by Mariusz_Cukr . + + * sysdeps/x86_64/fpu/bits/fenv.h: Use __REDIRECT_NTH for + __feraiseexcept_renamed. + +2011-12-21 Ulrich Drepper + + [BZ #13538] + * sysdeps/unix/sysv/linux/sys/epoll.h: Initialize EPOLLONESHOT and + EPOLLET with unsigned values. + * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/sys/epoll.h: Likewise. + + * math/s_cacosh.c: Use Kahan's formula if the subtraction could lead + to large cancellation. + * math/s_cacoshf.c: Likewise. + * math/s_cacoshl.c: Likewise. + +2011-11-18 Richard B. Kreckel + + [BZ #13305] + [BZ #12786] + * math/s_cacosh.c: Fix rare miscomputation in cacosh(). + * math/s_cacoshf.c: Likewise. + * math/s_cacoshl.c: Likewise. + +2011-12-21 Ulrich Drepper + + [BZ #13439] + * iconv/gconv.h: Define __GCONV_SWAP. + * iconvdata/unicode.c: The swap bit must be stored in __flags. + * iconvdata/utf-16.c: Likewise. + * iconvdata/utf-32.c: Likewise. + +2011-12-21 Andreas Schwab + + [BZ #13524] + * stdlib/strtod_l.c (____STRTOF_INTERNAL): Clear lowest limb of + numerator after shifting it by one limb. + +2011-12-19 Rafael Ávila de Espíndola + + * sysdeps/x86_64/fpu/bits/fenv.h (feraiseexcept): Define it only + under [__USE_EXTERN_INLINES]. + +2011-12-17 Ulrich Drepper + + [BZ #13446] + * stdio-common/vfprintf.c (vfprintf): Fix extension of specs array. + +2011-11-22 Adhemerval Zanella + + * sysdeps/powerpc/Makefile: Added locale-defines.sym generation. + * sysdeps/powerpc/locale-defines.sym: Locale definitions for strcasecmp + optimized code. + * sysdeps/powerpc/powerpc32/power7/Makefile: New file. + * sysdeps/powerpc/powerpc32/power7/strcasecmp.S: New file. + * sysdeps/powerpc/powerpc32/power7/strcasecmp_l.S: New file. + * sysdeps/powerpc/powerpc64/power7/Makefile: Added unroll-loop option + for strncasecmp/strncasecmp_l compilation. + * sysdeps/powerpc/powerpc64/power7/strcasecmp.S: New file. + * sysdeps/powerpc/powerpc64/power7/strcasecmp_l.S: New file. + +2011-12-08 Marek Polacek + + [BZ #13484] + * math/bits/math-finite.h: Use __REDIRECT_NTH and __NTH instead + of __asm__. + +2011-12-17 Ulrich Drepper + + [BZ #13506] + * time/tzfile.c (__tzfile_read): Check values from file header. + +2011-11-21 Will Schmidt + + * powerpc/powerpc32/sysdep.h: Define SETUP_GOT_ACCESS() macro. + * powerpc/powerpc32/a2/memcpy.S: Use SETUP_GOT_ACCESS() macro. + * powerpc/powerpc32/dl-start.S: Likewise. + * powerpc/powerpc32/elf/start.S: Likewise. + * powerpc/powerpc32/fpu/__longjmp-common.S: Likewise. + * powerpc/powerpc32/fpu/s_ceil.S: Likewise. + * powerpc/powerpc32/fpu/s_ceilf.S: Likewise. + * powerpc/powerpc32/fpu/s_floor.S: Likewise. + * powerpc/powerpc32/fpu/s_floorf.S: Likewise. + * powerpc/powerpc32/fpu/s_lround.S: Likewise. + * powerpc/powerpc32/fpu/s_rint.S: Likewise. + * powerpc/powerpc32/fpu/s_rintf.S: Likewise. + * powerpc/powerpc32/fpu/s_round.S: Likewise. + * powerpc/powerpc32/fpu/s_roundf.S: Likewise. + * powerpc/powerpc32/fpu/s_trunc.S: Likewise. + * powerpc/powerpc32/fpu/s_truncf.S: Likewise. + * powerpc/powerpc32/fpu/setjmp-common.S: Likewise. + * powerpc/powerpc32/memset.S: Likewise. + * powerpc/powerpc32/power4/fpu/s_llround.S: Likewise. + * powerpc/powerpc32/power4/fpu/w_sqrt.S: Likewise. + * powerpc/powerpc32/power4/fpu/w_sqrtf.S: Likewise. + * powerpc/powerpc32/power5/fpu/w_sqrt.S: Likewise. + * powerpc/powerpc32/power5/fpu/w_sqrtf.S: Likewise. + * powerpc/powerpc32/power7/fpu/s_finite.S: Likewise. + * powerpc/powerpc32/power7/fpu/s_isinf.S: Likewise. + * powerpc/powerpc32/power7/fpu/s_isnan.S: Likewise. + * unix/sysv/linux/powerpc/powerpc32/____longjmp_chk.S: Likewise. + * unix/sysv/linux/powerpc/powerpc32/brk.S: Likewise. + * unix/sysv/linux/powerpc/powerpc32/getcontext-common.S: Likewise. + * unix/sysv/linux/powerpc/powerpc32/setcontext-common.S: Likewise. + * unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S: Likewise. + +2011-11-18 Adhemerval Zanella + + * math/libm-test.inc: Added more nearbyint tests. + * sysdeps/powerpc/powerpc32/fpu/s_nearbyint.S: New file. + * sysdeps/powerpc/powerpc32/fpu/s_nearbyintf.S: New file. + * sysdeps/powerpc/powerpc64/fpu/s_nearbyint.S: New file. + * sysdeps/powerpc/powerpc64/fpu/s_nearbyintf.S: New file. + +2011-11-21 Ross Lagerwall + + * resolv/res_init.c (__res_vinit): Open /etc/resolv.conf with + FD_CLOEXEC. + +2011-11-14 Liubov Dmitrieva + + * sysdeps/x86_64/multiarch/Makefile [subdir=wcsmbs] (sysdep_routines): + Add wcscpy-ssse3 wcscpy-c. + * sysdeps/x86_64/multiarch/wcscpy-ssse3.S: New file. + * sysdeps/x86_64/multiarch/wcscpy-c.c: New file. + * sysdeps/x86_64/multiarch/wcscpy.S: New file. + * sysdeps/x86_64/wcschr.S: New file. + * sysdeps/x86_64/wcsrchr.S: New file. + * string/test-strcmp.c: Remove checking of wcscmp function for + wrong alignments. + * sysdeps/i386/i686/multiarch/Makefile [subdir=wcsmbs] + (sysdep_routines): Add wcscpy-ssse3 wcscpy-c wcschr-sse2 wcschr-c + wcsrchr-sse2 wcsrchr-c. + * sysdeps/i386/i686/multiarch/wcschr.S: New file. + * sysdeps/i386/i686/multiarch/wcschr-c.c: New file. + * sysdeps/i386/i686/multiarch/wcschr-sse2.S: New file. + * sysdeps/i386/i686/multiarch/wcsrchr.S: New file. + * sysdeps/i386/i686/multiarch/wcsrchr-c.c: New file. + * sysdeps/i386/i686/multiarch/wcsrchr-sse2.S: New file. + * sysdeps/i386/i686/multiarch/wcscpy.S: New file. + * sysdeps/i386/i686/multiarch/wcscpy-c.c: New file. + * sysdeps/i386/i686/multiarch/wcscpy-ssse3.S: New file. + * wcsmbc/wcschr.c (WCSCHR): New macro. + +2011-11-17 Liubov Dmitrieva + + * wcsmbs/Makefile (strop-tests): Add wcsrchr wcscpy. + * wcsmbs/test-wcsrchr.c: New file. + * string/test-strrchr.c: Add wcsrchr support. + (WIDE): New macro. + * wcsmbs/test-wcscpy.c: New file. + * string/test-strcpy.c: Add wcscpy support. + (WIDE): New macro. + +2011-12-10 Ulrich Drepper + + * sysdeps/generic/dl-hash.h (_dl_elf_hash): Lift one operation out of + the inner loop. + +2011-12-06 Andreas Schwab + + [BZ #13472] + * sysdeps/powerpc/fpu/e_hypot.c (twoM600): Correct value. + +2011-12-04 Ulrich Drepper + + * sysdeps/generic/dl-hash.h (_dl_elf_hash): Fix attribute. + Minor optimizations. + + * sunrpc/clnt_unix.c (clntunix_control): Fix aliasing issues. + * sunrpc/clnt_tcp.c (clnttcp_control): Likewise. + * sunrpc/clnt_udp.c (clntudp_call): Likewise. + +2011-12-03 Ulrich Drepper + + * inet/netinet/in.h: Provide versions of IN6_IS_ADDR_UNSPECIFIED, + IN6_IS_ADDR_LOOPBACK, IN6_IS_ADDR_LINKLOCAL, IN6_IS_ADDR_SITELOCAL, + IN6_IS_ADDR_V4MAPPED, IN6_IS_ADDR_V4COMPAT, and IN6_ARE_ADDR_EQUAL + for gcc to avoid warnings. + * inet/Makefile (tests): Add tst-checks. + * inet/tst-checks.c: New file. + + * sysdeps/generic/dl-hash.h (_dl_elf_hash): Add attribute to avoid + warning. + + * sysdeps/x86_64/multiarch/wmemcmp-c.c: Provide prototype for + __wmemcmp_sse2. + + * sysdeps/x86_64/fpu/s_scalbln.c: Removed. + * sysdeps/x86_64/fpu/s_scalbn.c: Removed. + + * malloc/mcheck.h: Fix use of incorrect encoding in comment. + +2011-12-02 Ulrich Drepper + + * nis/nis_findserv.c (__nis_findfastest_with_timeout): Avoid aliasing + problem. + + * nscd/aicache.c (addhstaiX): Avoid unused variable warning. + +2011-11-29 Joseph Myers + + * sysdeps/unix/sysv/linux/sh/bits/atomic.h (rNOSP): Define + conditional on GCC version. + (__arch_compare_and_exchange_val_8_acq) + (__arch_compare_and_exchange_val_16_acq) + (__arch_compare_and_exchange_val_32_acq, atomic_exchange_and_add) + (atomic_add, atomic_add_negative, atomic_add_zero, atomic_bit_set) + (atomic_bit_test_set): Use rNOSP instead of "r" constraints. + +2011-12-02 Joseph Myers + + * sysdeps/sh/backtrace.c: New file. + +2011-12-02 Andreas Schwab + + * misc/bits/select2.h (__FD_ELT): Mark as extension. Add + parenthesis. + +2011-12-01 Andreas Schwab + + * sysdeps/unix/sysv/linux/futimes.c: Truncate time values when + falling back to utime. + +2011-11-30 Andreas Schwab + + * sysdeps/s390/fpu/libm-test-ulps: Relax cpow (2 + 3 i, 4 + 0 i) + expectations for float. + +2011-11-29 Andreas Schwab + + * locale/weight.h (findidx): Add parameter len. + * locale/weightwc.h (findidx): Likewise. + * posix/fnmatch_loop.c (FCT): Adjust caller. + * posix/regcomp.c (build_equiv_class): Likewise. + * posix/regex_internal.h (re_string_elem_size_at): Likewise. + * posix/regexec.c (check_node_accept_bytes): Likewise. + * string/strcoll_l.c (STRCOLL): Likewise. + * string/strxfrm_l.c (STRXFRM): Likewise. + +2011-11-17 Ulrich Drepper + + * Makefile.in: Remove CVSOPT handling. + * configure.in: Remove use of AC_REVISION. + * iconvdata/Makefile (distribute): No need to filter out CVS. + * scripts/list-sources.sh: Remove CVS, subversion and monotone + handling. + +2011-11-16 Andreas Schwab + + * sysdeps/i386/i686/multiarch/strcmp-ssse3.S + [USE_AS_STRCASECMP_L]: Fix argument offsets for non-PIC. + [USE_AS_STRNCASECMP_L]: Likewise. + (__strcasecmp_ssse3, __strncasecmp_ssse3): Handle + NO_TLS_DIRECT_SEG_REFS. + * sysdeps/i386/i686/multiarch/strcmp-sse4.S [USE_AS_STRCASECMP_L]: + Fix argument offsets for non-PIC. + [USE_AS_STRNCASECMP_L]: Likewise. + (__strcasecmp_sse4_2, __strncasecmp_sse4_2): Handle + NO_TLS_DIRECT_SEG_REFS. + +2011-11-15 Ulrich Drepper + + * locale/loadarchive.c (_nl_load_locale_from_archive): Open files with + O_CLOEXEC. + * locale/loadlocale.c (_nl_load_locale): Likewise. + +2011-11-15 Andreas Schwab + + * sysdeps/unix/sysv/linux/clock_gettime.c (SYSDEP_GETTIME_CPU) + [__ASSUME_POSIX_CPU_TIMERS > 0]: Assign to retval and break. + * sysdeps/unix/sysv/linux/x86_64/clock_gettime.c + (SYSCALL_GETTIME): Set errno on error. + + * sysdeps/unix/sysv/linux/check_pf.c (make_request): Properly + count references to noai6ai_cached. + +2011-11-15 Ulrich Drepper + + * time/getdate.c (__getdate_r): Set FD_CLOEXEC for given file. + + * sysdeps/unix/sysv/linux/readonly-area.c (__readonly_area): Set + FD_CLOEXEC for /proc/self/maps. + + * sysdeps/unix/sysv/linux/getsysstats.c (phys_pages_info): Set + FD_CLOEXEC for /proc/meminfo. + + * sysdeps/posix/getaddrinfo.c (gaiconf_init): Set FD_CLOEXEC for + gai.conf. + + * resolv/res_query.c (res_hostalias): Don't allow cancellation and set + FD_CLOEXEC for given file. + + * resolv/res_hconf.c (do_init): Set FD_CLOEXEC for host.conf. + + * resolv/gethnamaddr.c (_sethtent): Don't allow cancellation and set + FD_CLOEXEC for /etc/hosts. + (_gethtent): Likewise. + + * nss/nsswitch.c (nss_parse_file): Set FD_CLOEXEC. + + * nss/nss_files/files-netgrp.c (_nss_files_setnetgrent): Don't allow + cancellation and set FD_CLOEXEC for /etc/netgroup. + + * nss/nss_files/files-key.c (search): Don't allow cancellation when + reading /etc/publickey. + + * nss/nss_files/files-initgroups.c (_nss_files_initgroups_dyn): Don't + allow cancellation when reading /etc/group. + + * nss/nss_files/files-alias.c (internal_setent): Don't allow + cancellation. + (get_next_alias): Likewise for included file. Also set FD_CLOEXEC. + + * nss/nss_files/files-XXX.c (internal_setent): Don't allow cancellation + when using data file. + + * nis/nss-default.c (init): Set FD_CLOEXEC for /etc/default/nss. + + * nis/nis_file.c (read_nis_obj): Set FD_CLOEXEC. + (write_nis_obj): Use "c" and "e" in fopen. + + * misc/mntent_r.c (__setmntent): Also append e to fopen format. + + * misc/getusershell.c (initshells): Set FD_CLOEXEC for /etc/shells. + + * misc/getttyent.c (setttyent): Set FD_CLOEXEC. + + * misc/getpass.c (getpass): Set FD_CLOEXEC for /dev/tty. + + * intl/localealias.c (read_alias_file): Set FD_CLOEXEC for + locale.alias. + + * inet/ruserpass.c (ruserpass): Set FD_CLOEXEC for .netrc. + + * inet/rcmd.c (iruserfopen): Set FD_CLOEXEC for hosts.equiv. + + * iconv/gconv_conf.c (read_conf_file): Set FD_CLOEXEC for config file. + + * hesiod/hesiod.c (parse_config_file): Prevent cancellation in config + file parsing and set FD_CLOEXEC. + +2011-11-14 Ulrich Drepper + + * time/tzfile.c (__tzfile_read): Use "e" in fopen call. + +2011-11-14 Andreas Schwab + + * malloc/arena.c (arena_get2): Don't call reused_arena when + _int_new_arena failed. + +2011-11-14 Ulrich Drepper + + * sysdeps/i386/i686/multiarch/Makefile [subdir=string] + (sysdep_routines): Add strcasecmp_l-sse4 and strncase_l-sse4. + * sysdeps/i386/i686/multiarch/strcasecmp.S: Re-enable SSE4.2 code. + * sysdeps/i386/i686/multiarch/strcmp.S: Likewise. + * sysdeps/i386/i686/multiarch/strncase.S: Likewise. + * sysdeps/i386/i686/multiarch/strcmp-sse4.S: Change to allow reuse + to compile strcasecmp and strncasecmp. + * sysdeps/i386/i686/multiarch/strcasecmp_l-sse4.S: New file. + * sysdeps/i386/i686/multiarch/strncase_l-sse4.S: New file. + + * sysdeps/i386/i686/multiarch/strcmp-ssse3.S: Use L macro consistently. + +2011-11-13 Ulrich Drepper + + * sysdeps/i386/i686/multiarch/Makefile [subdir=string]: Add + locale-defines.sym to gen-as-const-headers. + (sysdep_routines): Add strcasecmp_l-c, strcasecmp-c, + strcasecmp_l-ssse3, strncase_l-c, strncase-c, and strncase_l-ssse3. + * sysdeps/i386/i686/multiarch/strcmp-ssse3.S: Change to allow reuse + to compile strcasecmp and strncasecmp. + * sysdeps/i386/i686/multiarch/strcmp.S: Allow to use for + strcasecmp_l and strncasecmp_l. + * sysdeps/i386/i686/multiarch/locale-defines.sym: New file. + * sysdeps/i386/i686/multiarch/strcasecmp-c.c: New file. + * sysdeps/i386/i686/multiarch/strcasecmp.S: New file. + * sysdeps/i386/i686/multiarch/strcasecmp_l-c.c: New file. + * sysdeps/i386/i686/multiarch/strcasecmp_l-ssse3.S: New file. + * sysdeps/i386/i686/multiarch/strcasecmp_l.S: New file. + * sysdeps/i386/i686/multiarch/strncase-c.c: New file. + * sysdeps/i386/i686/multiarch/strncase.S: New file. + * sysdeps/i386/i686/multiarch/strncase_l-c.c: New file. + * sysdeps/i386/i686/multiarch/strncase_l-ssse3.S: New file. + * sysdeps/i386/i686/multiarch/strncase_l.S: New file. + +2011-11-12 Ulrich Drepper + + * sysdeps/unix/clock_gettime.c (clock_gettime): No need to assign + result of SYSDEP_GETTIME_CPU to retval. + * sysdeps/unix/sysv/linux/clock_gettime.c (SYSDEP_GETTIME_CPU): Add + parameter list to macro. Remove trailing semicolon. Adjust users. + + * resolv/getaddrinfo_a.c (getaddrinfo_a): Avoid warning about unused + variable. + + * sysdeps/ieee754/ldbl-96/e_j0l.c (__ieee754_j0l): Avoid storing + mantissa words. + * sysdeps/ieee754/ldbl-96/e_j1l.c (__ieee754_j1l): Likewise. + + * sysdeps/ieee754/ldbl-96/e_hypotl.c (__ieee754_hypotl): Avoid warning + from unused variable. + + * sysdeps/generic/sysdep.h: Clean up, pretty print, use dwarf2.h for + DWARF definitions. + * sysdeps/generic/dwarf2.h: Don't define enums when using the file + for assembling. + + * elf/dl-iteratephdr.c [!SHARED] (__dl_iterate_phdr): Don't iterate + over namespaces. + + * sunrpc/rpc_prot.c (rejected): Fix case value. + + * sysdeps/unix/sysv/linux/internal_statvfs.c (INTERNAL_STATVFS): Use + unsigned long long int to avoid warnings in shift. + + * posix/regex_internal.c (re_string_reconstruct): Actually use result + of use of trans. + * posix/regex_internal.h (re_string_wchar_at): Remove temporary + variable tmp. + + * sysdeps/i386/i686/multiarch/wcscmp-c.c: Avoid warning. + * sysdeps/i386/i686/multiarch/wcslen-c.c: Likewise. + * sysdeps/i386/i686/multiarch/wmemcmp-c.c: Likewise. + + * nis/nis_table.c (nis_list): Use variable of correct type for + result of __follow_path call. + +2011-11-07 Adhemerval Zanella + + * sysdeps/powerpc/fpu/math_private.h: Using inline assembly version + of math functions ceil, trunc, floor, round, and sqrt, when + avaliable on the platform. + * sysdeps/powerpc/fpu/e_sqrt.c: Undefine __ieee754_sqrt to avoid + name clash. + * sysdeps/powerpc/fpu/e_sqrtf.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/e_sqrt.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/e_sqrtf.c: Likewise. + +2011-10-30 Marek Polacek + + * libio/wfileops.c (_IO_wfile_underflow_mmap): Remove unused variable. + * sysdeps/ieee754/dbl-64/mpsqrt.c (__mpsqrt): Likewise. + +2011-11-11 Roland McGrath + + * include/unistd.h: Fix __readlink return type. + Reported by Chris Metcalf . + +2011-11-11 Ulrich Drepper + + * stdlib/ucontext.h: Undo last change for makecontext. + +2011-11-11 Andreas Schwab + + * nss/db-Makefile ($(VAR_DB)/group.db): Fix typo in awk script. + + * misc/sys/cdefs.h (__REDIRECT_NTHNL): Define. + * setjmp/setjmp.h: Mark functions as non-leaf. + * setjmp/bits/setjmp2.h: Likewise. + * stdlib/ucontext.h: Likewise. + +2011-11-10 Andreas Schwab + + * malloc/arena.c (_int_new_arena): Don't increment narenas. + (reused_arena): Don't check arena limit. + (arena_get2): Atomically check arena limit. + +2011-11-08 Ulrich Drepper + + * locale/findlocale.c (_nl_find_locale): Use __strcasecmp_l. + * intl/localealias.c (strcasecmp): Define using __strcasecmp_l. + + * sysdeps/i386/i686/multiarch/strcmp-ssse3.S: Remove unnecessary + instructions. + +2011-11-07 Andreas Schwab + + * libio/genops.c (_IO_flush_all_lockp): Only register cleanup + handler when locking. + + * nss/nss_files/files-initgroups.c (_nss_files_initgroups_dyn): + Fix size of allocated buffer. + +2011-11-04 Andreas Schwab + + [BZ #10103] + * math/math.h [__NO_LONG_DOUBLE_MATH && !_LIBC]: Provide + declarations for long double functions. + * math/complex.h [__NO_LONG_DOUBLE_MATH && !_LIBC]: Likewise. + + * elf/sprof.c (load_shobj): Fix off-by-one when reading link name. + +2011-11-03 Andreas Schwab + + * nscd/nscd.c (main): Don't start AVC thread until credentials are + installed. + + * nss/makedb.c (set_file_creation_context): Do nothing if SELinux + is disabled. + +2011-11-02 Samuel Thibault + + * bits/ioctl-types.h (_IOT_sgttyb): Set number of chars to 4. + +2011-11-01 Andreas Schwab + + * include/alloca.h (stackinfo_alloca_round): Define. + (extend_alloca): Use it. + [_STACK_GROWS_UP]: Correct check for adjacent allocation. + * elf/dl-deps.c (_dl_map_object_deps): Don't round alloca size + here. + + * scripts/check-local-headers.sh: Ignore libaudit.h. + + * nscd/Makefile (extra-objs): Make recursively expanded. + +2011-11-01 Ulrich Drepper + + * sysdeps/x86_64/strcmp.S: Fix test for non-ASCII locales. + * sysdeps/x86_64/multiarch/strcmp-sse42.S: Likewise. + + * posix/tst-rfc3484.c: Add missing __free_in6ai dummy function. + * posix/tst-rfc3484-2.c: Likewise. + * posix/tst-rfc3484-3.c: Likewise. + + * sysdeps/unix/sysv/linux/bits/uio.h: Declare process_vm_readv and + process_vm_writev. + * sysdeps/unix/sysv/linux/syscalls.list: Add process_vm_readv and + process_vm_writev. + * sysdeps/unix/sysv/linux/Versions: Export process_vm_readv and + process_vm_writev from libc using GLIBC_2.15 version. + + * nscd/connections.c: Use kernel headers instead of . + +2011-10-31 Paul Pluzhnikov + + * elf/dl-deps.c (_dl_map_object_deps): Reuse alloca space to reduce + stack usage. + +2011-10-31 Ulrich Drepper + + [BZ #13367] + * nss/getent.c (initgroups_keys): Show error message in case no group + names are given. + + * include/ifaddrs.h: Declare __free_in6ai and __bump_nl_timestamp. + * inet/check_pf.c: Provide dummy versions of __free_in6ai and + __bump_nl_timestamp. + * nscd/connections (nscd_init): When host database is served open + netlink socket and request notification about configuration changes. + (main_loop_poll): Track netlink file descriptor and bump timestamp + in case data becomes available. + (main_loop_epoll): Likewise. + * nscd/nscd-client.h (DB_VERSION): Bump to 2. + (database_pers_head): Add extra_data fileds. + Declare __nscd_get_mapping and __nscd_get_nl_timestamp. + * nscd/nscd_gethst_r.c (__nscd_get_nl_timestamp): New function. + * nscd/nscd_helper.c (__nscd_get_mapping): Renamed from get_mapping. + Adjust caller. + * sysdeps/posix/getaddrinfo.c (getaddrinfo): Don't call free on + in6ai data, call __free_in6ai. + * sysdeps/unix/sysv/linux/Makefile [subdir=nscd] (sysdep-CFLAGS): + Add -DHAVE_NETLINK. + * sysdeps/unix/sysv/linux/check_pf.c: Major rewrite. Cache the + interface information. Reuse previous data if netlink timestamp + is not changed. + (__bump_nl_timestamp): New function. + (__free_in6ai): New function. + +2011-10-30 Ulrich Drepper + + * sysdeps/unix/sysv/linux/check_pf.c (make_request): Don't call + close_not_cancel_no_status here. + (__check_pf): Reorganize code a bit to not call close twice if OOM. + +2011-10-29 Ulrich Drepper + + [BZ #13276] + * malloc/malloc.c (munmap_chunk): Don't use assertion to check munmap + return value. + + * posix/sys/wait.h: Mark wait3 and wait4 with __THROWNL. + * libio/stdio.h: Mark sprintf, vsprintf snprintf, vsnprintf, vasprintf, + asprintf, __asprintf, obstack_printf, obstack_vprintf with __THROWNL. + +2011-07-03 Andreas Jaeger + + [BZ #10709] + * sysdeps/ieee754/dbl-64/s_sin.c (__sin): Fix incorrect rounding + of sin. Patch suggested by Paul Zimmermann . + * math/libm-test.inc (sin_test): Add test case. + +2011-10-29 Ulrich Drepper + + [BZ #13337] + * elf/sprof.c (load_shobj): Correctly NUL-terminate link name. + Patch by Thomas Jarosch . + + * elf/chroot_canon.c (chroot_canon): Cleanups. + + * elf/dl-lookup.c (_dl_setup_hash): Avoid warning. + + [BZ #13335] + * elf/chroot_canon.c (chroot_canon): Fix readlink call. + Patch by Thomas Jarosch . + + * string/test-strchr.c: Make usable for strchrnul testing. + * string/test-strchrnul.c: New file. + * string/Makefile (strop-tests): Add strchrnul. + + * po/it.po: Update from translation team. + * po/es.po: Likewise. + +2011-10-28 Ulrich Drepper + + * sysdeps/x86_64/multiarch/strstr.c (__m128i_strloadu_tolower): Take + the three constants needed as parameters. Drop the others. + (strcasestr_sse42): Load uclow, uchigh, and lcqword and pass to + __m128i_strloadu_tolower. + Create and initialize variable zero and use it in all the places + where _mm_setzero_si128 was used. + + * sysdeps/x86_64/fpu/multiarch/Makefile: Don't build brandred-avx.c, + doasin-avx.c, dosincos-avx.c, e_asin-avx.c, mpatan-avx.c, + mpatan2-avx.c, mpsqrt-avx.c, mptan-avx.c, sincos32-avx.c. + * sysdeps/x86_64/fpu/multiarch/e_asin.c: There are no _avx variants + anymore. + * sysdeps/x86_64/fpu/multiarch/e_atan2-avx.c: Don't redirect __mpatan2. + * sysdeps/x86_64/fpu/multiarch/s_atan-avx.c: Don't redirect __mpatan. + * sysdeps/x86_64/fpu/multiarch/s_sin-avx.c: Don't redirect __branred, + __docos, __dubsin, __mpcos, __mpcos1, __mpsin, __mpsin1. + * sysdeps/x86_64/fpu/multiarch/s_tan-avx.c: Don't redirect __branred, + __mpranred, __mptan. + * sysdeps/x86_64/fpu/multiarch/brandred-avx.c: Removed. + * sysdeps/x86_64/fpu/multiarch/doasin-avx.c: Removed. + * sysdeps/x86_64/fpu/multiarch/dosincos-avx.c: Removed. + * sysdeps/x86_64/fpu/multiarch/e_asin-avx.c: Removed. + * sysdeps/x86_64/fpu/multiarch/mpatan-avx.c: Removed. + * sysdeps/x86_64/fpu/multiarch/mpatan2-avx.c: Removed. + * sysdeps/x86_64/fpu/multiarch/mpsqrt-avx.c: Removed. + * sysdeps/x86_64/fpu/multiarch/mptan-avx.c: Removed. + * sysdeps/x86_64/fpu/multiarch/sincos32-avx.c: Removed. + +2011-10-28 Andreas Schwab + + * sysdeps/i386/i686/multiarch/strnlen-c.c (libc_hidden_def): Only + redefine if SHARED. + * sysdeps/i386/i686/multiarch/wcscmp-c.c (libc_hidden_def): Likewise. + + * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Move + wide char related routines to wcsmbs subdir. + +2011-10-27 Andreas Schwab + + [BZ #13344] + * misc/sys/cdefs.h (__THROWNL): Define. + * posix/unistd.h: Use __THREADNL instead of __THREAD + for memory synchronization functions. + +2011-10-26 Roland McGrath + + [BZ #13349] + * libio/Versions (GLIBC_2.0): Remove open_obstack_stream, which + doesn't exist. + * manual/stdio.texi (Obstack Streams): Node removed. + +2011-10-26 Andreas Schwab + + * sysdeps/ieee754/flt-32/e_j0f.c: Fix use of math_force_eval. + * sysdeps/ieee754/dbl-64/s_round.c: Likewise. + * sysdeps/ieee754/flt-32/s_roundf.c: Likewise. + + * math/math_private.h (math_force_eval): Allow non-addressable + arguments. + * sysdeps/i386/fpu/math_private.h (math_force_eval): Likewise. + +2011-10-25 Ulrich Drepper + + * sysdeps/ieee754/dbl-64/e_rem_pio2.c: Comment everything out, the + file is not needed. + + * sysdeps/x86_64/fpu/multiarch/e_asin.c: Support AVX variants. + * sysdeps/x86_64/fpu/multiarch/e_atan2.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/e_exp.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/e_log.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/s_atan.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/s_sin.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/s_tan.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/Makefile: Fix some CFLAGS-* variables. + Add AVX variants. + * sysdeps/x86_64/fpu/multiarch/brandred-avx.c: New file. + * sysdeps/x86_64/fpu/multiarch/doasin-avx.c: New file. + * sysdeps/x86_64/fpu/multiarch/dosincos-avx.c: New file. + * sysdeps/x86_64/fpu/multiarch/e_asin-avx.c: New file. + * sysdeps/x86_64/fpu/multiarch/e_atan2-avx.c: New file. + * sysdeps/x86_64/fpu/multiarch/e_exp-avx.c: New file. + * sysdeps/x86_64/fpu/multiarch/e_log-avx.c: New file. + * sysdeps/x86_64/fpu/multiarch/mpa-avx.c: New file. + * sysdeps/x86_64/fpu/multiarch/mpatan-avx.c: New file. + * sysdeps/x86_64/fpu/multiarch/mpatan2-avx.c: New file. + * sysdeps/x86_64/fpu/multiarch/mpexp-avx.c: New file. + * sysdeps/x86_64/fpu/multiarch/mplog-avx.c: New file. + * sysdeps/x86_64/fpu/multiarch/mpsqrt-avx.c: New file. + * sysdeps/x86_64/fpu/multiarch/mptan-avx.c: New file. + * sysdeps/x86_64/fpu/multiarch/s_atan-avx.c: New file. + * sysdeps/x86_64/fpu/multiarch/s_sin-avx.c: New file. + * sysdeps/x86_64/fpu/multiarch/s_tan-avx.c: New file. + * sysdeps/x86_64/fpu/multiarch/sincos32-avx.c: New file. + * sysdeps/x86_64/fpu/multiarch/slowexp-avx.c: New file. + + * sysdeps/x86_64/multiarch/init-arch.h: Make bit_* macros available + all the time. Define bit_AVX. Define HAS_* macros using bit_* macros. + + * sysdeps/x86_64/multiarch/strcmp-sse42.S: Move common code to earlier + place. Use VEX encoding when compiling for AVX. + +2011-10-25 Andreas Schwab + + * wcsmbs/wcscmp.c (WCSCMP): Compare as wchar_t, not wint_t. + * wcsmbs/wmemcmp.c (WMEMCMP): Likewise. + + * string/test-strchr.c (do_test): Don't generate NUL bytes. + +2011-10-25 Ulrich Drepper + + * sysdeps/ieee754/dbl-64/e_atanh.c: Use math_force_eval instead of a + useless if() expression. + * sysdeps/ieee754/dbl-64/e_j0.c: Likewise. + * sysdeps/ieee754/dbl-64/s_ceil.c: Likewise. + * sysdeps/ieee754/dbl-64/s_expm1.c: Likewise. + * sysdeps/ieee754/dbl-64/s_floor.c: Likewise. + * sysdeps/ieee754/dbl-64/s_log1p.c: Likewise. + * sysdeps/ieee754/dbl-64/s_round.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_ceil.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_floor.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_round.c: Likewise. + * sysdeps/ieee754/flt-32/e_atanhf.c: Likewise. + * sysdeps/ieee754/flt-32/e_j0f.c: Likewise. + * sysdeps/ieee754/flt-32/s_ceilf.c: Likewise. + * sysdeps/ieee754/flt-32/s_expm1f.c: Likewise. + * sysdeps/ieee754/flt-32/s_floorf.c: Likewise. + * sysdeps/ieee754/flt-32/s_log1pf.c: Likewise. + * sysdeps/ieee754/flt-32/s_roundf.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_atanhl.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_j0l.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_roundl.c: Likewise. + + * sysdeps/x86_64/fpu/math_private.h: Use VEX encoding when possible. + +2011-10-25 Andreas Schwab + + * elf/dl-deps.c (_dl_map_object_deps): Remove always true + condition. + * elf/dl-fini.c (_dl_sort_fini): Likewise. + +2011-10-25 Ulrich Drepper + + * sysdeps/ieee754/dbl-64/branred.c: Move FMA4 code into separate + .text section. Avoid duplicate constants. + * sysdeps/ieee754/dbl-64/doasin.c: Likewise. + * sysdeps/ieee754/dbl-64/dosincos.c: Likewise. + * sysdeps/ieee754/dbl-64/e_asin.c: Likewise. + * sysdeps/ieee754/dbl-64/e_atan2.c: Likewise. + * sysdeps/ieee754/dbl-64/e_exp.c: Likewise. + * sysdeps/ieee754/dbl-64/e_log.c: Likewise. + * sysdeps/ieee754/dbl-64/e_pow.c: Likewise. + * sysdeps/ieee754/dbl-64/halfulp.c: Likewise. + * sysdeps/ieee754/dbl-64/mpa.c: Likewise. + * sysdeps/ieee754/dbl-64/mpa.h: Likewise. + * sysdeps/ieee754/dbl-64/mpatan.c: Likewise. + * sysdeps/ieee754/dbl-64/mpatan.h: Likewise. + * sysdeps/ieee754/dbl-64/mpatan2.c: Likewise. + * sysdeps/ieee754/dbl-64/mpexp.c: Likewise. + * sysdeps/ieee754/dbl-64/mpexp.h: Likewise. + * sysdeps/ieee754/dbl-64/mpsqrt.c: Likewise. + * sysdeps/ieee754/dbl-64/mpsqrt.h: Likewise. + * sysdeps/ieee754/dbl-64/mptan.c: Likewise. + * sysdeps/ieee754/dbl-64/s_sin.c: Likewise. + * sysdeps/ieee754/dbl-64/s_tan.c: Likewise. + * sysdeps/ieee754/dbl-64/sincos32.c: Likewise. + * sysdeps/ieee754/dbl-64/slowexp.c: Likewise. + * sysdeps/ieee754/dbl-64/slowpow.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/brandred-fma4.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/doasin-fma4.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/dosincos-fma4.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/e_asin-fma4.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/e_atan2-fma4.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/e_exp-fma4.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/e_log-fma4.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/e_pow-fma4.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/halfulp-fma4.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/mpa-fma4.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/mpatan-fma4.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/mpatan2-fma4.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/mpexp-fma4.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/mplog-fma4.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/mpsqrt-fma4.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/mptan-fma4.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/s_atan-fma4.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/s_sin-fma4.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/s_tan-fma4.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/sincos32-fma4.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/slowexp-fma4.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/slowpow-fma4.c: Likewise. + +2011-10-24 Ulrich Drepper + + * sysdeps/x86_64/dla.h: Move to ... + * sysdeps/x86_64/fpu/dla.h: ...here. + (DLA_FMS): Some compilers fail to inline __builtin_fma in some + situations. Use __builtin_fma only for gcc 4.6 and up. + + * config.make.in: Add have-mfma4 entry. + * configure.in: Substitute libc_cv_cc_fma4. + * math/Makefile (dbl-only-routines): Add sincostab. + * sysdeps/ieee754/dbl-64/dosincos.c: Don't include sincos.tbl. + Use __sincostab not sincos. + * sysdeps/ieee754/dbl-64/e_asin.c: Don't define aliases when function + name is a macro. + * sysdeps/ieee754/dbl-64/e_exp.c: Likewise. + * sysdeps/ieee754/dbl-64/e_log.c: Likewise. + * sysdeps/ieee754/dbl-64/e_pow.c: Likewise. + * sysdeps/ieee754/dbl-64/e_atan2.c: Likewise. Define singArctan2 + using __copysign. + * sysdeps/ieee754/dbl-64/mpa.c: Don't export __acr. Don't define + __cr and __cpymn. Define __cpy unless NO___CPY is defined. Define + norm, denorm, and __mp_dbl unless NO___MP_DBL is defined. + * sysdeps/ieee754/dbl-64/mpa.h: Don't declare __acr, __cr, __cpymn, + and __inv. + * sysdeps/ieee754/dbl-64/mpsqrt.c: Make fastiroot static. + * sysdeps/ieee754/dbl-64/s_atan.c: Define __signArctan using + __copysign. + * sysdeps/ieee754/dbl-64/s_sin.c: Use __sincostab not sincos. Don't + define aliases when function name is a macro. + * sysdeps/ieee754/dbl-64/sincostab.c: Renamed from + sysdeps/ieee754/dbl-64/sincos.tbl. + * sysdeps/x86_64/fpu/multiarch/Makefile: Add entries to build + fma4-enabled routines. + * sysdeps/x86_64/fpu/multiarch/brandred-fma4.c: New file. + * sysdeps/x86_64/fpu/multiarch/doasin-fma4.c: New file. + * sysdeps/x86_64/fpu/multiarch/dosincos-fma4.c: New file. + * sysdeps/x86_64/fpu/multiarch/e_asin-fma4.c: New file. + * sysdeps/x86_64/fpu/multiarch/e_asin.c: New file. + * sysdeps/x86_64/fpu/multiarch/e_atan2-fma4.c: New file. + * sysdeps/x86_64/fpu/multiarch/e_atan2.c: New file. + * sysdeps/x86_64/fpu/multiarch/e_exp-fma4.c: New file. + * sysdeps/x86_64/fpu/multiarch/e_exp.c: New file. + * sysdeps/x86_64/fpu/multiarch/e_log-fma4.c: New file. + * sysdeps/x86_64/fpu/multiarch/e_log.c: New file. + * sysdeps/x86_64/fpu/multiarch/e_pow-fma4.c: New file. + * sysdeps/x86_64/fpu/multiarch/e_pow.c: New file. + * sysdeps/x86_64/fpu/multiarch/halfulp-fma4.c: New file. + * sysdeps/x86_64/fpu/multiarch/mpa-fma4.c: New file. + * sysdeps/x86_64/fpu/multiarch/mpatan-fma4.c: New file. + * sysdeps/x86_64/fpu/multiarch/mpatan2-fma4.c: New file. + * sysdeps/x86_64/fpu/multiarch/mpexp-fma4.c: New file. + * sysdeps/x86_64/fpu/multiarch/mplog-fma4.c: New file. + * sysdeps/x86_64/fpu/multiarch/mpsqrt-fma4.c: New file. + * sysdeps/x86_64/fpu/multiarch/mptan-fma4.c: New file. + * sysdeps/x86_64/fpu/multiarch/s_atan-fma4.c: New file. + * sysdeps/x86_64/fpu/multiarch/s_atan.c: New file. + * sysdeps/x86_64/fpu/multiarch/s_sin-fma4.c: New file. + * sysdeps/x86_64/fpu/multiarch/s_sin.c: New file. + * sysdeps/x86_64/fpu/multiarch/s_tan-fma4.c: New file. + * sysdeps/x86_64/fpu/multiarch/s_tan.c: New file. + * sysdeps/x86_64/fpu/multiarch/sincos32-fma4.c: New file. + * sysdeps/x86_64/fpu/multiarch/slowexp-fma4.c: New file. + * sysdeps/x86_64/fpu/multiarch/slowpow-fma4.c: New file. + + * sysdeps/ieee754/dbl-64/doasin.c: Adjust for DLA_FMA -> DLA_FMS + rename. + * sysdeps/ieee754/dbl-64/dosincos.c: Likewise. + * sysdeps/ieee754/dbl-64/dosincos.c: Likewise. + * sysdeps/ieee754/dbl-64/e_atan2.c: Likewise. + * sysdeps/ieee754/dbl-64/e_log.c: Likewise. + * sysdeps/ieee754/dbl-64/e_pow.c: Likewise. + * sysdeps/ieee754/dbl-64/halfulp.c: Likewise. + * sysdeps/ieee754/dbl-64/s_atan.c: Likewise. + * sysdeps/ieee754/dbl-64/s_tan.c: Likewise. + +2011-10-24 Andreas Schwab + + * wcsmbs/wcslen.c: Don't define WCSLEN, reverse logic. + +2011-10-23 Ulrich Drepper + + * sysdeps/ieee754/dbl-64/wordsize-64/s_remquo.c: New file. + + * sysdeps/ieee754/dbl-64/e_fmod.c (__ieee754_fmod): Add some branch + prediction. + * sysdeps/ieee754/dbl-64/wordsize-64/e_fmod.c: New file. + + * string/strnlen.c: Don't define STRNLEN, reverse logic. + Remove unused variable magic_bits. + * sysdeps/i386/i686/multiarch/rtld-strnlen.c: New file. + + * string/strnlen.c: Define and use STRNLEN macro. + * sysdeps/i386/i686/multiarch/Makefile [string] (sysdep_routines): + Add strnlen-sse2, strnlen-c, wcslen-sse2, and wcslen-c. + * sysdeps/i386/i686/multiarch/strlen-sse2.S: Add support for strnlen. + * wcsmbs/wcslen.c: Define and use WCSLEN. + * sysdeps/i386/i686/multiarch/strnlen-c.c: New file. + * sysdeps/i386/i686/multiarch/strnlen-sse2.S: New file. + * sysdeps/i386/i686/multiarch/strnlen.S: New file. + * sysdeps/i386/i686/multiarch/wcslen-c.c: New file. + * sysdeps/i386/i686/multiarch/wcslen-sse2.S: New file. + * sysdeps/i386/i686/multiarch/wcslen.S: New file. + Patch by Liubov Dmitrieva . + +2011-10-20 Liubov Dmitrieva + + * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add + strnlen-sse2-no-bsf. + Rename strlen-no-bsf to strlen-sse2-no-bsf. + * sysdeps/x86_64/multiarch/strlen-no-bsf.S: Rename to + * sysdeps/x86_64/multiarch/strlen-sse2-no-bsf.S: + Add strnlen support. + (USE_AS_STRNLEN): New macro. + * sysdeps/x86_64/multiarch/strnlen-sse2-no-bsf.S: New file. + * sysdeps/x86_64/multiarch/strcat-ssse3.S: Update. + Rename strlen-no-bsf.S to strlen-sse2-no-bsf.S + * sysdeps/x86_64/wcslen.S: New file. + +2011-10-20 Michael Zolotukhin + + * sysdeps/i386/i686/multiarch/memcpy-ssse3.S: Update. + XMM-moves are used for copying on small sizes. + +2011-10-19 Liubov Dmitrieva + + * wcsmbs/Makefile (strop-tests): Add wcschr. + * wcsmbs/test-wcschr.c: New file. + * string/test-strchr.c: Update. + Add wcschr support. + (WIDE): New macro. + +2011-10-18 Liubov Dmitrieva + + * wcsmbs/Makefile (strop-tests): Add wcslen. + * wcsmbs/test-wcslen.c: New file. + * string/test-strlen.c: Update. + Add wcslen support. + (WIDE): New macro. + +2011-10-23 Ulrich Drepper + + * po/it.po: Update from translation team. + +2011-09-22 Liubov Dmitrieva + + * sysdeps/x86_64/wcscmp.S: Update. + Fix wrong comparison semantics. + wcscmp shall use signed comparison not unsigned. + Don't use substraction to avoid overflow bug. + * sysdeps/i386/i686/multiarch/wcscmp-sse2.S: Likewise. + * wcsmbc/wcscmp.c: Likewise. + * string/test-strcmp.c: Likewise. + Add new tests to check cases with negative values. + +2011-10-23 Ulrich Drepper + + * sysdeps/ieee754/dbl-64/dla.h: Move DLA_FMA definition to... + * sysdeps/x86_64/dla.h: ...here. New file. + * sysdeps/ieee754/dbl-64/doasin.c: Use not "dla.h". + * sysdeps/ieee754/dbl-64/dosincos.c: Likewise. + * sysdeps/ieee754/dbl-64/e_atan2.c: Likewise. + * sysdeps/ieee754/dbl-64/e_log.c: Likewise. + * sysdeps/ieee754/dbl-64/e_pow.c: Likewise. + * sysdeps/ieee754/dbl-64/e_sqrt.c: Likewise. + * sysdeps/ieee754/dbl-64/halfulp.c: Likewise. + * sysdeps/ieee754/dbl-64/s_atan.c: Likewise. + * sysdeps/ieee754/dbl-64/s_tan.c: Likewise. + +2011-10-23 Andreas Schwab + + * sysdeps/ieee754/ldbl-128ibm/e_jnl.c: Add __jnl_finite and + __ynl_finite aliases. + +2011-10-22 Ulrich Drepper + + * sysdeps/x86_64/fpu/libm-test-ulps: Update. + + * sysdeps/ieee754/dbl-64/dla.h: When compiling with FMA4 support + define DLA_FMA. + [DLA_FMA] (EMULV): Use DLA_FMA. + [DLA_FMA] (MUL12): Use EMULV. + * sysdeps/ieee754/dbl-64/doasin.c [DLA_FMA]: Don't define variables + that are not needed. + * sysdeps/ieee754/dbl-64/dosincos.c: Likewise. + * sysdeps/ieee754/dbl-64/e_atan2.c: Likewise. + * sysdeps/ieee754/dbl-64/e_log.c: Likewise. + * sysdeps/ieee754/dbl-64/e_pow.c: Likewise. + * sysdeps/ieee754/dbl-64/halfulp.c: Likewise. + * sysdeps/ieee754/dbl-64/s_atan.c: Likewise. + * sysdeps/ieee754/dbl-64/s_tan.c: Likewise. + +2011-10-22 Andreas Schwab + + * math/s_nan.c: Undef __nan. + * math/s_nanf.c: Undef __nanf. + * math/s_nanl.c: Undef __nanl. + * sysdeps/ieee754/ldbl-128ibm/s_atanl.c: Include before + "math_private.h". + +2011-10-22 Ulrich Drepper + + * math/s_catan.c: Add branch predictions. + * math/s_catanf.c: Likewise. + * math/s_catanh.c: Likewise. + * math/s_catanhf.c: Likewise. + * math/s_catanhl.c: Likewise. + * math/s_catanl.c: Likewise. + * math/s_cexp.c: Likewise. + * math/s_cexpf.c: Likewise. + * math/s_cexpl.c: Likewise. + * math/s_clog.c: Likewise. + * math/s_clog10.c: Likewise. + * math/s_clog10f.c: Likewise. + * math/s_clog10l.c: Likewise. + * math/s_clogf.c: Likewise. + * math/s_clogl.c: Likewise. + * math/s_csqrt.c: Likewise. + * math/s_csqrtf.c: Likewise. + * math/s_csqrtl.c: Likewise. + * math/s_ctanf.c: Likewise. + * math/s_ctanh.c: Likewise. + * math/s_ctanhf.c: Likewise. + * math/s_ctanhl.c: Likewise. + * math/s_ctanl.c: Likewise. + + * math/math_private.h: Define __nan, __nanf, __nanl. + * math/s_cacosh.c: Include . + * math/s_cacoshl.c: Likewise. + * math/s_casinh.c: Likewise. + * math/s_casinhf.c: Likewise. + * math/s_casinhl.c: Likewise. + * math/s_ccos.c: Rely entire on ccosh. + * math/s_ccosf.c: Rely entire on ccoshf. + * math/s_ccosl.c: Rely entirely on ccoshl. + * math/s_ccosh.c: Add branch predicion helpers. Add branch prediction. + Remove tests for FE_INVALID. + * math/s_ccoshf.c: Likewise. + * math/s_ccoshl.c: Likewise. + * math/s_csin.c: Likewise. + * math/s_csinf.c: Likewise. + * math/s_csinh.c Likewise. + * math/s_csinhf.c: Likewise. + * math/s_csinhl.c: Likewise. + * math/s_csinl.c: Likewise. + * math/s_ctan.c: Likewise. + * sysdeps/ieee754/dbl-64/e_acosh.c: Use __ieee754_sqrt. + * sysdeps/ieee754/flt-32/e_acoshf.c: Use __ieee754_sqrtf. + * sysdeps/ieee754/ldbl-96/e_acoshl.c: Use __ieee754_sqrtl. + +2011-10-21 Ulrich Drepper + + * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features): Fix + compilation problems. + + * sysdeps/ieee754/dbl-64/e_log.c (__ieee754_log): Add a few more + __builtin_expect. + +2011-10-20 Ulrich Drepper + + * sysdeps/i386/configure.in: Test for -mfma4 option. + * config.h.in: Add HAVE_FMA4_SUPPORT entry. + * sysdeps/x86_64/multiarch/init-arch.h: Define HAS_FMA4 and + COMMON_CPUID_INDEX_80000001. + * sysdeps/x86_64/multiarch/init-arch.c: Read 80000001 leaf for AMD. + * sysdeps/x86_64/fpu/multiarch/s_fma.c: Test for FMA4 support and + use it if FMA3 is not supported. + * sysdeps/x86_64/fpu/multiarch/s_fmaf.c: Likewise. + + * sysdeps/x86_64/multiarch/s_fma.c: Moved to ../fpu/multiarch. + * sysdeps/x86_64/multiarch/s_fmaf.c: Likewise. + +2011-10-20 Andreas Schwab + + [BZ #12892] + * elf/dl-fini.c (_dl_sort_fini): Ignore relocation dependency if + it would create a cycle with a link time dependency. + +2011-10-19 Ulrich Drepper + + * sysdeps/x86_64/multiarch/rawmemchr.S: Small optimization to safe an + instruction. + * string/Makefile (strop-tests): Add rawmemchr. + * string/test-rawmemchr.c: New file. + + * sysdeps/x86_64/multiarch/init-arch.h: Define bit_AVX and index_AVX. + * sysdeps/x86_64/multiarch/strcmp-sse42.S: New file. Split out from... + * sysdeps/x86_64/multiarch/strcmp.S: ...here. Include strcmp-sse42.S + when compiling str{,n}casecmp and when AVX is available. Hook up + new optimized code in initializers. + +2011-10-19 Andreas Schwab + + * sysdeps/x86_64/fpu/math_private.h (libc_feupdateenv): Use + __feraiseexcept instead of feraiseexcept. + +2011-10-18 Ulrich Drepper + + * math/math_private.h: Define defaults for libc_fetestexcept and + libc_feupdateenv. + * sysdeps/ieee754/dbl-64/s_fma.c: Use libc_fe* interfaces. + * sysdeps/ieee754/dbl-64/s_fmaf.c: Likewise. + * sysdeps/ieee754/flt-32/e_exp2f.c: Likewise. + * sysdeps/ieee754/flt-32/e_expf.c: Likewise. + * sysdeps/ieee754/flt-32/s_nearbyintf.c: Likewise. + * sysdeps/x86_64/fpu/math_private.h: Define special versions of + libc_fetestexcept and libc_feupdateenv. + + * math/math_private.h: Define defaults for libc_feholdexcept_setround, + libc_feholdexcept_setroundf, libc_feholdexcept_setroundl. + * sysdeps/ieee754/dbl-64/e_exp2.c: Use libc_feholdexcept_setround. + * sysdeps/x86_64/fpu/math_private.h: Define special version of + libc_feholdexcept_setround. + + * sysdeps/x86_64/fpu/multiarch/Makefile [math] (libm-sysdep-routines): + Add s_nearbyint-c and s_nearbyintf-c. + * sysdeps/x86_64/fpu/bits/mathinline.h: Define nearbyint and + nearbyintf inlines. + * sysdeps/x86_64/fpu/multiarch/s_nearbyint-c.c: New file. + * sysdeps/x86_64/fpu/multiarch/s_nearbyint.S: New file. + * sysdeps/x86_64/fpu/multiarch/s_nearbyintf-c.c: New file. + * sysdeps/x86_64/fpu/multiarch/s_nearbyintf.S: New file. + + * math/math_private.h: Define defaults for libc_fegetround, + libc_fegetroundf, libc_fegetroundl, libc_fesetround, libc_fesetroundf, + libc_fesetroundl, libc_feholdexcept, libc_feholdexceptf, + libc_feholdexceptl, libc_fesetenv, libc_fesetenvf, libc_fesetenvl. + * sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c: Use + libc_feholdexcept, libc_fesetround, libc_fesetenv instead of the + standard functions. + * sysdeps/ieee754/dbl-64/e_exp2.c: Likewise. + Remove comments and hacks for old compiler versions. + * sysdeps/x86_64/fpu/math_private.h: Define special versions of + libc_fegetround, libc_fesetround, libc_feholdexcept, and + libc_feholdexceptl. + +2011-10-18 Andreas Schwab + + * sysdeps/x86_64/fpu/bits/fenv.h: Add C linkage markers. + (__feraiseexcept_renamed): Add __NTH. + (feraiseexcept): Add __NTH. Rename local variables to fix + namespace violations. + +2011-10-17 Ulrich Drepper + + * sysdeps/ieee754/dbl-64/e_exp2.c (__ieee754_exp2): Small optimization. + + * sysdeps/ieee754/dbl-64/wordsize-64/s_frexp.c: New file. + + * sysdeps/x86_64/fpu/math_private.h: Relax asm requirements for + recently added interfaces. + * sysdeps/x86_64/fpu/bits/mathinline.h: Likewise. + + * sysdeps/x86_64/fpu/math_private.h: Add some parenthesis to be safe + about macro parameter expansion. + + * sysdeps/x86_64/fpu/bits/mathinline.h: Don't define inlines if + __NO_MATH_INLINES is defined. Cleanups. + + * sysdeps/x86_64/fpu/math_private.h: Define __rint, __rintf, __floor, + and __floorf is target has SSE4.1. + * sysdeps/x86_64/fpu/multiarch/s_floor-c.c: Undef first. + * sysdeps/x86_64/fpu/multiarch/s_floorf-c.: Likewise. + * sysdeps/x86_64/fpu/multiarch/s_rint-c.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/s_rintf-c.c: Likewise. + + * sysdeps/x86_64/fpu/bits/mathinline.h (floor): Use correct function + name. + (floorf): Likewise. + + * nscd/netgroupcache.c (addgetnetgrentX): Fix #ifdef nesting. + +2011-10-17 Andreas Schwab + + * misc/sys/cdefs.h: Fix last change. + + * grp/initgroups.c (internal_getgrouplist): Fix initgroups + database lookup. + +2011-10-16 Ulrich Drepper + + * misc/sys/cdefs.h: Use leaf function attribute in __THROW. + + * sysdeps/ieee754/dbl-64/s_ceil.c: Avoid alias renamed. + * sysdeps/ieee754/dbl-64/s_floor.c: Likewise. + * sysdeps/ieee754/dbl-64/s_rint.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_ceil.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_floor.c: Likewise. + * sysdeps/ieee754/dbl-64/wordsize-64/s_rint.c: Likewise. + * sysdeps/ieee754/flt-32/s_ceilf.c: Likewise. + * sysdeps/ieee754/flt-32/s_floorf.c: Likewise. + * sysdeps/ieee754/flt-32/s_rintf.c: Likewise. + * sysdeps/x86_64/fpu/multiarch/Makefile: New file. + * sysdeps/x86_64/fpu/multiarch/s_ceil-c.c: New file. + * sysdeps/x86_64/fpu/multiarch/s_ceil.S: New file. + * sysdeps/x86_64/fpu/multiarch/s_ceilf-c.c: New file. + * sysdeps/x86_64/fpu/multiarch/s_ceilf.S: New file. + * sysdeps/x86_64/fpu/multiarch/s_floor-c.c: New file. + * sysdeps/x86_64/fpu/multiarch/s_floor.S: New file. + * sysdeps/x86_64/fpu/multiarch/s_floorf-c.c: New file. + * sysdeps/x86_64/fpu/multiarch/s_floorf.S: New file. + * sysdeps/x86_64/fpu/multiarch/s_rint-c.c: New file. + * sysdeps/x86_64/fpu/multiarch/s_rint.S: New file. + * sysdeps/x86_64/fpu/multiarch/s_rintf-c.c: New file. + * sysdeps/x86_64/fpu/multiarch/s_rintf.S: New file. + + * sysdeps/x86_64/fpu/bits/mathinline.h: Add inlines for rint, rintf, + ceil, ceilf, floor, floorf. + + * elf/do-rel.h (elf_dynamic_do_Rel): Work around linker problem. + Perform IRELATIVE relocations last. + + * elf/do-rel.h: Add another parameter nrelative, replacing the + local variable with the same name. Change name of the function + to end in Rel or Rela (uppercase). + * elf/dynamic-link.h (_ELF_DYNAMIC_DO_RELOC): Add new element + nrelative to ranges. Only nonzero for DT_REL/DT_RELA. Pass to the + elf_dynamic_do_##reloc function. + +2011-10-15 Ulrich Drepper + + * sysdeps/i386/i686/fpu/e_log.S: No need for the fyl2xp1 use, fyl2x + is sufficient, at least on modern CPUs. + + * sysdeps/ieee754/dbl-64/wordsize-64/s_floor.c: New file. + + * sysdeps/ieee754/dbl-64/e_cosh.c: Cleanup. + * sysdeps/ieee754/dbl-64/wordsize-64/e_cosh.c: New file. + + * math/Versions [libm] (GLIBC_2.15): Add __exp_finite, __expf_finite, + __expl_finite. + * math/bits/math-finite.h: Add entries for exp. + * math/e_expl.c: Add __*_finite alias. + * sysdeps/i386/fpu/e_exp.S: Likewise. + * sysdeps/i386/fpu/e_expf.S: Likewise. + * sysdeps/i386/fpu/e_expl.c: Likewise. + * sysdeps/ieee754/dbl-64/e_exp.c: Likewise. + * sysdeps/ieee754/flt-32/e_expf.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_expl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_expl.c: Likewise. + * sysdeps/ieee754/dbl-64/w_exp.c: Complete rewrite. + * sysdeps/ieee754/flt-32/w_expf.c: Likewise. + * sysdeps/ieee754/ldbl-96/w_expl.c: Likewise. + + * sysdeps/i386/i686/fpu/e_logf.S: No need for the fyl2xp1 use, fyl2x + is sufficient, at least on modern CPUs. + + * ctype/ctype-info.c (__ctype_init): Define. + * include/ctype.h (__ctype_init): Declare. + (__ctype_b_loc): The variable is always initialized. + (__ctype_toupper_loc): Likewise. + (__ctype_tolower_loc): Likewise. + * ctype/Versions: Export __ctype_init for GLIBC_PRIVATE. + * sysdeps/unix/sysv/linux/init-first.c (_init): Call __ctype_init. + +2011-10-15 Andreas Schwab + + * wcsmbs/wmemcmp.c (WMEMCMP): Define. + + * configure.in: Also look in $cxxmachine/include for C++ system + headers. + +2011-09-27 Liubov Dmitrieva + + * sysdeps/x86_64/multiarch/Makefile: (sysdep_routines): Add + memcmp-ssse3 wmemcmp-sse4 wmemcmp-ssse3 wmemcmp-c + * sysdeps/x86_64/multiarch/memcmp-ssse3: New file. + * sysdeps/x86_64/multiarch/memcmp.S: Update. Add __memcmp_ssse3. + * sysdeps/x86_64/multiarch/memcmp-sse4.S: Update. + (USE_AS_WMEMCMP): New macro. + Fixing indents. + * sysdeps/x86_64/multiarch/wmemcmp.S: New file. + * sysdeps/x86_64/multiarch/wmemcmp-ssse3.S: New file. + * sysdeps/x86_64/multiarch/wmemcmp-sse4.S: New file. + * sysdeps/x86_64/multiarch/wmemcmp-c.S: New file. + * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Add + wmemcmp-ssse3 wmemcmp-sse4 wmemcmp-c + * sysdeps/i386/i686/multiarch/wmemcmp.S: New file. + * sysdeps/i386/i686/multiarch/wmemcmp-c.c: New file. + * sysdeps/i386/i686/multiarch/wmemcmp-ssse3.S: New file. + * sysdeps/i386/i686/multiarch/wmemcmp-sse4.S: New file. + * sysdeps/i386/i686/multiarch/memcmp-sse4.S: Update. + (USE_AS_WMEMCMP): New macro. + * sysdeps/i386/i686/multiarch/memcmp-ssse3: Likewise. + * sysdeps/string/test-memcmp.c: Update. + Fix simple_wmemcmp. + Add new tests. + * wcsmbs/wmemcmp.c: Update. + (WMEMCMP): New macro. + Fix overflow bug. + +2011-10-12 Andreas Jaeger + + [BZ #13268] + * math/bits/mathcalls.h: Mark argument 2 of modf as non-null. + +2011-10-15 Ulrich Drepper + + * libio/iofwide.c (do_length): Avoid warning. + + * ctype/ctype.h (__isctype_f): Add missing __THROW. + +2011-10-14 Ulrich Drepper + + * elf/pldd-xx.c (find_maps): Remove leftover debug message. + + * sysdeps/i386/fpu/e_log.S: Add real definition of __log_finite. + * sysdeps/i386/fpu/e_logf.S: Add real definition of __logf_finite. + * sysdeps/i386/fpu/e_logl.S: Add real definition of __logl_finite. + * sysdeps/i386/i686/fpu/e_log.S: New file. + * sysdeps/i386/i686/fpu/e_logf.S: New file. + * sysdeps/i386/i686/fpu/e_logl.S: New file. + + * ctype/ctype.h: Add support for inlined isXXX functions when + compiling C++ code. + +2011-10-14 Andreas Schwab + + * sysdeps/s390/fpu/libm-test-ulps: Adjust ULPs for jn tests. + + * sysdeps/x86_64/fpu/fraiseexcpt.c: Fix last change. + +2011-10-13 Roland McGrath + + [BZ #13291] + * manual/string.texi (String/Array Comparison): Typo fix in strverscmp. + +2011-10-13 Andreas Schwab + + * sysdeps/x86_64/fpu/fraiseexcpt.c: Add __feraiseexcept alias. + * sysdeps/x86_64/fpu/feupdateenv.c: Use __feraiseexcept instead of + feraiseexcept. + + * sysdeps/x86_64/memrchr.S: Check for zero size. + + * string/stratcliff.c: Add memrchr tests. + +2011-10-12 Liubov Dmitrieva + + * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Add + memchr-sse2 memchr-sse2-bsf memrchr-sse2 memrchr-sse2-bsf memrchr-c + rawmemchr-sse2 rawmemchr-sse2-bsf. + * sysdeps/i386/i686/multiarch/memchr.S: New file. + * sysdeps/i386/i686/multiarch/memchr-sse2.S: New file. + * sysdeps/i386/i686/multiarch/memchr-sse2-bsf.S: New file. + * sysdeps/i386/i686/multiarch/memrchr.S: New file. + * sysdeps/i386/i686/multiarch/memrchr-c.c: New file. + * sysdeps/i386/i686/multiarch/memrchr-sse2.S: New file. + * sysdeps/i386/i686/multiarch/memrchr-sse2-bsf.S: New file. + * sysdeps/i386/i686/multiarch/rawmemchr.S: New file. + * sysdeps/i386/i686/multiarch/rawmemchr-sse2.S: New file. + * sysdeps/i386/i686/multiarch/rawmemchr-sse2-bsf.S: New file. + * string/memrchr.c (MEMRCHR): New macro. + +2011-10-12 Ulrich Drepper + + Add integration with gcc's -ffinite-math-only and optimize wrapper + functions in libm. + * Versions.def: Define GLIBC_2.15 version for libm. + * math/Makefile (headers): Add bits/math-finite.h. + * math/bits/math-finite.h: New file. + * sysdeps/ia64/fpu/bits/math-finite.h: New file. + * math/Versions [libm] (GLIBC_2.15): Export __*_finite symbols. + * math/e_acoshl.c: Add __*_finite alias. + * math/e_acosl.c: Likewise. + * math/e_asinl.c: Likewise. + * math/e_atan2l.c: Likewise. + * math/e_atanhl.c: Likewise. + * math/e_coshl.c: Likewise. + * math/e_exp10.c: Likewise. + * math/e_exp10f.c: Likewise. + * math/e_exp10l.c: Likewise. + * math/e_exp2l.c: Likewise. + * math/e_fmodl.c: Likewise. + * math/e_gammal_r.c: Likewise. + * math/e_hypotl.c: Likewise. + * math/e_j0l.c: Likewise. + * math/e_j1l.c: Likewise. + * math/e_jnl.c: Likewise. + * math/e_lgammal_r.c: Likewise. + * math/e_log10l.c: Likewise. + * math/e_log2l.c: Likewise. + * math/e_logl.c: Likewise. + * math/e_powl.c: Likewise. + * math/e_sinhl.c: Likewise. + * math/e_sqrtl.c: Likewise. + * math/e_scalb.c: Completely rewritten and optimized. + * math/e_scalbf.c: Likewise. + * math/e_scalbl.c: Likewise. + * math/w_acos.c: Likewise. + * math/w_acosf.c: Likewise. + * math/w_acosl.c: Likewise. + * math/w_acosh.c: Likewise. + * math/w_acoshf.c: Likewise. + * math/w_acoshl.c: Likewise. + * math/w_asin.c: Likewise. + * math/w_asinf.c: Likewise. + * math/w_asinl.c: Likewise. + * math/w_atan2.c: Likewise. + * math/w_atan2f.c: Likewise. + * math/w_atan2l.c: Likewise. + * math/w_atanh.c: Likewise. + * math/w_atanhf.c: Likewise. + * math/w_atanhl.c: Likewise. + * math/w_exp10.c: Likewise. + * math/w_exp10f.c: Likewise. + * math/w_exp10l.c: Likewise. + * math/w_fmod.c: Likewise. + * math/w_fmodf.c: Likewise. + * math/w_fmodl.c: Likewise. + * math/w_j0.c: Likewise. + * math/w_j0f.c: Likewise. + * math/w_j0l.c: Likewise. + * math/w_j1.c: Likewise. + * math/w_j1f.c: Likewise. + * math/w_j1l.c: Likewise. + * math/w_jn.c: Likewise. + * math/w_jnf.c: Likewise. + * math/w_log.c: Likewise. + * math/w_logf.c: Likewise. + * math/w_logl.c: Likewise. + * math/w_log10.c: Likewise. + * math/w_log10f.c: Likewise. + * math/w_log10l.c: Likewise. + * math/w_log2.c: Likewise. + * math/w_log2f.c: Likewise. + * math/w_log2l.c: Likewise. + * math/w_pow.c: Likewise. + * math/w_powf.c: Likewise. + * math/w_powl.c: Likewise. + * math/w_remainder.c: Likewise. + * math/w_remainderf.c: Likewise. + * math/w_remainderl.c: Likewise. + * math/w_scalb.c: Likewise. + * math/w_scalbf.c: Likewise. + * math/w_scalbl.c: Likewise. + * math/w_sqrt.c: Likewise. + * math/w_sqrtf.c: Likewise. + * math/w_sqrtl.c: Likewise. + * math/math.h: Define __MATH_DECLARE_LDOUBLE if long double functions + are declared. Include if -ffinite-math-only is + used. + * math/math_private.h: Declare __kernel_standard_f. + * math/w_cosh.c: Remove cruft and optimize a bit. + * math/w_coshf.c: Likewise. + * math/w_coshl.c: Likewise. + * math/w_exp2.c: Likewise. + * math/w_exp2f.c: Likewise. + * math/w_exp2l.c: Likewise. + * math/w_hypot.c: Likewise. + * math/w_hypotf.c: Likewise. + * math/w_hypotl.c: Likewise. + * math/w_lgamma.c: Likewise. + * math/w_lgamma_r.c: Likewise. + * math/w_lgammaf.c: Likewise. + * math/w_lgammaf_r.c: Likewise. + * math/w_lgammal.c: Likewise. + * math/w_lgammal_r.c: Likewise. + * math/w_sinh.c: Likewise. + * math/w_sinhf.c: Likewise. + * math/w_sinhl.c: Likewise. + * math/w_tgamma.c: Likewise. + * math/w_tgammaf.c: Likewise. + * math/w_tgammal.c: Likewise. + * sysdeps/ieee754/dbl-64/e_atanh.c: Likewise. + * sysdeps/ieee754/flt-32/e_atanhf.c: Likewise. + * sysdeps/i386/fpu/e_acos.S: Add __*_finite alias. + Minor optimizations. Pretty printing. Remove cruft. + * sysdeps/i386/fpu/e_acosf.S: Likewise. + * sysdeps/i386/fpu/e_acosh.S: Likewise. + * sysdeps/i386/fpu/e_acoshf.S: Likewise. + * sysdeps/i386/fpu/e_acoshl.S: Likewise. + * sysdeps/i386/fpu/e_acosl.c: Likewise. + * sysdeps/i386/fpu/e_asin.S: Likewise. + * sysdeps/i386/fpu/e_asinf.S: Likewise. + * sysdeps/i386/fpu/e_atan2.S: Likewise. + * sysdeps/i386/fpu/e_atan2f.S: Likewise. + * sysdeps/i386/fpu/e_atan2l.c: Likewise. + * sysdeps/i386/fpu/e_atanh.S: Likewise. + * sysdeps/i386/fpu/e_atanhf.S: Likewise. + * sysdeps/i386/fpu/e_atanhl.S: Likewise. + * sysdeps/i386/fpu/e_exp10.S: Likewise. + * sysdeps/i386/fpu/e_exp10f.S: Likewise. + * sysdeps/i386/fpu/e_exp10l.S: Likewise. + * sysdeps/i386/fpu/e_exp2.S: Likewise. + * sysdeps/i386/fpu/e_exp2f.S: Likewise. + * sysdeps/i386/fpu/e_exp2l.S: Likewise. + * sysdeps/i386/fpu/e_fmod.S: Likewise. + * sysdeps/i386/fpu/e_fmodf.S: Likewise. + * sysdeps/i386/fpu/e_fmodl.c: Likewise. + * sysdeps/i386/fpu/e_hypot.S: Likewise. + * sysdeps/i386/fpu/e_hypotf.S: Likewise. + * sysdeps/i386/fpu/e_log.S: Likewise. + * sysdeps/i386/fpu/e_log10.S: Likewise. + * sysdeps/i386/fpu/e_log10f.S: Likewise. + * sysdeps/i386/fpu/e_log10l.S: Likewise. + * sysdeps/i386/fpu/e_log2.S: Likewise. + * sysdeps/i386/fpu/e_log2f.S: Likewise. + * sysdeps/i386/fpu/e_log2l.S: Likewise. + * sysdeps/i386/fpu/e_logf.S: Likewise. + * sysdeps/i386/fpu/e_logl.S: Likewise. + * sysdeps/i386/fpu/e_pow.S: Likewise. + * sysdeps/i386/fpu/e_powf.S: Likewise. + * sysdeps/i386/fpu/e_powl.S: Likewise. + * sysdeps/i386/fpu/e_remainder.S: Likewise. + * sysdeps/i386/fpu/e_remainderf.S: Likewise. + * sysdeps/i386/fpu/e_remainderl.S: Likewise. + * sysdeps/i386/fpu/e_scalb.S: Likewise. + * sysdeps/i386/fpu/e_scalbf.S: Likewise. + * sysdeps/i386/fpu/e_scalbl.S: Likewise. + * sysdeps/i386/fpu/e_sqrt.S: Likewise. + * sysdeps/i386/fpu/e_sqrtf.S: Likewise. + * sysdeps/i386/fpu/e_sqrtl.c: Likewise. + * sysdeps/ieee754/dbl-64/e_acosh.c: Likewise. + * sysdeps/ieee754/dbl-64/e_asin.c: Likewise. + * sysdeps/ieee754/dbl-64/e_atan2.c: Likewise. + * sysdeps/ieee754/dbl-64/e_cosh.c: Likewise. + * sysdeps/ieee754/dbl-64/e_exp2.c: Likewise. + * sysdeps/ieee754/dbl-64/e_fmod.c: Likewise. + * sysdeps/ieee754/dbl-64/e_gamma_r.c: Likewise. + * sysdeps/ieee754/dbl-64/e_hypot.c: Likewise. + * sysdeps/ieee754/dbl-64/e_j0.c: Likewise. + * sysdeps/ieee754/dbl-64/e_j1.c: Likewise. + * sysdeps/ieee754/dbl-64/e_jn.c: Likewise. + * sysdeps/ieee754/dbl-64/e_lgamma_r.c: Likewise. + * sysdeps/ieee754/dbl-64/e_log.c: Likewise. + * sysdeps/ieee754/dbl-64/e_log10.c: Likewise. + * sysdeps/ieee754/dbl-64/e_log2.c: Likewise. + * sysdeps/ieee754/dbl-64/e_pow.c: Likewise. + * sysdeps/ieee754/dbl-64/e_remainder.c: Likewise. + * sysdeps/ieee754/dbl-64/e_sinh.c: Likewise. + * sysdeps/ieee754/dbl-64/e_sqrt.c: Likewise. + * sysdeps/ieee754/dbl-64/halfulp.c: Likewise. + * sysdeps/ieee754/dbl-64/s_asinh.c: Likewise. + * sysdeps/ieee754/flt-32/e_acosf.c: Likewise. + * sysdeps/ieee754/flt-32/e_acoshf.c: Likewise. + * sysdeps/ieee754/flt-32/e_asinf.c: Likewise. + * sysdeps/ieee754/flt-32/e_atan2f.c: Likewise. + * sysdeps/ieee754/flt-32/e_coshf.c: Likewise. + * sysdeps/ieee754/flt-32/e_exp2f.c: Likewise. + * sysdeps/ieee754/flt-32/e_fmodf.c: Likewise. + * sysdeps/ieee754/flt-32/e_gammaf_r.c: Likewise. + * sysdeps/ieee754/flt-32/e_hypotf.c: Likewise. + * sysdeps/ieee754/flt-32/e_j0f.c: Likewise. + * sysdeps/ieee754/flt-32/e_j1f.c: Likewise. + * sysdeps/ieee754/flt-32/e_jnf.c: Likewise. + * sysdeps/ieee754/flt-32/e_lgammaf_r.c: Likewise. + * sysdeps/ieee754/flt-32/e_log10f.c: Likewise. + * sysdeps/ieee754/flt-32/e_log2f.c: Likewise. + * sysdeps/ieee754/flt-32/e_logf.c: Likewise. + * sysdeps/ieee754/flt-32/e_powf.c: Likewise. + * sysdeps/ieee754/flt-32/e_remainderf.c: Likewise. + * sysdeps/ieee754/flt-32/e_sinhf.c: Likewise. + * sysdeps/ieee754/flt-32/e_sqrtf.c: Likewise. + * sysdeps/ieee754/flt-32/s_asinhf.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_acoshl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_acosl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_asinl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_atan2l.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_atanhl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_coshl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_fmodl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_gammal_r.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_hypotl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_j0l.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_j1l.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_jnl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_lgammal_r.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_log10l.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_log2l.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_logl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_powl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_remainderl.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_sinhl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_acoshl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_acosl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_asinl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_atan2l.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_atanhl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_coshl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_fmodl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_hypotl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_log10l.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_log2l.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_logl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_powl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_remainderl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_sinhl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_sqrtl.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_acoshl.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_asinl.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_atan2l.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_atanhl.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_coshl.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_gammal_r.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_hypotl.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_j0l.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_j1l.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_jnl.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_lgammal_r.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_remainderl.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_sinhl.c: Likewise. + * sysdeps/ieee754/ldbl-96/s_asinhl.c: Likewise. + * sysdeps/powerpc/fpu/e_hypot.c: Likewise. + * sysdeps/powerpc/fpu/e_hypotf.c: Likewise. + * sysdeps/powerpc/fpu/e_sqrt.c: Likewise. + * sysdeps/powerpc/fpu/e_sqrtf.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/e_sqrt.c: Likewise. + * sysdeps/powerpc/powerpc64/fpu/e_sqrtf.c: Likewise. + * sysdeps/s390/fpu/e_sqrt.c: Likewise. + * sysdeps/s390/fpu/e_sqrtf.c: Likewise. + * sysdeps/s390/fpu/e_sqrtl.c: Likewise. + * sysdeps/sparc/sparc32/e_sqrt.c: Likewise. + * sysdeps/sparc/sparc64/fpu/e_sqrtl.c: Likewise. + * sysdeps/x86_64/fpu/e_exp2l.S: Likewise. + * sysdeps/x86_64/fpu/e_fmodl.S: Likewise. + * sysdeps/x86_64/fpu/e_log10l.S: Likewise. + * sysdeps/x86_64/fpu/e_log2l.S: Likewise. + * sysdeps/x86_64/fpu/e_logl.S: Likewise. + * sysdeps/x86_64/fpu/e_powl.S: Likewise. + * sysdeps/x86_64/fpu/e_remainderl.S: Likewise. + * sysdeps/x86_64/fpu/e_scalbl.S: Likewise. + * sysdeps/x86_64/fpu/e_sqrt.c: Likewise. Fix parameter order + * sysdeps/x86_64/fpu/e_sqrtf.c: Likewise. + * sysdeps/x86_64/fpu/math_private.h (__isnan): Cast d parameter. + (__isnanf): Likewise. + (__isinf_ns): Likewise. + (__isinf_nsf): Likewise. + (__finite): Likewise. + (__finitef): Likewise. + (__ieee754_sqrt): Define as macro. + (__ieee754_sqrtf): Define as macro. + (__ieee754_sqrtl): Define as macro. + * sysdeps/x86_64/fpu/bits/fenv.h (feraiseexcept): Add partially + inlined copy. + * sysdeps/x86_64/fpu/bits/mathinline.h: Make use of + __FINITE_MATH_ONLY__ consistent. + * sysdeps/ieee754/k_standard.c (__kernel_standard_f): New function. + +2011-10-10 Andreas Schwab + + * inet/getnetgrent_r.c (nscd_getnetgrent): Use __rawmemchr instead + of rawmemchr. + + * sysdeps/ieee754/ldbl-128ibm/s_isinf_nsl.c: New file. + +2011-10-09 Ulrich Drepper + + * po/ja.po: Update from translation team. + +2011-10-08 Roland McGrath + + * locale/programs/locarchive.c (prepare_address_space): New function. + (create_archive, enlarge_archive, open_archive): Use it. + + * sysdeps/unix/sysv/linux/x86_64/time.c: Move #include + inside [SHARED], where it is used. + + * nscd/nscd_proto.h: Declare __nscd_setnetgrent. + + * nss/getent.c (netgroup_keys): Remove unused variable. + * sysdeps/ieee754/flt-32/s_isinf_nsf.c: Likewise. + +2011-10-08 Ulrich Drepper + + * include/math.h: Declare __isinf_ns, __isinf_nsf, __isinf_nsl. + * sysdeps/ieee754/dbl-64/s_isinf_ns.c: New file. + * sysdeps/ieee754/dbl-64/wordsize-64/s_isinf_ns.c: New file. + * sysdeps/ieee754/flt-32/s_isinf_nsf.c: New file. + * sysdeps/ieee754/ldbl-128/s_isinf_nsl.c: New file. + * sysdeps/ieee754/ldbl-96/s_isinf_nsl.c: New file. + * math/Makefile (libm-calls): Add s_isinf_ns. + * math/divtc3.c: Use __isinf_nsl instead of isinf. + * math/multc3.c: Likewise. + * math/s_casin.c: Likewise. + * math/s_casinf.c: Likewise. + * math/s_casinl.c: Likewise. + * math/s_ccos.c: Likewise. + * math/s_ccosf.c: Likewise. + * math/s_ccosl.c: Likewise. + * math/s_ctan.c: Likewise. + * math/s_ctanf.c: Likewise. + * math/s_ctanh.c: Likewise. + * math/s_ctanhf.c: Likewise. + * math/s_ctanhl.c: Likewise. + * math/s_ctanl.c: Likewise. + * math/w_fmod.c: Likewise. + * math/w_fmodf.c: Likewise. + * math/w_fmodl.c: Likewise. + * math/w_remainder.c: Likewise. + * math/w_remainderf.c: Likewise. + * math/w_remainderl.c: Likewise. + * sysdeps/ieee754/dbl-64/s_finite.c: Undefine __finite. + * sysdeps/ieee754/dbl-64/s_isnan.c: Undefine __isnan. + * sysdeps/ieee754/dbl-64/wordsize-64/s_finite.c: Undefine __finite. + * sysdeps/ieee754/dbl-64/wordsize-64/s_isnan.c: Undefine __nan. + * sysdeps/ieee754/flt-32/s_finitef.c: Undefine __finitef. + * sysdeps/ieee754/flt-32/s_isnanf.c: Undefine __nan. + * sysdeps/x86_64/fpu/math_private.h: Add optimized versions of __isnsn, + __isnanf, __isinf_ns, __isinf_nsf, __finite, and __finitef. + + * stdio-common/printf_fp.c: Use the fact that isinf returns the sign + of the number. + * stdio-common/printf_fphex.c: Likewise. + * stdio-common/printf_size.c: Likewise. + + * math/e_exp10.c: Include math_private.h using <...> not "...". + * math/e_exp10f.c: Likewise. + * math/e_exp10l.c: Likewise. + * math/e_exp2l.c: Likewise. + * math/e_j0l.c: Likewise. + * math/e_j1l.c: Likewise. + * math/e_jnl.c: Likewise. + * math/e_lgammal_r.c: Likewise. + * math/e_rem_pio2l.c: Likewise. + * math/e_scalb.c: Likewise. + * math/e_scalbf.c: Likewise. + * math/e_scalbl.c: Likewise. + * math/k_cosl.c: Likewise. + * math/k_sinl.c: Likewise. + * math/k_tanl.c: Likewise. + * math/s_cacoshf.c: Likewise. + * math/s_catan.c: Likewise. + * math/s_catanf.c: Likewise. + * math/s_catanh.c: Likewise. + * math/s_catanhf.c: Likewise. + * math/s_catanhl.c: Likewise. + * math/s_catanl.c: Likewise. + * math/s_ccosh.c: Likewise. + * math/s_ccoshf.c: Likewise. + * math/s_ccoshl.c: Likewise. + * math/s_cexp.c: Likewise. + * math/s_cexpf.c: Likewise. + * math/s_cexpl.c: Likewise. + * math/s_clog.c: Likewise. + * math/s_clog10.c: Likewise. + * math/s_clog10f.c: Likewise. + * math/s_clog10l.c: Likewise. + * math/s_clogf.c: Likewise. + * math/s_clogl.c: Likewise. + * math/s_csin.c: Likewise. + * math/s_csinf.c: Likewise. + * math/s_csinh.c: Likewise. + * math/s_csinhf.c: Likewise. + * math/s_csinhl.c: Likewise. + * math/s_csinl.c: Likewise. + * math/s_csqrt.c: Likewise. + * math/s_csqrtf.c: Likewise. + * math/s_csqrtl.c: Likewise. + * math/s_ctan.c: Likewise. + * math/s_ctanf.c: Likewise. + * math/s_ctanh.c: Likewise. + * math/s_ctanhf.c: Likewise. + * math/s_ctanhl.c: Likewise. + * math/s_ctanl.c: Likewise. + * math/s_ldexp.c: Likewise. + * math/s_ldexpf.c: Likewise. + * math/s_ldexpl.c: Likewise. + * math/s_significand.c: Likewise. + * math/s_significandf.c: Likewise. + * math/s_significandl.c: Likewise. + * math/w_acos.c: Likewise. + * math/w_acosf.c: Likewise. + * math/w_acosh.c: Likewise. + * math/w_acoshf.c: Likewise. + * math/w_acoshl.c: Likewise. + * math/w_acosl.c: Likewise. + * math/w_asin.c: Likewise. + * math/w_asinf.c: Likewise. + * math/w_asinl.c: Likewise. + * math/w_atan2.c: Likewise. + * math/w_atan2f.c: Likewise. + * math/w_atan2l.c: Likewise. + * math/w_atanh.c: Likewise. + * math/w_atanhf.c: Likewise. + * math/w_atanhl.c: Likewise. + * math/w_cosh.c: Likewise. + * math/w_coshf.c: Likewise. + * math/w_coshl.c: Likewise. + * math/w_dremf.c: Likewise. + * math/w_exp10.c: Likewise. + * math/w_exp10f.c: Likewise. + * math/w_exp10l.c: Likewise. + * math/w_exp2.c: Likewise. + * math/w_exp2f.c: Likewise. + * math/w_fmod.c: Likewise. + * math/w_fmodf.c: Likewise. + * math/w_fmodl.c: Likewise. + * math/w_hypot.c: Likewise. + * math/w_hypotf.c: Likewise. + * math/w_hypotl.c: Likewise. + * math/w_j0.c: Likewise. + * math/w_j0f.c: Likewise. + * math/w_j0l.c: Likewise. + * math/w_j1.c: Likewise. + * math/w_j1f.c: Likewise. + * math/w_j1l.c: Likewise. + * math/w_jn.c: Likewise. + * math/w_jnf.c: Likewise. + * math/w_jnl.c: Likewise. + * math/w_lgamma.c: Likewise. + * math/w_lgamma_r.c: Likewise. + * math/w_lgammaf.c: Likewise. + * math/w_lgammaf_r.c: Likewise. + * math/w_lgammal.c: Likewise. + * math/w_lgammal_r.c: Likewise. + * math/w_log.c: Likewise. + * math/w_log10.c: Likewise. + * math/w_log10f.c: Likewise. + * math/w_log10l.c: Likewise. + * math/w_log2.c: Likewise. + * math/w_log2f.c: Likewise. + * math/w_log2l.c: Likewise. + * math/w_logf.c: Likewise. + * math/w_logl.c: Likewise. + * math/w_pow.c: Likewise. + * math/w_powf.c: Likewise. + * math/w_powl.c: Likewise. + * math/w_remainder.c: Likewise. + * math/w_remainderf.c: Likewise. + * math/w_remainderl.c: Likewise. + * math/w_scalb.c: Likewise. + * math/w_scalbf.c: Likewise. + * math/w_scalbl.c: Likewise. + * math/w_sinh.c: Likewise. + * math/w_sinhf.c: Likewise. + * math/w_sinhl.c: Likewise. + * math/w_sqrt.c: Likewise. + * math/w_sqrtf.c: Likewise. + * math/w_sqrtl.c: Likewise. + * math/w_tgamma.c: Likewise. + * math/w_tgammaf.c: Likewise. + * math/w_tgammal.c: Likewise. + + * po/ja.po: Update from translation team. + +2011-09-29 Andreas Jaeger + + [BZ #13179] + * sunrpc/netname.c (netname2host): Fix logic. + + [BZ #6779] + [BZ #6783] + * math/w_remainderl.c (__remainderl): Handle (NaN, 0) and (Inf,y) + correctly. + * math/w_remainder.c (__remainder): Likewise. + * math/w_remainderf.c (__remainderf): Likewise. + * math/libm-test.inc (remainder_test): Add test cases. + +2011-10-04 Andreas Krebbel + + * stdlib/longlong.h: Update from GCC. Fix zarch smul_ppmm and + sdiv_qrnnd. + +2011-10-07 Ulrich Drepper + + * string/test-memcmp.c: Avoid unncessary #defines. + Patch by Liubov Dmitrieva . + +2011-08-31 Liubov Dmitrieva + + * sysdeps/x86_64/multiarch/rawmemchr.S: Update. + Use new sse2 version for core i3 - i7 as it's faster + than sse42 version. + (bit_Prefer_PMINUB_for_stringop): New. + * sysdeps/x86_64/rawmemchr.S: Update. + Replace with faster SSE2 version. + * sysdeps/x86_64/memrchr.S: New file. + * sysdeps/x86_64/memchr.S: Update. + Replace with faster SSE2 version. + +2011-09-12 Marek Polacek + + * elf/dl-load.c (lose): Add cast to avoid warning. + +2011-10-07 Ulrich Drepper + + * po/ca.po: Update from translation team. + + * inet/getnetgrent_r.c: Hook up nscd. + * nscd/Makefile (routines): Add nscd_netgroup. + (nscd-modules): Add netgroupcache. + (CFLAGS-netgroupcache.c): Define. + * nscd/cache.c (readdfcts): Add entries for GETNETGRENT and INNETGR. + (cache_search): Add const to second parameter. + * nscd/connections.c (serv2str): Add entries for GETNETGRENT and + INNETGR. + (dbs): Add netgrdb entry. + (reqinfo): Add entries for GETNETGRENT, INNETGR, and GETFDNETGR. + (verify_persistent_db): Handle netgrdb. + (handle_request): Handle GETNETGRENT, INNETGR, and GETFDNETGR. + * nscd/nscd-client.h (request_type): Add GETNETGRENT, INNETGR, and + GETFDNETGR. + (netgroup_response_header): Define. + (innetgroup_response_header): Define. + (datahead): Add netgroup_response_header and innetgroup_response_header + elements. + * nscd/nscd.conf: Add entries for netgroup cache. + * nscd/nscd.h (dbtype): Add netgrdb. + (_PATH_NSCD_NETGROUP_DB): Define. + (netgroup_iov_disabled): Declare. + (xmalloc, xcalloc, xrealloc): Move declarations here. + (cache_search): Adjust prototype. + Add netgroup-related prototypes. + * nscd/nscd_conf.c (dbnames): Add netgrdb entry. + * nscd/nscd_proto.h (__nss_not_use_nscd_netgroup): Declare. + (__nscd_innetgr): Declare. + * nscd/selinux.c (perms): Use access_vector_t as element type and + add netgroup-related initializers. + * nscd/netgroupcache.c: New file. + * nscd/nscd_netgroup.c: New file. + * nss/Versions [libc] (GLIBC_PRIVATE): Export __nss_lookup. + * nss/getent.c (netgroup_keys): Use setnetgrent only for one parameter. + For four parameters use innetgr. + * nss/nss_files/files-init.c: Add definition and callback for netgr. + * nss/nsswitch.c (__nss_lookup): Add libc_hidden_def. + (__nss_disable_nscd): Set __nss_not_use_nscd_netgroup. + * nss/nsswitch.h (__nss_lookup): Add libc_hidden_proto. + + * nscd/connections.c (register_traced_file): Don't register file + for disabled databases. + +2011-10-06 Ulrich Drepper + + * nscd/grpcache.c (cache_addgr): Initialize written in all cases. + + * nss/nsswitch.c (__nss_lookup_function): Fix order of deleting + from tree and freeing node. + +2011-09-25 Jiri Olsa + + * nss/nsswitch.c (__nss_database_lookup): Handle + nss_parse_service_list out of memory case. + +2011-09-15 Jiri Olsa + + * nss/nsswitch.c (__nss_lookup_function): Handle __tsearch + out of memory case. + +2011-10-04 Andreas Schwab + + * include/dlfcn.h (__RTLD_NOIFUNC): Define. + * elf/do-rel.h (elf_dynamic_do_rel): Add parameter skip_ifunc and + pass it down. + * elf/dynamic-link.h: Adjust prototypes of elf_machine_rel, + elf_machine_rela, elf_machine_lazy_rel. + (_ELF_DYNAMIC_DO_RELOC): Add parameter skip_ifunc and pass it down. + (ELF_DYNAMIC_DO_REL): Likewise. + (ELF_DYNAMIC_DO_RELA): Likewise. + (ELF_DYNAMIC_RELOCATE): Likewise. + * elf/dl-reloc.c (_dl_relocate_object): Pass __RTLD_NOIFUNC down + to ELF_DYNAMIC_DO_REL. + * elf/rtld.c (_dl_start): Adjust use of ELF_DYNAMIC_RELOCATE. + (dl_main): In trace mode always set __RTLD_NOIFUNC. + * elf/dl-conflict.c (_dl_resolve_conflicts): Adjust call to + elf_machine_rela. + * sysdeps/i386/dl-machine.h (elf_machine_rel): Add parameter + skip_ifunc, don't call ifunc function if non-zero. + (elf_machine_rela): Likewise. + (elf_machine_lazy_rel): Likewise. + (elf_machine_lazy_rela): Likewise. + * sysdeps/ia64/dl-machine.h (elf_machine_rela): Likewise. + (elf_machine_lazy_rel): Likewise. + * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): + Likewise. + (elf_machine_lazy_rel): Likewise. + * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): + Likewise. + (elf_machine_lazy_rel): Likewise. + * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): Likewise. + (elf_machine_lazy_rel): Likewise. + * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Likewise. + (elf_machine_lazy_rel): Likewise. + * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise. + (elf_machine_lazy_rel): Likewise. + * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Likewise. + (elf_machine_lazy_rel): Likewise. + * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela): Likewise. + (elf_machine_lazy_rel): Likewise. + * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise. + (elf_machine_lazy_rel): Likewise. + +2011-09-28 Ulrich Drepper + + * nss/nss_files/files-init.c (_nss_files_init): Use static + initialization for all the *_traced_file variables. + +2011-09-28 Andreas Schwab + + * sysdeps/powerpc/fpu/libm-test-ulps: Adjust ULPs for jn tests. + +2011-09-27 Roland McGrath + + [BZ #13226] + * manual/signal.texi (Longjmp in Handler): Grammar fixes. + +2011-09-27 Andreas Schwab + + * nss/nss_files/files-initgroups.c (_nss_files_initgroups_dyn): + Reread the line before reparsing it. + +2011-09-26 Andreas Schwab + + * sysdeps/x86_64/fpu/bits/mathinline.h: Use __asm instead of asm. + +2011-09-21 Chung-Lin Tang + Maxim Kuvyrkov + Joseph Myers + + * resolv/Makefile (LDLIBS-resolv.so): Link in $(elfobjdir)/ld.so + if needed for __stack_chk_guard. + +2011-09-19 Roland McGrath + + * sysdeps/posix/spawni.c (script_execute): Always define it. + It will be optimized away if unused. + (maybe_script_execute): New function. + (__spawni): Call it. + + * Makerules: Don't include tls.make. + (config-tls): Always set to thread. + * tls.make.c: File removed. + +2011-09-19 Mike Frysinger + + * Makeconfig (CPPFLAGS): Prepend $(CPPFLAGS-config). + * config.make.in (CPPFLAGS-config): New substituted variable. + +2011-09-15 Ulrich Drepper + + * sysdeps/ieee754/dbl-64/wordsize-64/s_finite.c: New file. + + [BZ #13192] + * sysdeps/unix/sysv/linux/bits/in.h (IP_MULTICAST_ALL): Define. + Patch mostly by Neil Horman . + +2011-09-15 Roland McGrath + + * sysdeps/unix/sysv/linux/i386/____longjmp_chk.S + (CALL_FAIL): Use HIDDEN_JUMPTARGET for __fortify_fail. + * sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S + (CALL_FAIL): Likewise. + * sysdeps/unix/sysv/linux/ia64/____longjmp_chk.S (CHECK_RSP): Likewise. + (CALL_FAIL): Macro removed. + Patch mostly by Mike Frysinger . + +2011-09-15 Ulrich Drepper + + * sysdeps/x86_64/fpu/bits/mathinline.h: Add fmax and fmin optimizations + for __FINITE_MATH_ONLY__ == 1. + +2011-09-15 Andreas Schwab + + * sysdeps/powerpc/fpu/e_hypot.c (__ieee754_hypot): Use + __ieee754_sqrt instead of sqrt. + * sysdeps/powerpc/fpu/e_hypotf.c (__ieee754_hypotf): Use + __ieee754_sqrtf instead of sqrtf. + * sysdeps/powerpc/fpu/e_rem_pio2f.c (__ieee754_rem_pio2f): Use + __floorf instead of floorf. + * sysdeps/powerpc/fpu/k_rem_pio2f.c (__fp_kernel_rem_pio2f): Use + __floorf, __truncf instead of floorf, truncf. + +2011-09-14 Ulrich Drepper + + * sysdeps/x86_64/fpu/s_copysign.S [ELF]: Use correct section. + + * sysdeps/x86_64/fpu/bits/mathinline.h (__MATH_INLINE): Use + __extern_always_inline. + Define lrint{f,} and llrint{f,} for 64-bit and in some situations for + 32-bit. + +2011-09-14 Andreas Schwab + + * elf/rtld.c (dl_main): Also relocate in dependency order when + doing symbol dependency testing. + +2011-09-13 Andreas Schwab + + * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): + Always define `refsym'. + +2011-09-13 Andreas Schwab + + * misc/sys/select.h (__FD_MASK): Renamed from __FDMASK. + (__FD_ELT): Renamed from __FDELT. + * misc/bits/select2.h (__FD_ELT): Likewise. + * bits/select.h (__FD_SET, __FD_CLR, __FD_ISSET): Use __FD_ELT, + __FD_MASK instead of __FDELT, __FDMASK. + * sysdeps/i386/bits/select.h (__FD_SET, __FD_CLR, __FD_ISSET): + Likewise. + * sysdeps/x86_64/bits/select.h (__FD_SET, __FD_CLR, __FD_ISSET): + Likewise. + + * elf/Makefile (gen-ldd): Fix pattern. + + * elf/rtld.c (dl_main): Only use USE___THREAD when defined. + (init_tls): Likewise. + +2011-09-12 Ulrich Drepper + + * sysdeps/ieee754/dbl-64/wordsize-64/s_logb.c: New file. + +2011-09-12 Andreas Schwab + + * sysdeps/unix/sysv/linux/bits/socket.h (__cmsg_nxthdr): Cast to + `struct cmsghdr *' instead of `void *'. + * sysdeps/unix/sysv/linux/sparc/bits/socket.h (__cmsg_nxthdr): + Likewise. + +2011-09-11 Andreas Schwab + + * elf/Makefile (gen-ldd): Prepend $(..) to $(ldd-rewrite-script) + if non-absolute. + * sysdeps/unix/sysv/linux/configure.in: Remove leading ../ from + ldd_rewrite_script. + +2011-09-11 Ulrich Drepper + + * configure.in: Remove --with-tls option. + * config.h.in: Remove HAVE_TLS_SUPPORT entry. + * sysdeps/i386/elf/configure.in: Always test for TLS support and err + out in case it is missing. + * sysdeps/ia64/elf/configure.in: Likewise. + * sysdeps/powerpc/powerpc32/elf/configure.in: Likewise. + * sysdeps/powerpc/powerpc64/elf/configure.in: Likewise. + * sysdeps/s390/s390-32/elf/configure.in: Likewise. + * sysdeps/s390/s390-64/elf/configure.in: Likewise. + * sysdeps/sh/elf/configure.in: Likewise. + * sysdeps/sparc/sparc32/elf/configure.in: Likewise. + * sysdeps/sparc/sparc64/elf/configure.in: Likewise. + * sysdeps/x86_64/elf/configure.in: Likewise. + * sysdeps/mach/hurd/i386/tls.h: Remove test for HAVE_TLS_SUPPORT. + * sysdeps/mach/hurd/tls.h: Likewise. + + [BZ #13067] + * malloc/obstack.h [!GNUC] (obstack_free): Avoid cast to int. + + [BZ #13090] + * configure.in: Fix use of AC_INIT. + + * elf/dl-support.c (_dl_pagesize): Initialize to EXEC_PAGESIZE. + +2011-09-10 Ulrich Drepper + + * malloc/malloc.c: Replace MALLOC_FAILURE_ACTION with use of + __set_errno. + * malloc/hooks.c: Likewise. + + * malloc/arena.c (ptmalloc_init_minimal): Removed. Initialize all + variables statically. + (narenas): Initialize. + (list_lock): Initialize. + (ptmalloc_init): Don't call ptmalloc_init_minimal. Remove + initializtion of main_arena and list_lock. Small cleanups. + Replace all uses of malloc_getpagesize with GLRO(dl_pagesize). + * malloc/malloc.c: Remove malloc_getpagesize. Include . + Add initializers to main_arena and mp_. + (malloc_state): Remove pagesize member. Change all users to use + GLRO(dl_pagesize). + + * elf/rtld.c (rtld_global_ro): Initialize _dl_pagesize. + * sysdeps/unix/sysv/linux/getpagesize.c: Simplify. GLRO(dl_pagesize) + is always initialized. + + * malloc/malloc.c: Removed unused configurations and dead code. + * malloc/arena.c: Likewise. + * malloc/hooks.c: Likewise. + * malloc/Makefile (CPPFLAGS-malloc.c): Don't add -DATOMIC_FASTBINS. + + * include/tls.h: Removed. USE___THREAD must always be defined. + * bits/libc-tsd.h: Don't handle !USE___THREAD. + * elf/dl-libc.c: Likewise. + * elf/dl-tsd.c: Likewise. + * include/errno.h: Likewise. + * include/netdb.h: Likewise. + * include/resolv.h: Likewise. + * inet/herrno-loc.c: Likewise. + * inet/herrno.c: Likewise. + * malloc/arena.c: Likewise. + * malloc/hooks.c: Likewise. + * malloc/malloc.c: Likewise. + * resolv/res-state.c: Likewise. + * resolv/res_libc.c: Likewise. + * sysdeps/i386/dl-machine.h: Likewise. + * sysdeps/ia64/dl-machine.h: Likewise. + * sysdeps/powerpc/powerpc32/dl-machine.h: Likewise. + * sysdeps/powerpc/powerpc64/dl-machine.h: Likewise. + * sysdeps/s390/s390-32/dl-machine.h: Likewise. + * sysdeps/s390/s390-64/dl-machine.h: Likewise. + * sysdeps/sh/dl-machine.h: Likewise. + * sysdeps/sparc/sparc32/dl-machine.h: Likewise. + * sysdeps/sparc/sparc64/dl-machine.h: Likewise. + * sysdeps/unix/i386/sysdep.S: Likewise. + * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise. + * sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise. + * sysdeps/unix/x86_64/sysdep.S: Likewise. + * sysdeps/x86_64/dl-machine.h: Likewise. + * tls.make.c: Likewise. + + * configure.in: Remove --with-__thread option. Make tests for + --no-whole-archive, __builtin_expect, symbol redirection, __thread, + tls_model attribute fail if no support is available. Remove + USE_IN_LIBIO. + * Makeconfig: Adjust for dropped configure option. All features are + now mandatory. + * Makerules: Likewise. + * Versions.def: Likewise. + * argp/argp-fmtstream.c: Likewise. + * argp/argp-fmtstream.h: Likewise. + * argp/argp-help.c: Likewise. + * assert/assert.c: Likewise. + * config.h.in: Likewise. + * config.make.in: Likewise. + * configure: Likewise. + * configure.in: Likewise. + * csu/Versions: Likewise. + * csu/init.c: Likewise. + * elf/tst-audit2.c: Likewise. + * elf/tst-tls10.c: Likewise. + * elf/tst-tls10.h: Likewise. + * elf/tst-tls11.c: Likewise. + * elf/tst-tls12.c: Likewise. + * elf/tst-tls14.c: Likewise. + * elf/tst-tlsmod11.c: Likewise. + * elf/tst-tlsmod12.c: Likewise. + * elf/tst-tlsmod13.c: Likewise. + * elf/tst-tlsmod13a.c: Likewise. + * elf/tst-tlsmod14a.c: Likewise. + * elf/tst-tlsmod15b.c: Likewise. + * elf/tst-tlsmod16a.c: Likewise. + * elf/tst-tlsmod16b.c: Likewise. + * elf/tst-tlsmod7.c: Likewise. + * elf/tst-tlsmod8.c: Likewise. + * elf/tst-tlsmod9.c: Likewise. + * gmon/gmon.c: Likewise. + * grp/fgetgrent_r.c: Likewise. + * grp/putgrent.c: Likewise. + * hurd/fopenport.c: Likewise. + * include/libc-symbols.h: Likewise. + * include/tls.h: Likewise. + * intl/gettextP.h: Likewise. + * intl/loadinfo.h: Likewise. + * locale/global-locale.c: Likewise. + * locale/localeinfo.h: Likewise. + * mach/devstream.c: Likewise. + * malloc/arena.c: Likewise. + * malloc/set-freeres.c: Likewise. + * misc/err.c: Likewise. + * misc/getttyent.c: Likewise. + * misc/mntent_r.c: Likewise. + * posix/getopt.c: Likewise. + * posix/wordexp.c: Likewise. + * pwd/fgetpwent_r.c: Likewise. + * resolv/Versions: Likewise. + * resolv/res_hconf.c: Likewise. + * shadow/fgetspent_r.c: Likewise. + * shadow/putspent.c: Likewise. + * stdio-common/printf_fphex.c: Likewise. + * stdio-common/tmpfile.c: Likewise. + * stdlib/abort.c: Likewise. + * stdlib/fmtmsg.c: Likewise. + * sunrpc/auth_unix.c: Likewise. + * sunrpc/clnt_perr.c: Likewise. + * sunrpc/clnt_tcp.c: Likewise. + * sunrpc/clnt_udp.c: Likewise. + * sunrpc/clnt_unix.c: Likewise. + * sunrpc/openchild.c: Likewise. + * sunrpc/svc_simple.c: Likewise. + * sunrpc/svc_tcp.c: Likewise. + * sunrpc/svc_udp.c: Likewise. + * sunrpc/svc_unix.c: Likewise. + * sunrpc/xdr.c: Likewise. + * sunrpc/xdr_array.c: Likewise. + * sunrpc/xdr_rec.c: Likewise. + * sunrpc/xdr_ref.c: Likewise. + * sunrpc/xdr_stdio.c: Likewise. + +2011-09-09 Ulrich Drepper + + * sysdeps/i386/fpu/libm-test-ulps: Adjust ULPs for jn tests. + +2011-07-03 Andreas Jaeger + + * math/libm-test.inc (jn_test): Add tests for BZ#11589. + * sysdeps/x86_64/fpu/libm-test-ulps: Add new ULPs for jn_test, + regenerate with gen-libm-tests.pl. + +2010-05-12 Petr Baudis + + [BZ #11589] + * sysdeps/ieee754/dbl-64/e_jn.c: Compensate major precision loss + around j0() zero points by switching to j1(). + * sysdeps/ieee754/flt-32/e_jnf.c: Likewise. + * sysdeps/ieee754/ldbl-128/e_jnl.c: Likewise. + * sysdeps/ieee754/ldbl-128ibm/e_jnl.c: Likewise. + * sysdeps/ieee754/ldbl-96/e_jnl.c: Likewise. + +2011-09-09 Ulrich Drepper + + * sysdeps/unix/bsd/bsd4.4/bits/socket.h (__cmsg_nxthdr): Use NULL + instead of 0. + * sysdeps/unix/sysv/linux/bits/socket.h (__cmsg_nxthdr): Use (void*)0 + instead of 0. . + * sysdeps/unix/sysv/linux/sparc/bits/socket.h: Likewise. + Patch in part by Pavel Roskin . + + [BZ #13138] + * stdio-common/vfscanf.c (ADDW): Allocate large memory block with + realloc. + (_IO_vfscanf_internal): Remove reteof. Use errout after setting done. + Free memory block if necessary. + + [BZ #12847] + * libio/genops.c (INTDEF): For string streams the _lock pointer can + be NULL. Don't lock in this case. + +2011-09-09 Roland McGrath + + * elf/elf.h (ELFOSABI_GNU): New macro. + (ELFOSABI_LINUX): Define to that. + +2011-07-29 Denis Zaitceff + + * string/strncat.c (strncat): Undef the symbol in case it has been + defined in bits/string.h. + +2011-09-09 Ulrich Drepper + + * elf/sotruss.ksh: Clean up, fix, and complete help messages. + + * elf/dl-iteratephdr.c (__dl_iterate_phdr): Fill in data from the real + link map. + +2011-08-17 Andreas Jaeger + + * elf/sprof.c (load_shobj): Remove unused variable log_hashfraction. + +2011-08-18 Paul Pluzhnikov + Ian Lance Taylor + + * math/libm-test.inc (lround_test): New testcase. + * sysdeps/ieee754/dbl-64/s_lround.c (__lround): Don't lose precision. + +2011-09-08 Ulrich Drepper + + * Makefile: Remove support for automatic cvs check-ins. + * Makerules: Likewise. + * config.make.in: Likewise. + * configure.in: Likewise. + * intl/Makefile: Likewise. + * locale/Makefile: Likewise. + * po/Makefile: Likewise. + * posix/Makefile: Likewise. + * sysdeps/gnu/Makefile: Likewise. + * sysdeps/mach/hurd/Makefile: Likewise. + * sysdeps/sparc/sparc32/Makefile: Likewise. + + [BZ #13118] + * posix/Makefile (bug-regex32-ENV): Define. + Patch by John Stanley . + + * misc/Makefile (headers): Add bits/select2.h. + * misc/sys/select.h: Include bits/select2.h for _FORTIFY_SOURCE. + * misc/bits/select2.h: New file. + * include/bits/select2.h: New file. + * debug/Makefile (routines): Add fdelt_chk. + * debug/Versions: Export __fdelt_chk and __fdelt_warn for GLIBC_2.15. + * debug/tst-chk1.c (do_test): Add tests for FD_SET, FD_CLR, and + FD_ISSET. + * debug/fdelt_chk.c: New file. + + * wcsmbs/test-wcscmp.c: Moved from string/*. Adjust. + * wcsmbs/test-wmemcmp.c: Likewise. + * string/Makefile (strop-tests): Remove wcscmp and wmemcmp. + * wcsmbs/Makefile (strop-tests): Add wcscmp and wmemcmp. + +2011-09-08 Liubov Dmitrieva + + * string/Makefile (strop-tests): Add memcmp. + * string/test-wmemcmp.c: New file. + * string/test-memcmp.c: Add wmemcmp support. + +2011-09-08 Roland McGrath + + [BZ #13153] + * manual/libc.texinfo (EDITION, VERSION, UPDATED): Update for + 2011-07-19 change. + + * sysdeps/mach/hurd/fork.c (__fork): Initialize REFS so we don't use a + garbage value in a __mach_port_mod_refs call in the cases of the + task-self and thread-self ports. + +2011-09-06 Samuel Thibault + + * sysdeps/mach/hurd/sys/param.h (DEV_BSIZE): New macro. + +2011-09-08 Andreas Schwab + + * elf/dl-load.c (lose): Check for non-null L. + +2011-09-07 Ulrich Drepper + + * elf/dl-load.c (open_verify): Use O_CLOEXEC. + + * elf/dl-libc.c (dlerror_run): Pass back error code from + dl_catch_error. + + [BZ #13123] + * elf/dl-load.c (lose): Free l_origin if it is valid. + + * sysdeps/i386/i686/multiarch/strchr-sse2-bsf.S: Fix mixup in section + names. + * sysdeps/i386/i686/multiarch/strchr-sse2.S: Likewise. + * sysdeps/i386/i686/multiarch/strlen-sse2-bsf.S: Likewise. + * sysdeps/i386/i686/multiarch/strlen-sse2.S: Likewise. + * sysdeps/i386/i686/multiarch/strrchr-sse2-bsf.S: Likewise. + * sysdeps/i386/i686/multiarch/strrchr-sse2.S: Likewise. + Patch by Liubov Dmitrieva . + +2011-08-01 Adhemerval Zanella + + * sysdeps/powerpc/fpu/e_hypot.c: New file. + * sysdeps/powerpc/fpu/e_hypotf.c: New file. + * sysdeps/powerpc/fpu/e_rem_pio2f.c: New file. + * sysdeps/powerpc/fpu/k_rem_pio2f.c: New file. + * sysdeps/powerpc/fpu/k_cosf.c: New file. + * sysdeps/powerpc/fpu/k_sinf.c: New file. + * sysdeps/powerpc/fpu/s_cosf.c: New file. + * sysdeps/powerpc/fpu/s_sinf.c: New file. + * sysdeps/powerpc/fpu/s_scalbnf.c: New file. + * sysdeps/powerpc/fpu/s_float_bitwise.h: New file. + +2011-08-15 Alan Modra + + [BZ #13092] + * sysdeps/powerpc/Makefile (gmon): Move sysdep_routines to.. + * sysdeps/powerpc/powerpc64/Makefile (gmon): ..here.. + * sysdeps/powerpc/powerpc32/Makefile (gmon): ..and here. Add + ppc_mcount to static-only-routines. + * sysdeps/powerpc/powerpc32/Versions: Export GLIBC_PRIVATE + __mcount_internal. + * sysdeps/powerpc/powerpc32/ppc-mcount.S (_mcount): Call + __mcount_internal with usual JUMPTARGET. Remove useless nop. + +2011-08-18 David Flaherty + + * sysdeps/ieee754/ldbl-128ibm/s_fmal.c: New file which checks + for finite and infinity parameters. + +2011-08-04 Will Schmidt + + * sysdeps/powerpc/powerpc32/power7/strncmp.S: Adjust the alignment + and add nop instructions for throughput optimization. + * sysdeps/powerpc/powerpc64/power7/strncmp.S: Likewise. + +2011-07-28 Will Schmidt + + * sysdeps/powerpc/powerpc32/power7/memcpy.S: Optimize the + aligned copy for power7 with vector-scalar instructions. + * sysdeps/powerpc/powerpc64/power7/memcpy.S: Likewise. + +2011-07-24 H.J. Lu + + * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Simplify + AVX check. + +2011-09-07 Andreas Schwab + + [BZ #13144] + * sysdeps/unix/sysv/linux/x86_64/bits/sem.h (semdid_ds): Revert + last change. + +2011-09-07 Ulrich Drepper + + * sysdeps/unix/sysv/linux/x86_64/init-first.c + (_libc_vdso_platform_setup): If vDSO is not present store pointer to + syscall wrapper around clock_gettime in __vdso_clock_gettime. + * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Add entry for + clock_gettime. + +2011-09-06 Ulrich Drepper + + * sysdeps/unix/sysv/linux/x86_64/clock_gettime.c (INTERNAL_GETTIME): + Forgot to demangle the pointer. + + * sysdeps/i386/sysdep.h: Define atom_text_section. + * sysdeps/x86_64/sysdep.h: Likewise. + * sysdeps/i386/i686/multiarch/strchr-sse2-bsf.S: Place function in + section with atom_text_section. + * sysdeps/i386/i686/multiarch/strlen-sse2-bsf.S: Likewise. + * sysdeps/i386/i686/multiarch/strrchr-sse2-bsf.S: Likewise. + * sysdeps/x86_64/multiarch/strchr-sse2-no-bsf.S: Likewise. + * sysdeps/x86_64/multiarch/strlen-no-bsf.S: Likewise. + * sysdeps/x86_64/multiarch/strrchr-sse2-no-bsf.S: Likewise. + + * sysdeps/unix/sysv/linux/x86_64/clock_gettime.c: New file. + * sysdeps/unix/sysv/linux/clock_gettime.c (SYSCALL_GETTIME): Allow + already be defined. Change to take two parameters and don't assign + result to variable. Adjust all users. + Define INTERNAL_GETTIME if not already defined. + Use INTERNAL_GETTIME instead of INTERNAL_VSYSCALL got clock_gettime + call. + * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Don't define + HAVE_CLOCK_GETTIME_VSYSCALL. + * sysdeps/unix/clock_gettime.c: Adjust use of SYSDEP_GETTIME_CPU. + + * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Don't use + gettimeofday vsyscall, just use time. + +2011-09-06 Andreas Schwab + + * sysdeps/unix/sysv/linux/x86_64/gettimeofday.c [!SHARED]: Include + . + +2011-09-06 Ulrich Drepper + + * sysdeps/unix/sysv/linux/kernel-features.h: Add entry for getcpu + syscall on x86-64. + * sysdeps/unix/sysv/linux/x86_64/gettimeofday.c [!SHARED]: Use real + syscall. + * sysdeps/unix/sysv/linux/x86_64/time.c: Likewise. + * sysdeps/unix/sysv/linux/x86_64/sched_getcpu.S [!SHARED]: Use real + syscall if possible. + +2011-09-05 Ulrich Drepper + + * elf/pldd.c (get_process_info): Don't read whole ELF header, just + e_ident. Don't pass to find_mapsXX. + * elf/pldd-xx.c (find_mapsXX): Remove second parameter. + +2011-07-20 Liubov Dmitrieva + + * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add + strchr-sse2-no-bsf strrchr-sse2-no-bsf + * sysdeps/x86_64/multiarch/strchr.S: Update. + Check bit_slow_BSF bit. + * sysdeps/x86_64/multiarch/strrchr.S: Likewise. + * sysdeps/x86_64/multiarch/strchr-sse2-no-bsf.S: New file. + * sysdeps/x86_64/multiarch/strrchr-sse2-no-bsf.S: New file. + +2011-09-05 Ulrich Drepper + + [BZ #13134] + * sysdeps/posix/spawni.c (script_execute): Define only for compatibility + before glibc 2.15. + (tryshell): Define. + (__spawni): Change last parameter to be flag. Test + SPAWN_XFLAGS_USE_PATH flag to use path or not. + Don't try to use shell unless SPAWN_XFLAGS_TRY_SHELL is set. + * sysdeps/mach/hurd/spawni.c: Change last parameter and adjust user. + * posix/spawni.c: Likewise. + * posix/spawn.c: Add compat version which passed SPAWN_XFLAGS_TRY_SHELL. + * posix/spawnp.c: Likewise. Change normal version to use + SPAWN_XFLAGS_USE_PATH. + * posix/spawn_int.c: Define SPAWN_XFLAGS_USE_PATH and + SPAWN_XFLAGS_TRY_SHELL. + + [BZ #13150] + * posix/glob.h: Remove gcc 1.x support. + + [BZ #13068] + * elf/dl-misc.c (_dl_sysdep_read_whole_file): Use O_CLOEXEC. + +2011-07-20 Liubov Dmitrieva + + * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Add + strchr-sse2 strrchr-sse2 strchr-sse2-bsf + strrchr-sse2-bsf + * sysdeps/i386/i686/multiarch/strchr.S: New file. + * sysdeps/i386/i686/multiarch/strrchr.S: New file. + * sysdeps/i386/i686/multiarch/strchr-sse2.S: New file. + * sysdeps/i386/i686/multiarch/strchr-sse2-bsf.S: New file. + * sysdeps/i386/i686/multiarch/strrchr-sse2.S: New file. + * sysdeps/i386/i686/multiarch/strrchr-sse2-bsf.S: New file. + +2011-08-29 Liubov Dmitrieva + + * sysdeps/x86_64/wcscmp.S: New file. + + * sysdeps/i386/i686/multiarch/Makefile: (sysdep_routines): Add + wcscmp-c wcscmp-sse2 + * sysdeps/i386/i686/multiarch/wcscmp-c.c: New file. + * sysdeps/i386/i686/multiarch/wcscmp.S: New file. + * sysdeps/i386/i686/multiarch/wcscmp-sse2.S: New file. + * wcsmbs/wcscmp.c: Allow renaming. + +2011-09-05 David S. Miller + + * sysdeps/sparc/sparc32/fpu/s_fabsf.S: Use first argument + stack slot, rather than the struct return pointer slot. + * sysdeps/sparc/sparc32/fpu/s_fabs.c: Delete. + * sysdeps/sparc/sparc32/fpu/s_fabs.S: New file. + * sysdeps/sparc/sparc32/sparcv9/fpu/s_fabs.S: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/fpu/Implies: Likewise. + +2011-09-05 Ulrich Drepper + + * po/ja.po: Update from translation team. + + [BZ #13144] + * sysdeps/unix/sysv/linux/x86_64/bits/sem.h (semdid_ds): Fix to match + kernel in 64-bit binaries. + +2011-09-01 David S. Miller + + * elf/elf.h (HWCAP_SPARC_*): Move to.. + * sysdeps/sparc/sysdep.h: this new file and add new values. + * sysdeps/unix/sparc/sysdep.h: Include sysdeps/sparc/sysdep.h + * sysdeps/sparc/dl-procinfo.h: Include sysdep.h and increase + _DL_HWCAP_COUNT to 24. + * sysdeps/sparc/dl-procinfo.c (_dl_sparc_cap_flags): Add new + entries. + * sysdeps/sparc/sparc32/bits/atomic.h: Don't use magic local + __ATOMIC_HWCAP_SPARC_V9 define, use sysdep.h one instead. + * sysdeps/sparc/sparc32/dl-machine.h: Include sysdep.h + * sysdeps/sparc/sparc64/multiarch/memcpy.S: Use HWCAP_SPARC_* + instead of magic constants. + * sysdeps/sparc/sparc64/multiarch/memset.S: Likewise. + +2011-08-31 David S. Miller + + * sysdeps/unix/sparc/sysdep.h (SETUP_PIC_REG): Define. + * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h (PSEUDO): + Reimplement to do errno handling inline. + (SYSCALL_ERROR_HANDLER): New macro. + (__SYSCALL_STRING): Do not do errno handling in asm. + (__CLONE_SYSCALL_STRING): Delete. + (__INTERNAL_SYSCALL_STRING): Delete. + * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Include + sysdeps/unix/sparc/sysdep.h instead of sysdeps/unix/sysdep.h + (PSEUDO): Reimplement to do errno handling inline. + (ret, ret_NOERRNO, ret_ERRVAL, r0, r1, MOVE): Don't redefine. + (SYSCALL_ERROR_HANDLER): New macro. + (__SYSCALL_STRING): Do not do errno handling in asm. + (__CLONE_SYSCALL_STRING): Delete. + (__INTERNAL_SYSCALL_STRING): Delete. + * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL): + Implement in terms of INTERNAL_SYSCALL and __set_errno, just like + i386. + (INTERNAL_SYSCALL_DECL): Declare %g1 var for err state. + (inline_syscall*): Add 'err' argument. + (INTERNAL_SYSCALL, INTERNAL_SYSCALL_NCS, + INTERNAL_SYSCALL_ERROR_P): Likewise and pass it down. + (INLINE_CLONE_SYSCALL): Reimplement in terms of __SYSCALL_STRING, + INTERNAL_SYSCALL_ERRNO, and INTERNAL_SYSCALL_ERROR_P. + + * scripts/data/localplt-sparc-linux-gnu.data: Remove 'ffs'. + * scripts/data/localplt-sparc64-linux-gnu.data: Likewise. + +2011-08-30 Andreas Schwab + + * elf/rtld.c (dl_main): Relocate objects in dependency order. + +2011-08-29 Jiri Olsa + + * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Fix cfi + directive. + +2011-08-24 David S. Miller + + * sysdeps/sparc/sparc64/strcmp.S: Rewrite. + +2011-08-24 Andreas Schwab + + * elf/Makefile: Add rules to build and run unload8 test. + * elf/unload8.c: New file. + * elf/unload8mod1.c: New file. + * elf/unload8mod1x.c: New file. + * elf/unload8mod2.c: New file. + * elf/unload8mod3.c: New file. + + * elf/dl-close.c (_dl_close_worker): Reset private search list if + it wasn't used. + +2011-08-23 David S. Miller + + * sysdeps/sparc/sparc64/dl-machine.h (DL_STACK_END): Do not + subtract stack bias. + * sysdeps/sparc/sparc64/jmpbuf-unwind.h (_JMPBUF_UNWINDS): Use + %sp not %fp in calculations. + (_JMPBUF_UNWINDS_ADJ): Likewise. + + * sysdeps/pthread/aio_suspend.c (do_aio_misc_wait): New function. + (aio_suspend): Call it to force an exception region around the + AIO_MISC_WAIT() invocation. + +2011-08-23 Andreas Schwab + + * sysdeps/i386/i686/multiarch/strspn.S (ENTRY): Add missing + backslash. + +2011-07-04 Aurelien Jarno + + * sysdeps/powerpc/dl-tls.h: Add _PPC_DL_TLS_H inclusion + protection macro. + * sysdeps/powerpc/powerpc64/dl-irel.h: Include + and . + (Elf64_FuncDesc): Remove. + +2011-08-22 David S. Miller + + * sysdeps/unix/sysv/linux/sparc/sparc32/____longjmp_chk.S: Fix + sigaltstack check, add missing cfi directives. + * sysdeps/unix/sysv/linux/sparc/sparc64/____longjmp_chk.S: Add + missing cfi directives, and sigaltstack handling. + +2011-08-16 Andreas Schwab + + [BZ #11724] + * elf/dl-deps.c (_dl_map_object_deps): Only assume cycle when + object is seen twice. + * elf/dl-fini.c (_dl_sort_fini): Likewise. + + * elf/Makefile (distribute): Add tst-initorder2.c. + (tests): Add tst-initorder2. + (modules-names): Add tst-initorder2a tst-initorder2b + tst-initorder2c tst-initorder2d. Add rules to build them. + ($(objpfx)tst-initorder2.out): New rule. + * elf/tst-initorder2.c: New file. + * elf/tst-initorder2.exp: New file. + +2011-08-22 Andreas Schwab + + * sysdeps/unix/sysv/linux/i386/scandir64.c: Include . + + * elf/dl-deps.c (_dl_map_object_deps): Move check for missing + dependencies back to end of function. + + * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Readd + $(elfobjdir)/ld.so. + +2011-08-21 Ulrich Drepper + + * sysdeps/unix/sysv/linux/x86_64/gettimeofday.S: Removed. + * sysdeps/unix/sysv/linux/x86_64/time.S: Removed. + * sysdeps/unix/sysv/linux/x86_64/gettimeofday.c: New file. + * sysdeps/unix/sysv/linux/x86_64/time.c: New file. + * sysdeps/unix/sysv/linux/x86_64/bits/libc-vdso.h: Remove declaration + of __vdso_gettimeofday. + * sysdeps/unix/sysv/linux/x86_64/init-first.c: Remove definition of + __vdso_gettimeofday and __vdso_time. Define __vdso_getcpu with + attribute_hidden. + (_libc_vdso_platform_setup): Remove initialization of + __vdso_gettimeofday and __vdso_time. + +2011-08-20 Ulrich Drepper + + * nss/nss_files/files-alias.c (get_next_alias): Use feof_unlocked + and fgetc_unlocked. + * nss/nss_files/files-key.c (search): Use fgets_unlocked and + getc_unlocked. + + * elf/dl-open.c (add_to_global): Report additions to the global scope + for LD_DEBUG=scopes. + (dl_open_worker): Also print scope of newly loaded dependencies. + (_dl_show_scope): Indicate if there is no scope. + + [BZ #13114] + * stdio-common/Makefile (tests): Add bug24. + * stdio-common/bug24.c: New file. + +2011-08-19 Andreas Jaeger + + [BZ #13114] + * libio/fileops.c (_IO_new_file_fopen): Fix handling of + non-existant file when using close-on-exec mode. + +2011-08-20 Ulrich Drepper + + * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_resolve): Fix CFI for + the very first instruction. + + * sysdeps/x86_64/dl-trampoline.h: If MORE_CODE is defined, restore + the CFI state in the end. + * sysdeps/x86_64/dl-trampoline.S: Define MORE_CODE before first + inclusion of dl-trampoline.h. + Based on a patch by Jiri Olsa . + +2011-08-19 Andreas Schwab + + * sysdeps/powerpc/fpu/libm-test-ulps: Relax ctan (0.75 + 1.25 i) + expectations for long double. + + * sysdeps/unix/sysv/linux/powerpc/powerpc32/scandir64.c: Renamed + from sysdeps/unix/sysv/linux/powerpc/scandir64.c. + +2011-08-14 David S. Miller + + * sysdeps/unix/sysv/linux/Makefile (CFLAGS-tst-writev.c): The + artificual limit depends upon the system page size. + +2011-08-17 Ulrich Drepper + + * Makeconfig (override CFLAGS): Add library-specific CFLAGS. + * resolv/Makefile: Define CFLAGS-libresolv. + +2011-08-17 Andreas Schwab + + * nss/makedb.c (compute_tables): Make variables used in nested + function static. + +2011-08-17 Ulrich Drepper + + * elf/pldd-xx.c (r_debug): Explicitly add padding when needed. + * elf/pldd.c (get_process_info): Use pread to re-read auxiliary vector + if buffer was too small. + + * elf/pldd.c (main): Attach to all threads in the process. + Rewrite /proc handling to use *at functions. + +2011-08-16 Ulrich Drepper + + * elf/dl-open.c (_dl_show_scope): Take additional parameter which + specifies first scope to show. + (dl_open_worker): Update callers. Move printing scope of new + object to before the relocation. + * elf/rtld.c (dl_main): Update _dl_show_scope call. + * sysdeps/generic/ldsodefs.h: Update declaration. + + * elf/dl-open.c (_dl_show_scope): Use _dl_debug_printf to generate the + string for the scope number. + +2011-08-14 Ulrich Drepper + + * nscd/servicescache.c (cache_addserv): Make sure written is always + initialized. + +2011-08-14 Roland McGrath + + * sysdeps/i386/i486/bits/atomic.h + (__arch_compare_and_exchange_val_64_acq): Use RET alone at end of + statement expression, so as to suppress "set but not used" warning. + (__arch_c_compare_and_exchange_val_64_acq): Likewise. + + * string/strncat.c (STRNCAT): Use prototype definition. + + * locale/Makefile (locale-CPPFLAGS): Renamed CPPFLAGS-locale-programs. + (locale-CPPFLAGS): New variable; put LOCALEDIR, LOCALE_ALIAS_PATH and + -Iprograms here. + (cppflags-iterator.mk sequence): Use locale-programs in place of nonlib. + (localedef-modules): Add localedef. + (locale-modules): Add locale. + + * sysdeps/generic/ldsodefs.h (struct unique_sym): Add a const. + * elf/rtld.c (dl_main): Invert order of assignment in last change, + to avoid a warning. + +2011-08-14 David S. Miller + + * sysdeps/unix/sysv/linux/sparc/bits/resource.h (RLIM_INFINITY, + RLIM64_INFINITY): Fix 64-bit values for 32-bit sparc. + +2011-08-13 Ulrich Drepper + + * elf/dl-open.c: Rename show_scope to _dl_show_scope and export. + (dl_open_worker): Call _dl_show_scope when DL_DEBUG_SCOPES is set. + * elf/rtld.c (dl_main): Set l_name of vDSO. + Call _dl_show_scope when DL_DEBUG_SCOPES. + (process_dl_debug): Recognize scopes flag and also set it for all. + * sysdeps/generic/ldsodefs.h: Define DL_DEBUG_SCOPES. + Declare _dl_show_scope. + + * elf/dl-libc.c (do_dlopen_args): Add caller_dlopen. + (do_dlopen): Pass caller_dlopen to dl_open. + (__libc_dlopen_mode): Initialize caller_dlopen. + + * intl/l10nflist.c (_nl_normalize_codeset): Make it compile outside + of libc. Make tolower call locale-independent. Optimize a bit by + using isdigit instead of isalnum. + * locale/Makefile (locale-CPPFLAGS): Add -DNOT_IN_libc. + +2011-08-12 Ulrich Drepper + + * elf/dl-load.c (_dl_map_object): Show in debug output whether a DSO + was a dependency or dynamically loaded. + +2011-08-11 Ulrich Drepper + + * intl/l10nflist.c: Allow architecture-specific pop function. + * sysdeps/x86_64/l10nflist.c: New file. + + * intl/l10nflist.c (_nl_make_l10nflist): Use locale-independent + classification. + +2011-08-10 Andreas Schwab + + * include/dirent.h: Add libc_hidden_proto for scandirat and + scandirat64. Don't declare __scandirat64. + * dirent/scandirat.c: Add libc_hidden_def. + * dirent/scandirat64.c (SCANDIRAT): Remove underscores. + * sysdeps/unix/sysv/linux/i386/scandir64.c (SCANDIRAT): Likewise. + +2011-08-10 David S. Miller + + * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Add missing comma in + enum. + * sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h: Likewise. + * sysdeps/unix/sysv/linux/s390/sys/ptrace.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/sys/ptrace.h: Likewise. + +2011-08-09 Ulrich Drepper + + * Versions.def [libc]: Add GLIBC_2.15. + * dirent/Makefile (routines): Add scandirat and scandirat64. + * dirent/Versions [libc]: Export scandirat and scandirat64 for + GLIBC_2.15. + * dirent/dirent.h: Declare scandirat and scandirat64. + * dirent/scandirat.c: New file. + * dirent/scandirat64.c: New file. + * sysdeps/wordsize-64/scandirat.c: New file. + * sysdeps/wordsize-64/scandirat64.c: New file. + * dirent/opendir.c: Define opendirat. + * dirent/scandir.c: Move code to scandirat.c. Implement scandir + using scandirat. + * dirent/scandir64.c: Adjust for scandir.c change. + * include/dirent.h: Define scandir_cancel_struct. Declare __opendirat, + __scandirat64, and __scandir_cancel_handler. + * sysdeps/unix/opendir.c: Rename __opendir to __opendirat. Take + additional parameter and use openat instead of open (outside of ld.so). + Add new __opendir as wrapper around __opendirat. + * sysdeps/unix/sysv/linux/i386/scandir64.c: Reimplement __old_scandir64 + here without requiring old scandirat implementation. + +2011-08-08 Ulrich Drepper + + * dirent/scandir.c (cancel_handler): Renamed to + __scandir_cancel_handler. Do not define if SKIP_SCANDIR_CANCEL is + defined. Adjust users. + * dirent/scandir64.c: Define SKIP_SCANDIR_CANCEL. + * sysdeps/unix/sysv/linux/i386/scandir64.c: Likewise. + +2011-08-04 Ulrich Drepper + + * string/test-string.h (IMPL): Use __STRING to expand name and then + stringify it. + + * string/test-strcmp.c: Unify most of the WIDE and !WIDE code. Lots + of cleanups. + +2011-07-22 Liubov Dmitrieva + + * string/Makefile: Update. + (strop-tests): Append strncat. + * string/test-wcscmp.c: New file. + New comprehensive test for wcscmp. + * string/test-strcmp.c: Update. + (WIDE): New define. + +2011-07-22 Andreas Schwab + + * resolv/res_init.c (__res_vinit): Properly tokenize nameserver + line. + +2011-07-26 Andreas Schwab + + * sysdeps/posix/getaddrinfo.c (gaih_inet): Don't discard result of + encoding to ACE if AI_IDN. + +2011-08-01 Jakub Jelinek + + * sysdeps/ieee754/dbl-64/k_rem_pio2.c (__kernel_rem_pio2): Fix up fq + to y conversion for prec 3 and __FLT_EVAL_METHOD__ != 0. + +2011-07-22 Liubov Dmitrieva + + * sysdeps/i386/i686/multiarch/strcat-sse2.S: Update. + Fix overflow bug in strncat. + * sysdeps/i386/i686/multiarch/strcpy-ssse3.S: Likewise. + + * string/test-strncat.c: Update. + Add new tests for checking overflow bugs. + +2011-07-15 Liubov Dmitrieva + + * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Add + strcat-ssse3 strcat-sse2 strncat-ssse3 strncat-sse2 strncat-c. + * sysdeps/i386/i686/multiarch/strcat.S: New file. + * sysdeps/i386/i686/multiarch/strcat-c.c: New file. + * sysdeps/i386/i686/multiarch/strcat-sse2.S: New file. + * sysdeps/i386/i686/multiarch/strcat-ssse3.S: New file. + * sysdeps/i386/i686/multiarch/strncat.S: New file. + * sysdeps/i386/i686/multiarch/strncat-sse2.S: New file. + * sysdeps/i386/i686/multiarch/strncat-ssse3.S: New file. + + * sysdeps/i386/i686/multiarch/strcpy-ssse3.S + (USE_AS_STRCAT): Define. + Add strcat and strncat support. + * sysdeps/i386/i686/multiarch/strlen-sse2.S: Likewise. + +2011-07-25 Andreas Schwab + + * sysdeps/i386/i486/bits/string.h (__strncat_g): Correctly handle + __n bigger than INT_MAX+1. + (__strncmp_g): Likewise. + +2011-07-23 Ulrich Drepper + + * posix/unistd.h: Define SEEK_DATA and SEEK_HOLE. + * libio/stido.h: Likewise. + + * sysdeps/unix/sysv/linux/bits/socket.h (PF_NFC): Define. + (AF_NFC): Define. + * sysdeps/unix/sysv/linux/sparc/bits/socket.h (PF_NFC): Define. + (AF_NFC): Define. + + * sysdeps/unix/sysv/linux/sys/ptrace.h: Add new constants. + * sysdeps/unix/sysv/linux/sparc/sys/ptrace.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Likewise. + * sysdeps/unix/sysv/linux/s390/sys/ptrace.h: Likewise. + + [BZ #13021] + * scripts/test-installation.pl: Don't expect libnss_test1 to be + installed. + + * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Fix one more + typo. + (_dl_x86_64_save_sse): Likewise. + +2011-07-22 Ulrich Drepper + + * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Fix test for + OSXSAVE. + (_dl_x86_64_save_sse): Likewise. + + * crypt/crypt_util.c (__init_des_r): Optimize memset calls. + + * crypt/crypt_util.c (__init_des_r): Add read barrier as well. + +2011-07-21 Andreas Schwab + + * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Fix last + change. + (_dl_x86_64_save_sse): Use correct AVX check. + +2011-07-21 Liubov Dmitrieva + + * sysdeps/x86_64/multiarch/strcpy-sse2-unaligned.S: Fix overfow + bug in strncpy/strncat. + * sysdeps/x86_64/multiarch/strcpy-ssse3.S: Likewise. + +2011-07-21 Ulrich Drepper + + * string/tester.c (test_strcat): Add tests for different alignments + of source and destination. + (test_strncat): Likewise. + +2011-07-20 Ulrich Drepper + + [BZ #12852] + * posix/glob.c (glob): Check passed in values before using them in + expressions to avoid some overflows. + (glob_in_dir): Likewise. + + [BZ #13007] + * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): More complete + check for AVX enablement so that we don't crash with old kernels and + new hardware. + * elf/tst-audit4.c: Add same checks here. + * elf/tst-audit6.c: Likewise. + + * sysdeps/x86_64/bits/link.h (La_x86_64_ymm): Force 16-byte alignment. + +2011-07-09 Andreas Schwab + + * sysdeps/unix/sysv/linux/pathconf.c: Include . + +2011-07-20 Ulrich Drepper + + * po/cs.po: Update from translation team. + * po/bg.po: Likewise. + +2011-07-12 Marek Polacek + + * misc/sys/cdefs.h: Add support for const attribute. + * sysdeps/unix/sysv/linux/sys/sysmacros.h: Add __attribute_const__ + to gnu_dev_{major,minor,makedev} functions. + +2011-07-20 Marek Polacek + + * intl/dcigettext.c (get_output_charset): Add missing bracket. + +2011-07-20 Andreas Schwab + + * resolv/res_query.c (__libc_res_nquerydomain): Use size_t for + strlen results. + +2011-07-13 Andreas Krebbel + + * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h + (INTERNAL_VSYSCALL_NCS): Use r10 for backing up the return address + register in order to avoid conflicts with the soft frame pointer + being held in r11 when necessary. + * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h + (INTERNAL_VSYSCALL_NCS): Likewise. + +2011-07-14 Marek Polacek + + * elf/dl-fini.c (_dl_sort_fini): Remove unused link_map *l argument, + * elf/dl-fini.c (_dl_fini): Adjust caller. + * elf/dl-close.c (_dl_close_worker): Likewise. + * sysdeps/generic/ldsodefs.h: Adjust declaration. + +2011-07-15 Marek Polacek + + * elf/cache.c (load_aux_cache): Remove unnecessary condition of + "aux_cache->nlibs < 0". + + * nscd/nscd_conf.c (nscd_parse_file): Remove unnecessary condition + in the reload-count case. + +2011-07-15 Liubov Dmitrieva + + * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add + strcat-ssse3 strcat-sse2-unaligned strncat-ssse3 + strncat-sse2-unaligned strncat-c strlen-sse2-pminub + * sysdeps/x86_64/multiarch/strcat-sse2-unaligned.S: New file. + * sysdeps/x86_64/multiarch/strcat.S: New file. + * sysdeps/x86_64/multiarch/strncat.S: New file. + * sysdeps/x86_64/multiarch/strncat-c.c: New file. + * sysdeps/x86_64/multiarch/strcat-ssse3.S: New file. + * sysdeps/x86_64/multiarch/strncat-sse2-unaligned.S: New file. + * sysdeps/x86_64/multiarch/strncat-ssse3.S: New file. + * sysdeps/x86_64/multiarch/strcpy-ssse3.S + (USE_AS_STRCAT): Define. + Add strcat and strncat support. + * sysdeps/x86_64/multiarch/strlen-no-bsf.S: Likewise. + * sysdeps/x86_64/multiarch/strcpy-sse2-unaligned.S: Likewise. + * sysdeps/x86_64/multiarch/strlen-sse2-pminub.S: New file. + * string/strncat.c: Update. + (USE_AS_STRNCAT): Define. + * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features): + Turn on bit_Prefer_PMINUB_for_stringop for Intel Core i3, i5 + and i7. + * sysdeps/x86_64/multiarch/init-arch.h + (bit_Prefer_PMINUB_for_stringop): New. + (index_Prefer_PMINUB_for_stringop): Likewise. + * sysdeps/x86_64/multiarch/strlen.S (strlen): Check + bit_Prefer_PMINUB_for_stringop. + +2011-07-19 Ulrich Drepper + + * crypt/sha512.h (struct sha512_ctx): Move buffer into union and add + buffer64. + * crypt/sha512.c (__sha512_finish_ctx): Use buffer64 for writes instead + of casting of buffer. + * crypt/sha256.h (struct sha256_ctx): Move buffer into union and add + buffer32 and buffer64. + * crypt/sha256.c (__sha256_finish_ctx): Use buffer32 or buffer64 for + writes instead of casting of buffer. + * crypt/md5.h (struct md5_ctx): Move buffer into union and add + buffer32. + * crypt/md5.c (md5_finish_ctx): Use buffer32 for writes instead of + casting of buffer. + +2011-07-19 Andreas Schwab + + * string/strxfrm_l.c (STRXFRM): Fix alloca accounting. + +2011-07-19 Ulrich Drepper + + * nscd/nscd.c (termination_handler): Don't do anything for a database + if it has not yet been initialized. + +2011-07-18 Ulrich Drepper + + * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_EQUAL_S): Fix a typo. + +2011-07-15 Marek Polacek + + * bits/sched.h (__CPU_EQUAL_S): Fix a typo. + +2011-07-18 Ulrich Drepper + + * po/nl.po: Update from translation team. + * po/sv.po: Likewise. + +2011-07-16 Roland McGrath + + * sysdeps/i386/Makefile: Never use -mpreferred-stack-boundary=2, + now disallowed by GCC. + + * configure.in (use-default-link): Default to yes if a test -shared + link meets our qualifications. + * configure: Regenerated. + + * config.make.in (output-format): New variable. + * configure.in: Check for ld --print-output-format support. + * configure: Regenerated. + * Makerules ($(common-objpfx)format.lds) + [$(output-format) != unknown]: Just use $(output-format), + instead of the linker-script munging. + +2011-07-14 Roland McGrath + + * Makefile ($(common-objpfx)linkobj/libc.so): Use $(shlib-lds) instead + of $(common-objpfx)shlib.lds. + * elf/Makefile ($(objpfx)sotruss-lib.so): Likewise. + + * sysdeps/i386/i686/multiarch/strstr-c.c (libc_hidden_builtin_def): + Conditionalize redefinition on [SHARED && DO_VERSIONING && !NO_HIDDEN]. + + * configure.in (-z relro check): Adjust test code to add a large + writable data section after it. + * configure: Regenerated. + +2011-07-11 Roland McGrath + + * configure.in (-z relro check): Fix test code to make the variable + truly const. + * configure: Regenerated. + +2011-07-11 Ulrich Drepper + + * nscd/nscd.h (struct traced_file): Define. + (struct database_dyn): Remove inotify_descr, reset_res, and filename + elements. Add traced_files. + (inotify_fd): Declare. + (register_traced_file): Declare. + * nscd/connections.c (dbs): Remove reset_res and filename initializers. + (inotify_fd): Export. + (resolv_conf_descr): Remove. + (nscd_init): Move inotify descriptor creation to main. + Don't register files for notification here. + (register_traced_file): New function. + (invalidate_cache): Don't use reset_res to determine whether to call + res_init, go through the list of registered files. + (main_loop_poll): The inotify descriptors are now stored in the + structures for the traced files. + (main_loop_epoll): Likewise + * nscd/nscd.c (main): Create inotify socket here. Pass extra argument + to __nss_disable_nscd. + * nscd/cache.c (prune_cache): There is no single inotify descriptor + for a database anymore. Check the records for all the registered + files instead. + * nss/Makefile (libnss_files-routines): Add files-init. + (libnss_db-routines): Add db-init. + * nss/Versions [libnss_files] (GLIBC_PRIVATE): Add _nss_files_init. + [libnss_db] (GLIBC_PRIVATE): Add _nss_db_init. + * nss/nss_db/db-init.c: New file. + * nss/nss_files/files-init.c: New file. + * nss/nsswitch.c (nss_load_library): New function. Broken out of + __nss_lookup_function. + (__nss_lookup_function): Call nss_load_library. + (nss_load_all_libraries): New function. + (__nss_disable_nscd): Take parameter with callback function for files + to register. Set is_nscd. Load all the DSOs for the NSS modules + used for the cached services. + * nss/nsswitch.h (__nss_disable_nscd): Adjust prototype. + * sysdeps/unix/sysv/linux/Makefile [subdir=nscd]: Pass the various -D + options for features to all the files in nscd. + + * nss/nsswitch.c (nss_parse_file): Add missing fclose. + +2011-07-10 Roland McGrath + + * csu/elf-init.c (__libc_csu_init): Comment typo. + +2011-07-09 Ulrich Drepper + + * po/pl.po: Update from translation team. + * po/ja.po: Likewise. + * po/ru.po: Likewise. + * po/ko.po: Likewise. + * po/fr.po: Likewise. + +2011-07-09 Roland McGrath + + * configure.in (.ctors/.dtors header and trailer check): + Use an empirical test on a built program. + * configure: Regenerated. + + * configure.in (-z relro check): Use an empirical test on a built DSO. + Detect, but do not require, on ia64. + * configure: Regenerated. + + * configure.in (READELF): Find it with AC_CHECK_TOOL. + Update tests that use readelf to use $READELF instead. + * configure: Regenerated. + +2011-07-08 Ulrich Drepper + + * malloc/hooks.c (memalign_check): Avoid using checked_request2size + if the result is not used. + +2011-07-05 Andreas Jaeger + + [BZ#9696] + * stdlib/tst-strtod.c: Add testcase. + +2011-07-07 Ulrich Drepper + + * sysdeps/unix/sysv/linux/pathconf.c (distinguish_extX): New function. + (__statfs_link_max): Use it to distinguish between ext2/3 and ext4. + The latter has a higher limit. Take additional parameter to pass to + the new function. + (__pathconf): Pass file to __statfs_link_max. + * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Pass fd to + __statfs_link_max. + * sysdeps/unix/sysv/linux/pathconf.h: Adjust prototype of + __statfs_link_max. + + [BZ #12868] + * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define Lustre constants. + * sysdeps/unix/sysv/linux/internal_statvfs.c (__statvfs_getflags): + Handle Lustre. + * sysdeps/unix/sysv/linux/pathconf.c (__statfs_link_max): Likewise. + (__statfs_filesize_max): Likewise. + Patch mostly by Andreas Dilger . + +2011-07-05 Andreas Jaeger + + * resolv/res_comp.c (dn_skipname): Remove unused variable. + +2011-07-06 Marek Polacek + + * nis/nss_nisplus/nisplus-spwd.c (_nss_nisplus_setspent): Honour the + `status' variable. + * nis/nss_nisplus/nisplus-ethers.c (_nss_nisplus_setetherent): + Likewise. + +2011-07-04 H.J. Lu + + * Makefile (strop-tests): Add strncat. + * string/test-strncat.c: New file. + +2011-06-30 Marek Polacek + + * iconvdata/johab.c: Don't inline `johab_sym_hanja_to_ucs' function. + +2011-06-21 Andreas Jaeger + + * sysdeps/s390/s390-64/Makefile ($(inst_gconvdir)/gconv-modules): + Copy rule from iconvdata/Makefile. + +2011-07-06 Ulrich Drepper + + [BZ #12922] + * posix/getopt.c (_getopt_internal_r): When "W;" is in short options + but no long options are defined, just return 'W'. + +2011-06-22 Marek Polacek + + [BZ #9696] + * stdlib/strtod_l.c (round_and_return): Set ERANGE instead of EDOM. + +2011-07-06 Ulrich Drepper + + * inet/getnetgrent_r.c (internal_getnetgrent_r): Fix check for known + netgroups to read. + (innetgr): Likewise. + +2011-07-05 Roland McGrath + + * config.make.in (install_root): Default to $(DESTDIR). + +2011-07-05 Ulrich Drepper + + * nscd/nscd_getserv_r.c (nscd_getserv_r): Add cast to avoid warning. + +2011-07-02 Roland McGrath + + * Makerules ($(common-objpfx)format.lds): Fail if result is empty. + + * Makefile ($(common-objpfx)testrun.sh): Generate to work relative to + containing directory rather than embedding absolute directory names. + + * scripts/check-local-headers.sh: Rewritten using awk. + Match by word, not by line. Print error messages for matches. + * Makefile ($(objpfx)check-local-headers.out): Pass AWK in to it. + + * Makerules [shlib-lds-flags empty]: + ($(common-objpfx)libc_pic.opts): New target. + ($(common-objpfx)libc_pic.os.clean): New target. + ($(common-objpfx)libc.so): Link it instead of libc_pic.os. + + * config.make.in (OBJCOPY): New variable. + * aclocal.m4 (LIBC_PROG_BINUTILS): Substitute OBJCOPY too. + * configure: Regenerated. + + * config.make.in (use-default-link): New variable. + * configure.in (use_default_link): Grok --with-default-link to set it. + * configure: Regenerated. + * Makerules [$(elf) = yes] [$(use-default-link) = yes]: + (shlib-lds, shlib-lds-flags): Define to empty. + + * Makerules (shlib-lds): New variable. + (shlib-lds-flags): New variable. + (build-shlib, build-moduile, build-module-asneeded): Use it. + ($(common-objpfx)libc.so): Use $(shlib-lds). + ($(extra-modules-build:%=$(objpfx)%.so)): Likewise. + * iconvdata/extra-module.mk ($(objpfx)$(mod).so): Likewise. + + * elf/dynamic-link.h (elf_get_dynamic_info): Make asserts accept + DT_FLAGS/DT_FLAGS_1 with zero flags. + + * elf/Makefile ($(objpfx)ld.so): Use -defsym=_begin=0 instead of + linker script munging. + +2011-07-02 Ulrich Drepper + + * crypt/sha512.h (struct sha512_ctx): Add union to access total also + as 128-bit value. + * crypt/sha512.c (sha512_process_block): Perform total addition using + 128-bit if possible. + (__sha512_finish_ctx): Likewise. + * crypt/sha256.h (struct sha256_ctx): Add union to access total also + as 64-bit value. + * crypt/sha256.c (SWAP64): Define. + (sha256_process_block): Perform total addition using 64-bit if + possible. + (__sha256_finish_ctx): Likewise. + +2011-07-01 Ulrich Drepper + + * nscd/pwdcache.c (cache_addpw): Cleanup. Add branch prediction. + * nscd/initgrcache.c (addinitgroupsX): Likewise. + * nscd/hstcache.c (cache_addhst): Likewise. + * nscd/grpcache.c (cache_addgr): Likewise. + * nscd/aicache.c (addhstaiX): Likewise + * nscd/servicescache.c (cache_addserv): Handle zero negtimeout. + +2011-07-01 Thorsten Kukuk + + * nscd/pwdcache.c (cache_addpw): Handle zero negtimeout. + * nscd/initgrcache.c (addinitgroupsX): Likewise. + * nscd/hstcache.c (cache_addhst): Likewise. + * nscd/grpcache.c (cache_addgr): Likewise. + * nscd/aicache.c (addhstaiX): Likewise + +2011-07-01 Andreas Schwab + + * nis/nss_compat/compat-pwd.c (getpwent_next_nss_netgr): Query NIS + domain only when needed. + +2011-06-30 Andreas Schwab + + * sysdeps/posix/getaddrinfo.c (gaih_inet): Make sure RES_USE_INET6 + is always restored. + +2011-06-29 Ulrich Drepper + + * nscd/grpcache.c (cache_addgr): Don't write notfound reply if we + are re-adding the entry. + * nscd/servicescache.c (cache_addserv): Likewise. + +2011-06-30 Aurelien Jarno + + * sysdeps/generic/dl-irel.h: fix protection against multiple + inclusions. + * sysdeps/generic/dl-irel.h (elf_ifunc_invoke): New. + +2011-06-28 Ulrich Drepper + + [BZ #12935] + * malloc/memusage.sh: Fix quoting in message. + * debug/xtrace.sh: Likewise. + + * configure.in: Remove support for --experimental-malloc option, make + it the default. + * config.make.in: Likewise. + * malloc/Makefile: Likewise. + +2011-06-27 Andreas Schwab + + * iconvdata/gb18030.c (BODY for TO_LOOP): Fix encoding of non-BMP + two-byte characters. + +2011-06-27 Roland McGrath + + * configure.in (NO_CTORS_DTORS_SECTIONS): Give this check its own + AC_CACHE_CHECK invocation. + * configure: Regenerated. + + * elf/soinit.c (__CTOR_LIST__, __DTOR_LIST__): Add used attribute. + +2011-06-27 Ulrich Drepper + + [BZ #12350] + * nscd/aicache.c (addhstaiX): Restore only RES_USE_INET6 + bit from old_res_options. + + * sysdeps/unix/sysv/linux/Makefile (CFLAGS-servicescache.c): Define. + + * inet/getnetgrent_r.c (innetgr): Minimal cleanup, use correct return + value type for setfct. + +2011-06-23 H.J. Lu + + * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Use + __gettimeofday instead of gettimeofday. + +2011-06-26 Ulrich Drepper + + * elf/Makefile (all-built-dso): No need to check linkobj/libc.so. + +2011-06-24 H.J. Lu + + * sysdeps/i386/i686/multiarch/strcpy-sse2.S (RETURN): Fix a typo. + + * sysdeps/i386/i686/multiarch/strcpy-ssse3.S: Correct unwind + info. + +2011-06-22 H.J. Lu + + * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add + strcpy-ssse3 strncpy-ssse3 stpcpy-ssse3 stpncpy-ssse3 + strcpy-sse2-unaligned strncpy-sse2-unaligned + stpcpy-sse2-unaligned stpncpy-sse2-unaligned. + * sysdeps/x86_64/multiarch/stpcpy-sse2-unaligned.S: New file. + * sysdeps/x86_64/multiarch/stpcpy-ssse3.S: New file. + * sysdeps/x86_64/multiarch/stpncpy-sse2-unaligned.S: New file. + * sysdeps/x86_64/multiarch/stpncpy-ssse3.S: New file. + * sysdeps/x86_64/multiarch/strcpy-sse2-unaligned.S: New file. + * sysdeps/x86_64/multiarch/strcpy-ssse3.S: New file. + * sysdeps/x86_64/multiarch/strncpy-sse2-unaligned.S: New file. + * sysdeps/x86_64/multiarch/strncpy-ssse3.S: New file. + * sysdeps/x86_64/multiarch/strcpy.S: Remove strcpy with SSSE3. + (STRCPY): Support SSE2 and SSSE3 versions. + +2011-06-24 Ulrich Drepper + + [BZ #12874] + * sysdeps/unix/sysv/linux/Makefile (CFLAGS-tst-writev.c): Define. + * sysdeps/wordsize-64/tst-writev.c: Work around problem with 2.6.38+ + kernels which artificially limit size of requests. + +2011-06-22 H.J. Lu + + * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Add + strncpy-c strcpy-ssse3 strncpy-ssse3 stpcpy-ssse3 stpncpy-ssse3 + strcpy-sse2 strncpy-sse2 stpcpy-sse2 stpncpy-sse2. + * sysdeps/i386/i686/multiarch/stpcpy-sse2.S: New file. + * sysdeps/i386/i686/multiarch/stpcpy-ssse3.S: New file. + * sysdeps/i386/i686/multiarch/stpncpy-sse2.S: New file. + * sysdeps/i386/i686/multiarch/stpncpy-ssse3.S: New file. + * sysdeps/i386/i686/multiarch/stpncpy.S : New file. + * sysdeps/i386/i686/multiarch/strcpy-sse2.S : New file. + * sysdeps/i386/i686/multiarch/strcpy-ssse3.S: New file. + * sysdeps/i386/i686/multiarch/strcpy.S: New file. + * sysdeps/i386/i686/multiarch/strncpy-c.c: New file. + * sysdeps/i386/i686/multiarch/strncpy-sse2.S: New file. + * sysdeps/i386/i686/multiarch/strncpy-ssse3.S: New file. + * sysdeps/i386/i686/multiarch/strncpy.S: New file. + * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features): + Enable unaligned load optimization for Intel Core i3, i5 and i7 + processors. + * sysdeps/x86_64/multiarch/init-arch.h (bit_Fast_Unaligned_Load): + Define. + (index_Fast_Unaligned_Load): Define. + (HAS_FAST_UNALIGNED_LOAD): Define. + +2011-06-23 Marek Polacek + + * nss/nss_db/db-open.c: Include for read declaration. + +2011-06-22 Ulrich Drepper + + [BZ #12907] + * sysdeps/posix/getaddrinfo.c (getaddrinfo): Avoid calling __check_pf + until it is clear that the information is realy needed. + Patch mostly by David Hanisch . + +2011-06-22 Andreas Schwab + + * sysdeps/posix/getaddrinfo.c (gaih_inet): Fix last change. + +2011-06-22 Ulrich Drepper + + * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Use + /sys/devices/system/cpu/online if it is usable. + + * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Rate limit + reading the information from the /proc filesystem to once a second. + +2011-06-21 Andreas Jaeger + + * sysdeps/unix/sysv/linux/bits/sigcontext.h: Fix definition of + NULL after inclusion of kernel headers. + +2011-06-21 Ulrich Drepper + + * nss/nss_db/db-XXX.c (nss_db_setENT): Only set entidx for successful + calls to internal_setent. + + [BZ #12885] + * sysdeps/posix/getaddrinfo.c (gaih_inet): When looking up only IPv6 + addresses using gethostbyname4_r ignore IPv4 addresses. + + * sysdeps/posix/getaddrinfo.c (gaih_inet): After the last change the + branch using gethostbyname2 is only for AF_INET. Optimize accordingly. + + * inet/getnetgrent_r.c: Use DL_CALL_FCT in several places. + +2011-06-20 David S. Miller + + * sysdeps/sparc/sparc32/dl-plt.h: Protect against multiple + inclusions. + * sysdeps/sparc/sparc64/dl-plt.h: Likewise. + + * sysdeps/i386/dl-irel.h (elf_ifunc_invoke): New. + (elf_irel): Use it. + * sysdeps/powerpc/powerpc32/dl-irel.h: Likewise. + * sysdeps/powerpc/powerpc64/dl-irel.h: Likewise. + * sysdeps/sparc/sparc32/dl-irel.h: Likewise. + * sysdeps/sparc/sparc64/dl-irel.h: Likewise. + * sysdeps/x86_64/dl-irel.h: Likewise. + + * elf/dl-runtime.c: Use elf_ifunc_invoke. + * elf/dl-sym.c: Likewise. + +2011-06-15 Ulrich Drepper + + * resolv/res_send.c (__libc_res_nsend): Fix typos in last patch. We + need to dereference resplen2. + +2011-06-14 Andreas Schwab + + * sysdeps/unix/sysv/linux/wordsize-64/dl-fxstatat64.c: New file. + +2011-06-15 Ulrich Drepper + + * Makeconfig: Define vardbdir and inst_vardbdir. + * nss/Makefile: Add rules to install db-Makefile. + + * nss/nss_db/db-XXX.c: Cleanup. + + * nss/Makefile (libnss_db-dbs): Add db-initgroups. + * nss/Versions [libnss_db]: Add _nss_db_initgroups_dyn for + GLIBC_PRIVATE. + * nss/db-Makefile (groups.db): Emit entries for initgroups lookups. + * nss/makedb.c: Implement -g option to specify that value strings + are generated and should not be added to table iterated over for + get*ent calls. + * nss/nss_db/db-initgroups.c: New file. + + * nss/getent.c: Add support for initgroups lookups through getgrouplist + interface. + + * grp/initgroups.c (__nss_initgroups_database): Renamed and exported. + (internal_getgrouplist): Adjust to name change. + Update use_initgroups_entry if this is not the first call. + * nss/databases.def: Add initgroups entry. + + * nss/makedb.c (compute_tables): Check result of multiple hash table + sizes to minimize maximum chain length. + +2011-06-14 Ulrich Drepper + + * Versions.def: Add entry for libnss_db. + * shlib-versions: Likewise. + * nss/Makefile: Add rules to build libnss_db. + * nss/Versions: Add libnss_db information. Organize libnss_files + entries better. + * nss/db-Makefile: Add gshadow support. Change rules for the new + makedb progra. Some minor improvements to generate smaller files. + * nss/nss_db/nss_db.h: Move NSS database header data structures to + here from... + * nss/makedb.c: ...here. + Improve database format to be smaller and require less memory at + runtime. + * nss/nss_db/db-XXX.x: Adjust for new database format. Don't use + db anymore. + * nss/nss_db/db-netgrp.c: Likewise. + * nss/nss_db/db-open.c: Likewise. + * nss/nss_files/flies-XXX.x: Adjust comments. + * nss/nss_files/files-ethers.c: Adjust for new DB_LOOKUP definition. + * nss/nss_files/files-grp.c: Likewise. + * nss/nss_files/files-hosts.c: Likewise. + * nss/nss_files/files-network.c: Likewise. + * nss/nss_files/files-proto.c: Likewise. + * nss/nss_files/files-pwd.c: Likewise. + * nss/nss_files/files-rpc.c: Likewise. + * nss/nss_files/files-service.c: Likewise. + * nss/nss_files/files-sgrp.c: Likewise. + * nss/nss_files/files-spwd.c: Likewise. + * nss/nss_db/db-alias.c: Removed. + * nss/nss_db/dummy-db.h: Removed. + +2011-06-02 Ulrich Drepper + + * nss/makedb.c: Rewritten to not use database library. + * nss/Makefile: Update to build new makedb program. + +2011-06-14 Andreas Jaeger + + * sysdeps/unix/sysv/linux/check_native.c: Include for + memset declaration. + +2011-06-10 Andreas Schwab + + * sysdeps/posix/getaddrinfo.c (gaih_inet): Fix logic allocating + tmpbuf. + +2011-06-10 Roland McGrath + + * Makerules (shlib.lds): Fail if the linker script comes out empty. + * elf/Makefile ($(objpfx)ld.so): Likewise. + + * Makefile ($(common-objpfx)linkobj/libc.so): Break long lines with \. + Don't list ld.so twice in dependencies. + + * posix/bug-regex31.c: Include . + + * nscd/hstcache.c (cache_addhst): Remove unused variable. + + * nis/nss_compat/compat-spwd.c + (getspent_next_nss_netgr): Remove unused variable. + * nis/nss_compat/compat-pwd.c (getpwent_next_nss_netgr): Likewise. + + * nis/nis_print_group_entry.c (nis_print_group_entry): Fix "Implicit + nonmembers" output to use the right array. + + * resolv/nss_dns/dns-network.c (getanswer_r): Remove unused variable. + + * elf/dl-open.c (_dl_open): Quash warnings when DL_NNS==1. + + * locale/programs/ld-ctype.c (ctype_read): Remove unused variable. + * locale/programs/ld-collate.c (add_to_tablewc): Likewise. + * catgets/gencat.c (read_input_file): Likewise. + * locale/programs/locarchive.c (enlarge_archive): Likewise. + + * sunrpc/clnt_udp.c (__libc_clntudp_bufcreate): Move DONTBLOCK + variable definition inside #if's controlling its use. + + * inet/getnetgrent_r.c (innetgr): Remove unused variable. + + * resolv/res_hconf.c (_res_hconf_reorder_addrs): Fix errno restoration. + + * misc/syslog.c (__vsyslog_chk): Remove unused variable. + + * io/fts.c (fts_build): Use if (0 && ...) rather than #if 0 for + unreachable code. + + * stdio-common/printf_fp.c (___printf_fp): Remove unused variable. + + * configure.in (nss-crypt check): Use AC_LANG_PROGRAM. + * configure: Regenerated. + + * Makerules: Revert last change. + * elf/Makefile: Likewise. + +2011-06-09 Roland McGrath + + * Makerules ($(common-objpfx)libc_pic.os): Use -Wl, before -r. + * elf/Makefile ($(objpfx)librtld.os): Likewise. + (reloc-link): Likewise. + +2011-06-09 Ulrich Drepper + + * elf/Makefile: Add rules to build pldd. + * elf/pldd.c: New file. + * elf/pldd-xx.c: New file. + +2011-06-07 Ulrich Drepper + + * version.h: Update for 2.15 development version. + +2011-06-07 David S. Miller + + * sysdeps/sparc/sparc32/dl-irel.h (elf_irela): Pass dl_hwcap to + ifuncs. + * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela, + elf_machine_lazy_rel): Likewise. + * sysdeps/sparc/sparc64/dl-irel.h (elf_irela): Likewise. + * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela, + elf_machine_lazy_rel): Likewise. + * sysdeps/sparc/sparc64/multiarch/memcpy.S (memcpy): Fetch + dl_hwcap via passed in argument. + * sysdeps/sparc/sparc64/multiarch/memset.S (memset, bzero): + Likewise. + +2011-06-06 Andreas Krebbel + + * stdlib/longlong.h: Update from GCC. Fix smul_ppmm for S/390. + +2011-06-06 Roland McGrath + + [BZ #12849] + * manual/fdl-1.1.texi: New file, verbatim from: + http://www.gnu.org/licenses/old-licenses/fdl-1.1.texi + * manual/lgpl-2.1.texi: New file, verbatim from: + http://www.gnu.org/licenses/old-licenses/lgpl-2.1.texi + * manual/Makefile (licenses): New variable, list those new file names. + (texis): Use it. + (chapters.% top-menu.%): Include $(licenses) with $(appendices). + + * manual/fdl.texi: File removed. + * manual/lesser.texi: File removed. + * manual/libc.texinfo (Copying, Documentation License): + Use new @include file names, put @appendix directive before @include. + +2011-06-04 Jakub Jelinek + + [BZ #12841] + * rt/bits/mqueue2.h (__mq_open_2): Add __THROW. + (__mq_open_alias): Use __REDIRECT_NTH instead of __REDIRECT. + (mq_open): Add __NTH. + +2011-06-02 H.J. Lu + + * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features): + Assume Intel Core i3/i5/i7 processor if AVX is available. + +2011-05-31 Ulrich Drepper + + * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_setup_stack_chk_guard): Fix + typo. + +2011-05-31 Andreas Schwab + + * nscd/nscd_getserv_r.c (nscd_getserv_r): Don't free non-malloced + memory. Use alloca_account. Fix memory leak when retrying. + +2011-05-31 Ulrich Drepper + + * version.h (RELEASE): Bump for 2.14 release. + * include/features.h (__GLIBC_MINOR__): Bump to 14. + + * config.make.in (RANLIB): Remove entry. + +2011-05-30 Ulrich Drepper + + * po/Makefile (po-sed-cmd): Add ksh to extensions. + (libc.pot): Work around missing support for .ksh extension in xgettext. + + [BZ #12684] + * resolv/res_send.c (__libc_res_nsend): Only go to the next name server + if both request failed. + (send_dg): In case of server errors clear resplen or *resplen2. + + [BZ #12454] + * elf/dl-deps.c (_dl_map_object_deps): Run initializer sorting only + when there are multiple maps. + * elf/dl-fini.c (_dl_sort_fini): Check for list of one. + (_dl_fini): Remove test here. + + * elf/rtld.c (dl_main): Don't allow the loader to load itself. + +2011-05-29 Ulrich Drepper + + [BZ #12350] + * sysdeps/posix/getaddrinfo.c (gethosts): Restore only RES_USE_IENT6 + bit from old_res_options. + (gaih_inet): Likewise. + + [BZ #11099] + * shadow/sgetspent_r.c (LINE_PARSER): Interpret numeric field values + as signed. + + * resolv/res_init.c (res_setoptions): Make the code more compact. + + [BZ #11558] + * resolv/res_init.c (res_setoptions): Recognize use-vc option and + set RES_USEVC. + + [BZ #11634] + * elf/Makefile (tests): Don't add tst-audit[67] without working -mavx. + + * malloc/malloc.h: Mark malloc hook variables as deprecated. + + [BZ #11781] + * malloc/malloc.h: Declare malloc hook variables as volatile. + + * locale/programs/locarchive.c (add_locale_to_archive): Fix typo + in last patch. + + [BZ #11799] + * sysdeps/unix/sysv/linux/bits/siginfo.h (SI_USER): Don't mention + raise in the comment. + * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise. + +2011-05-28 Ulrich Drepper + + [BZ #12811] + * posix/regex_internal.c (build_wcs_buffer): Don't signal we have to + grow the buffers more if it already has to be sufficient. + (build_wcs_upper_buffer): Likewise. + * posix/regexec.c (check_matching): Likewise. + (clean_state_log_if_needed): Likewise. + (extend_buffers): Don't enlarge buffers beyond size of the input + buffer. + Patches mostly by Emil Wojak . + * posix/bug-regex32.c: New file. + * posix/Makefile (tests): Add bug-regex32. + + * locale/findlocale.c (_nl_find_locale): Return right away if + _nl_explode_name failed. + * locale/programs/locarchive.c (add_locale_to_archive): Likewise. + + * sysdeps/unix/sysv/linux/socketcall.h (SOCKOP_sendmmsg): Define. + + * debug/xtrace.sh: Unify messages. + * malloc/memusage.sh: Likewise. + + [BZ #12813] + * sysdeps/unix/sysv/linux/x86_64/init-first.c (__vdso_time): Retrieve + time symbol from vDSO. Substitute with vsyscall if not available. + * sysdeps/unix/sysv/linux/x86_64/time.S [SHARED]: Use + __vdso_time. + + * sysdeps/unix/sysv/linux/internal_sendmmsg.S: New file. + * sysdeps/unix/sysv/linux/sendmmsg.c: New file. + * sysdeps/unix/sysv/linux/Makefile [subdir=socket] (sysdep_routines): + Add sendmmsg and internal_sendmmsg. + * sysdeps/unix/sysv/linux/Versions [GLIBC_2.14]: Add sendmmsg. + * sysdeps/unix/sysv/linux/bits/socket.h: Declare sendmmsg. + * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_SENDMMSG. + + * sysdeps/unix/sysv/linux/syscalls.list: Add setns entry. + * sysdeps/unix/sysv/linux/bits/sched.h: Declare setns. + * sysdeps/unix/sysv/linux/Versions [GLIBC_2.14]: Add setns. + +2011-05-27 Ulrich Drepper + + [BZ #12813] + * sysdeps/unix/sysv/linux/x86_64/init-first.c (__vdso_getcpu): + Retrieve getcpu symbol from vDSO. Substitute with vsyscall if not + available. + * sysdeps/unix/sysv/linux/x86_64/sched_getcpu.S [SHARED]: Use + __vdso_getcpu. + + [BZ #12814] + * iconvdata/Makefile (tests): Add bug-iconv9. + * iconvdata/bug-iconv9.c: New file. + +2011-05-27 Andreas Schwab + + [BZ #12814] + * iconvdata/iso-2022-jp.c (BODY): Fix invalid variable shadowing. + +2011-05-25 Jakub Jelinek + + * sysdeps/unix/sysv/linux/x86_64/sys/user.h + (struct user_regs_struct): Change intcs field back to cs. + +2011-05-25 Ulrich Drepper + + * po/ja.po: Update from translation team. + +2011-05-23 Ulrich Drepper + + [BZ #12795] + * sysdeps/unix/sysv/linux/bits/resource.h (RLIMIT_RTTIME): Define. + * sysdeps/unix/sysv/linux/sparc/bits/resource.h: Likewise. + +2011-05-20 Andreas Schwab + + * stdlib/longlong.h: Update from GCC. + +2011-05-23 Andreas Schwab + + * sysdeps/unix/sysv/linux/ia64/sysconf.c (HAS_CPUCLOCK): Add + parameter name. + * sysdeps/unix/sysv/linux/sysconf.c (has_cpuclock, HAS_CPUCLOCK): + Add parameter name. + (__sysconf): Pass it down. + +2011-05-22 Ulrich Drepper + + [BZ #12671] + * nis/nss_nis/nis-alias.c (_nss_nis_getaliasbyname_r): Use malloc in + some situations. + * nscd/nscd_getserv_r.c (nscd_getserv_r): Likewise. + * posix/glob.c (glob_in_dir): Take additional parameter alloca_used. + add in in __libc_use_alloca calls. Adjust callers. + (glob): Use malloc in some situations. + + * elf/dl-runtime.c (_dl_profile_fixup): Also store LA_SYMB_NOPLTENTER + and LA_SYMB_NOPLTEXIT in flags which are passed to pltenter and + pltexit. + +2011-05-21 Ulrich Drepper + + * sysdeps/unix/sysv/linux/bits/time.h: Define CLOCK_REALTIME_ALARM + and CLOCK_BOOTTIME_ALARM. + + [BZ #12782] + * string/xpg-strerror.c (__xpg_strerror_r): Fill buffer even if error + is returned. + + * string/_strerror.c (__strerror_r): Print negative errors as signed + numbers. + + [BZ #12777] + * iconvdata/cp1258.c (comp_table_data): Remove entry 0x00A5 0xEC. + (decomp_table): Change U0385 entry to emit 0xA5 0xEC. + * iconvdata/CP1258.irreversible: Adjust entry 0xA8EC. + + * configure.in: Fix typo in redirection and correct removal of test + files in two cases. + + [BZ #12788] + * locale/setlocale.c (new_composite_name): Fix test to check for + identical name of all categories. + + [BZ #12792] + * libio/filedoalloc.c (local_isatty): New function. + (_IO_file_doallocate): Use local_isatty. + * stdio-common/perror.c (perror): In case a new stream is used + forward the stream error. + * stdio-common/vfprintf.c (ARGCHECK): For read-only streams also set + error flag. + +2011-05-20 Ulrich Drepper + + [BZ #11869] + * sysdeps/posix/getaddrinfo.c (gaih_inet): Don't unconditionally use + alloca. + * include/alloca.h (extend_alloca_account): Define. + + [BZ #11857] + * posix/regex.h: Fix comments with documentation of user-accessible + fields after compilation and describe correct free'ing of pattern + after re_compile_pattern. + Patch by Reuben Thomas . + +2011-05-18 Ryan S. Arnold + + * sysdeps/powerpc/powerpc64/Makefile (no-special-regs): Add -mno-vsx + and -mno-altivec to prevent the compiler from using Altivec and/or + VSX instructions when the corresponding registers are not available. + +2011-05-19 Andreas Schwab + + * grp/compat-initgroups.c (__libc_use_alloca): Don't define. + +2011-05-19 Ulrich Drepper + + * libio/freopen.c (freopen): Use __dup2, not dup2. + * libio/freopen64.c (freopen64): Likewise. + +2011-05-17 H.J. Lu + + [BZ #12775] + * sysdeps/x86_64/fpu/e_powl.S: Fix a typo. + * math/Makefile (tests): Add test-powl. + (CFLAGS-test-powl.c): Define. + * math/test-powl.c: New file. + +2011-05-16 H.J. Lu + + * fileops.c (_IO_new_file_fopen): Get fd from _IO_fileno. + +2011-05-17 Ulrich Drepper + + [BZ #11837] + * iconvdata/gb18030.c: Update to GB18020-2005. + +2011-05-16 Ulrich Drepper + + * posix/regex.h (RE_SYNTAX_AWK, RE_SYNTAX_GNU_AWK, + RE_SYNTAX_POSIX_AWK): Update to match recent development. + Patch by Aharon Robbins . + + [BZ #11892] + * stdlib/putenv.c (putenv): Don't always create copy of the variable + on the stack. + + [BZ #11895] + * misc/pselect.c (__pselect): Handle timeout value errors hidden + through underflows. + + [BZ #12766] + * misc/error.c (error_at_line): Ensure file_name and old_file_name + point to strings before performing equality test for error_one_per_line + mode. + + [BZ #11697] + * login/programs/pt_chown.c (do_pt_chown): Always call chown. + + [BZ #11820] + * sysdeps/unix/sysv/linux/x86_64/sys/user.h + (struct user_fpregs_struct): Avoid __uint*_t types. + + [BZ #6420] + * malloc/mtrace.c (tr_where): Add additional parameter to point to + symbol info. Use it instead of calling _dl_addr locally. + (lock_and_info): New function. + (tr_freehook): Call lock_and_info and pass symbol info as additional + parameter to tr_where. + (tr_mallochook): Likewise. + (tr_reallochook): Likewise. + (tr_memalignhook): Likewise. + + * malloc/mtrace.c: Remove support for USE_MTRACE_FILE. It is not + used and couldn't be at all thread-safe. + +2011-05-15 Ulrich Drepper + + * libio/freopen.c (freopen): Don't close old file descriptor + before the new one is opened. Instead dup the new file descriptor + to the old one after the new stream is created. + * libio/freopen64.c (freopen64): Likewise. + * libio/libio.h: Define _IO_FLAGS2_NOCLOSE and _IO_FLAGS2_CLOEXEC. + * libio/fileops.c (_IO_new_file_close_it): Handle new + _IO_FLAGS2_NOCLOSE flag. + (_IO_new_file_fopen): Set _IO_FLAGS2_CLOEXEC for "e" mode. + If _IO_file_open didn't set FD_CLOEXEC do it after the call. + * libio/oldfileops.c (_IO_old_file_close_it): Handle new + _IO_FLAGS2_NOCLOSE flag. + * include/unistd.h: Add hidden_proto for dup3. + Define __have_dup3. + * io/dup3.c: Define hidden symbol. + * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_DUP3. + + [BZ #7101] + * posix/getopt.c (_getopt_internal_r): List all ambigious possibilities + when an incomplete long option is used. + * posix/tst-getopt_long1.c: New file. + * posix/Makefile (tests): Add tst-getopt_long1. + + [BZ #10138] + * scripts/config.guess: Update from autoconf-2.68. + * scripts/config.sub: Likewise. + + [BZ #10157] + * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Split out CPUTIME + tests into ... + (has_cpuclock): ...this. New function. + * sysdeps/unix/sysv/linux/ia64/sysconf.c: Just define HAS_CPUCLOCK + macro here based on has_cpuclock code. + + [BZ #10149] + * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_setup_stack_chk_guard): + First byte (not low byte) is now always NUL. + * sysdeps/generic/dl-osinfo.h (_dl_setup_stack_chk_guard): Likewise. + + * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_setup_stack_chk_guard): + Use non-cancelable interfaces. + + [BZ #9809] + * locale/iso-639.def: Add entry for Sorani. + + [BZ #11901] + * include/stdlib.h: Move include protection to the right place. + Define abort_msg_s. Declare __abort_msg with it. + * stdlib/abort.c (__abort_msg): Adjust type. + * assert/assert.c (__assert_fail_base): New function. Majority + of code from __assert_fail. Allocate memory for __abort_msg with + mmap. + (__assert_fail): Now call __assert_fail_base. + * assert/assert-perr.c: Remove bulk of implementation. Use + __assert_fail_base. + * include/assert.hL Declare __assert_fail_base. + * sysdeps/posix/libc_fatal.c: Allocate memory for __abort_msg with + mmap. + * sysdeps/unix/sysv/linux/libc_fatal.c: Likewise. + +2011-05-14 Ulrich Drepper + + [BZ #11952] + [BZ #12453] + * elf/dl-open.c (dl_open_worker): Delay calls to _dl_update_slotinfo + until all modules are registered in the DTV. + * elf/Makefile: Add rules to build and run tst-tls19. + * elf/tst-tls19.c: New file. + * elf/tst-tls19mod1.c: New file. + * elf/tst-tls19mod2.c: New file. + * elf/tst-tls19mod3.c: New file. + Patch mostly by Martin von Gagern . + + [BZ #12083] + * sysdeps/pthread/aio_misc.c (__aio_init): Compute optim.aio_num + correctly. + + [BZ #12601] + * iconvdata/cp932.c (BODY to UCS4): Fix incrementing inptr in case of + two-byte sequence errors. + * iconvdata/Makefile (tests): Add bug-iconv8. + * iconvdata/bug-iconv8.c: New file. + + [BZ #12626] + * sysdeps/generic/elf/backtracesymsfd.c (__backtrace_symbols_fd): Move + buf2 definition. + + * libio/fileops.c (_IO_new_file_close_it): Initialize write_status. + + [BZ #12432] + * sysdeps/ia64/backtrace.c (struct trace_reg): Add cfa element. + (dummy_getcfa): New function. + (init): Get _Unwind_GetCFA address, use dummy if not found. + (backtrace_helper): In recursion check, also check whether CFA changes. + (__backtrace): Completely initialize arg. + + * iconv/loop.c (SINGLE) [STORE_REST]: Add input bytes to bytebuf before + storing incomplete byte sequence in state object. Avoid testing for + guaranteed too small input if we know there is enough data available. + +2011-05-11 Andreas Schwab + + * Makeconfig (+link-pie): Indent. + * Rules (binaries-pie): Define if $(have-fpie) and + $(build-shared). + (binaries-shared): Also filter out $(binaries-pie). + ($(addprefix $(objpfx),$(binaries-pie))): New rule. + * nscd/Makefile (others-pie): Add nscd. + (LDFLAGS-nscd): Set this instead of relro-LDFLAGS. + ($(objpfx)nscd): Remove command override. + * login/Makefile (others-pie): Add pt_chown. + ($(objpfx)pt_chown): Remove command override. + * elf/Makefile: Add PIE tests to tests and tests-pie variables and + remove command overrides. + +2011-05-13 Ulrich Drepper + + * libio/tst_putwc.c: Fix error messages. + + [BZ #12724] + * libio/fileops.c (_IO_new_file_close_it): Always flush when + currently writing and seek to current position when not. + * libio/Makefile (tests): Add bug-fclose1. + * libio/bug-fclose1.c: New file. + +2011-05-12 Ulrich Drepper + + [BZ #12511] + * elf/dl-lookup.c (enter): Don't test for copy relocation here and + don't set DF_1_NODELETE here. + (do_lookup_x): When entering new entry test for copy relocation + and if necessary set DF_1_NODELETE flag. + * elf/tst-unique4.cc: New file. + * elf/tst-unique4.h: New file. + * elf/tst-unique4lib.cc: New file. + * elf/Makefile: Add rules to build and run tst-unique4. + Patch by Piotr Bury . + +2011-05-11 Ulrich Drepper + + [BZ #12052] + * sysdeps/posix/spawni.c (__spawni): Fix sched_setscheduler call. + + [BZ #12625] + * misc/mntent_r.c (addmntent): Flush the stream after the output + + [BZ #12393] + * elf/dl-load.c (is_trusted_path): Remove unnecessary test. + (is_trusted_path_normalize): Skip initial colon. Append slash + to empty buffer. Duplicate is_trusted_path code but allow + constructed patch to be prefix. + (is_dst): Allow $ORIGIN followed by /. + (_dl_dst_substitute): Correct clearing of check_for_trusted. + Correct testing of result of is_trusted_path_normalize + (decompose_rpath): Fix warning. + +2011-05-10 Ulrich Drepper + + [BZ #11257] + * grp/initgroups.c (internal_getgrouplist): When we found the service + list through the initgroups entry in nsswitch.conf do not always + continue on a successful lookup. Don't always use the + __nss_group_database value if it is set. + * nss/nsswitch.conf (initgroups): Change action for successful db + lookup to continue for compatibility. + +2011-05-09 Ulrich Drepper + + [BZ #11532] + * iconvdata/Makefile: Add rules to build CP770, CP771, CP772, CP773, + and CP774 modules. + * iconvdata/gconv-modules: Add entries for CP770, CP771, CP772, CP773, + and CP774 modules. + * iconvdata/tst-tables.sh: Likewise. + * iconvdata/cp770.c: New file. + * iconvdata/cp771.c: New file. + * iconvdata/cp772.c: New file. + * iconvdata/cp773.c: New file. + * iconvdata/cp774.c: New file. + * iconvdata/testdata/CP770: New file. + * iconvdata/testdata/CP770..UTF8: New file. + * iconvdata/testdata/CP771: New file. + * iconvdata/testdata/CP771..UTF8: New file. + * iconvdata/testdata/CP772: New file. + * iconvdata/testdata/CP772..UTF8: New file. + * iconvdata/testdata/CP773: New file. + * iconvdata/testdata/CP773..UTF8: New file. + * iconvdata/testdata/CP774: New file. + * iconvdata/testdata/CP774..UTF8: New file. + + * iconvdata/gen-8bit-gap-1.sh: End reading of charmap file at + END CHARMAP line. + * iconvdata/gen-8bit-gap.sh: Likewise. + * iconvdata/gen-8bit.sh: Likewise. + + * locale/iso-639.def: Add ary entry. + + [BZ #11258] + * locale/C-translit.h.in: Add U20A1 transliteration. + + [BZ #12178] + * locale/iso-639.def: Add wae entry. + Patch by Kevin Bortis . + + [BZ #12545] + * locale/programs/localedef.c (construct_output_path): Use ssize_t + for n. + + [BZ #12711] + * locale/C-translit.h.in: Add entry for U20B9. + Patch by pravin.d.s@gmail.com. + +2011-05-08 Ulrich Drepper + + [BZ #12713] + * sysdeps/unix/sysv/linux/getcwd.c: If getcwd syscall report + ENAMETOOLONG use generic getcwd. + * sysdeps/posix/getcwd.c: Add support to use openat. Make usable + in rtld. Use *stat64. + * sysdeps/unix/sysv/linux/Makefile [subdir=elf] (sysdep-rtld-routines): + Add dl-getcwd, dl-openat64, dl-opendir, dl-fxstatat64. + * sysdeps/unix/sysv/linux/dl-getcwd.c: New file. + * sysdeps/unix/sysv/linux/dl-openat64.c: New file. + * sysdeps/unix/sysv/linux/dl-opendir.c: New file. + * sysdeps/unix/sysv/linux/dl-fxstat64.c: New file. + * include/sys/stat.h: Define __fstatat, __lstat64, __fstat64, and + __fstatat64 macros. + * include/dirent.h: Add libc_hidden_proto for rewinddir. + * dirent/rewinddir.c: Add libc_hidden_def. + * sysdeps/mach/hurd/rewinddir.c: Likewise. + * sysdeps/unix/rewinddir.c: Likewise. Don't do locking outside libc. + + * include/dirent.h (__alloc_dir): Add flags parameter. + * sysdeps/unix/fdopendir.c (__fdopendir): Pass flags to __alloc_dir. + * sysdeps/unix/opendir.c (__opendir): Pass 0 in new parameter to + __alloc_dir. + (__alloc_dir): Take new parameter. Don't call fcntl for invocations + from fdopendir if O_CLOEXEC is already set. + +2011-03-15 Alan Modra + + * elf/dl-reloc.c (_dl_try_allocate_static_tls ): Handle + l_tls_firstbyte_offset non-zero. Save padding offset in + l_tls_firstbyte_offset for later use. + * elf/dl-close.c (_dl_close_worker ): Correct code + freeing static tls block. + +2011-03-05 Jonathan Nieder + + * sysdeps/unix/sysv/linux/sys/param.h: Fix an #ifndef __undef_ARG_MAX + where #ifdef was intended. The intent is to prevent ARG_MAX from + being defined by the kernel headers. + +2011-05-07 Ulrich Drepper + + [BZ #12734] + * resolv/resolv.h: Define RES_NOTLDQUERY. + * resolv/res_init.c (res_setoptions): Recognize no_tld_query and + no-tld-query and set RES_NOTLDQUERY. + * resolv/res_debug.c (p_option): Handle RES_NOTLDQUERY. + * resolv/res_query.c (__libc_res_nsearch): Backport changes from + modern BIND to search name as TLD unless forbidden. + +2011-05-07 Petr Baudis + Ulrich Drepper + + [BZ #12393] + * elf/dl-load.c (fillin_rpath): Move trusted path check... + (is_trusted_path): ...to here. + (is_trusted_path_normalize): Wrapper for /../ and /./ normalization. + (_dl_dst_substitute): Verify expanded $ORIGIN path elements + using is_trusted_path_normalize() in setuid scripts. + +2011-05-06 Paul Pluzhnikov + + * sysdeps/unix/sysv/linux/sys/sysmacros.h: Add missing + __BEGIN/__END_DECLS. + +2011-05-06 Ulrich Drepper + + * nss/nss_files/files-initgroups.c (_nss_files_initgroups_dyn): Return + NSS_STATUS_NOTFOUND if no record was found. + +2011-05-05 Andreas Schwab + + * sunrpc/Makefile (headers): Add rpc/netdb.h. + (headers-not-in-tirpc): Remove rpc/netdb.h + * resolv/netdb.h: Revert last change. + +2011-05-05 Paul Pluzhnikov + + * Makeconfig (link-libc-static): Use --{start,end}-group to handle + circular dependency between libgcc.a and libc.a. + +2011-05-05 Andreas Schwab + + * resolv/netdb.h: Don't include . + * nis/Makefile: Don't install rpcsvc/*. + * inet/protocols/timed.h: Include and + instead of . + (MAXHOSTNAMELEN): Define. + +2011-05-03 Andreas Schwab + + * elf/ldconfig.c (add_dir): Don't crash on empty path. + +2011-04-28 Maciej Babinski + + [BZ #12714] + * sysdeps/posix/getaddrinfo.c (gaih_inet): Don't bypass + gethostbyname4_r when IPv6 results are possible. + +2011-05-02 Ulrich Drepper + + [BZ #12723] + * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Implement + _PC_PIPE_BUF handling. + +2011-04-30 Bruno Haible + + [BZ #12717] + * conform/data/netdb.h-data (getnameinfo): Make POSIX compliant. + * resolv/netdb.h (getnameinfo): Change type of flags parameter + to 'int'. + * inet/getnameinfo.c (getnameinfo): Likewise. + +2011-04-29 Ulrich Drepper + + * grp/initgroups.c (internal_getgrouplist): Prefer initgroups setting + to groups setting in database lookup. + * nss/nsswitch.conf: Add initgroups entry. + +2011-04-22 Ulrich Drepper + + [BZ #12685] + * libio/fileops.c (_IO_new_file_fopen): Scan up to 7 bytes of the + mode string. + Patch by Eric Blake . + +2011-04-20 H.J. Lu + + * sunrpc/Makefile (need-export-routines): Add svc_run. + (routines): Remove svc_run. + ($(objpfx)thrsvc): Add $(common-objpfx)linkobj/libc.so. + * sunrpc/clnt_perr.c (clnt_perrno): Export. + * sunrpc/svc_run.c (svc_run): Likewise. + * sunrpc/svc_udp.c (svcudp_create): Likewise. + +2011-04-21 Ulrich Drepper + + * nss/nss_files/files-initgroups.c (_nss_files_initgroups_dyn): Fix + problem in reallocation in last patch. + +2011-04-20 Ulrich Drepper + + * sunrpc/Makefile: Move inclusion of Rules. + +2011-04-19 Ulrich Drepper + + * nss/nss_files/files-initgroups.c: New file. + * nss/Makefile (libnss_files-routines): Add files-initgroups. + * nss/Versions (libnss_files) [GLIBC_PRIVATE]: Export + _nss_files_initgroups_dyn. + +2011-03-31 Richard Sandiford + + * elf/elf.h (R_ARM_IRELATIVE): Define. + +2011-04-19 Ulrich Drepper + + * po/ru.po: Update from translation team. + +2011-04-17 Ulrich Drepper + + * sunrpc/Makefile ($(rpc-compat-routines.os)): Add before-compile to + dependencies. + +2011-02-06 Mike Frysinger + + [BZ #12653] + * sysdeps/i386/i686/multiarch/memcpy-ssse3-rep.S: Only protect + MEMCPY_CHK with USE_AS_BCOPY ifdef check. + * sysdeps/i386/i686/multiarch/memcpy-ssse3.S: Likewise. + * sysdeps/x86_64/multiarch/memcpy-ssse3.S: Likewise. + * sysdeps/x86_64/multiarch/memcpy-ssse3-back.S: Likewise. + +2011-03-28 Andreas Schwab + + * sysdeps/powerpc/powerpc32/power4/strncmp.S: Don't read past + differing bytes. + * sysdeps/powerpc/powerpc64/power4/strncmp.S: Likewise. + * sysdeps/powerpc/powerpc32/power7/strncmp.S: Likewise. + * sysdeps/powerpc/powerpc64/power7/strncmp.S: Likewise. + +2011-04-17 Ulrich Drepper + + [BZ #12420] + * sysdeps/unix/sysv/linux/x86_64/getcontext.S: Reload context after + storing it. + * stdlib/bug-getcontext.c: New file. + * stdlib/Makefile: Add rules to build and run bug-getcontext. + +2011-04-13 Andreas Krebbel + + * sysdeps/s390/s390-64/utf16-utf32-z9.c: Wrap the z9-109 + instructions into .machine "z9-109". + * sysdeps/s390/s390-64/utf8-utf16-z9.c: Likewise. + * sysdeps/s390/s390-64/utf8-utf32-z9.c: Likewise. + +2011-04-11 Andreas Krebbel + + * sysdeps/s390/s390-32/elf/start.S (_start): Skip extra zeroes + between environment variables and auxiliary vector. + +2011-04-16 Ulrich Drepper + + * Makefile: Add rules to build linkobj/libc.so. + * include/libc-symbols.h: Define libc_hidden_nolink. + * include/rpc/auth.h: Mark functions which are to be hidden. + * include/rpc/auth_des.h: Likewise. + * include/rpc/auth_unix.h: Likewise. + * include/rpc/clnt.h: Likewise. + * include/rpc/des_crypt.h: Likewise. + * include/rpc/key_prot.h: Likewise. + * include/rpc/pmap_clnt.h: Likewise. + * include/rpc/pmap_prot.h: Likewise. + * include/rpc/pmap_rmt.h: Likewise. + * include/rpc/rpc_msg.h: Likewise. + * include/rpc/svc.h: Likewise. + * include/rpc/svc_auth.h: Likewise. + * include/rpc/xdr.h: Likewise. + * nis/Makefile: Link all DSOs against linkobj/libc.so. + * nss/Makefile: Likewise. + * sunrpc/Makefile: Don't install headers. Build library with normal + entry points. Don't build rpcinfo. Link RPC tests appropriately. + * sunrpc/auth_des.c: Hide exported symbols by default, export some + for the compat linking library. Remove use of INTDEF/INTUSE. + * sunrpc/auth_none.c: Likewise. + * sunrpc/auth_unix.c: Likewise. + * sunrpc/authdes_prot.c: Likewise. + * sunrpc/authuxprot.c: Likewise. + * sunrpc/clnt_gen.c: Likewise. + * sunrpc/clnt_perr.c: Likewise. + * sunrpc/clnt_raw.c: Likewise. + * sunrpc/clnt_simp.c: Likewise. + * sunrpc/clnt_tcp.c: Likewise. + * sunrpc/clnt_udp.c: Likewise. + * sunrpc/clnt_unix.c: Likewise. + * sunrpc/des_crypt.c: Likewise. + * sunrpc/des_soft.c: Likewise. + * sunrpc/get_myaddr.c: Likewise. + * sunrpc/key_call.c: Likewise. + * sunrpc/key_prot.c: Likewise. + * sunrpc/netname.c: Likewise. + * sunrpc/pm_getmaps.c: Likewise. + * sunrpc/pm_getport.c: Likewise. + * sunrpc/pmap_clnt.c: Likewise. + * sunrpc/pmap_prot.c: Likewise. + * sunrpc/pmap_prot2.c: Likewise. + * sunrpc/pmap_rmt.c: Likewise. + * sunrpc/publickey.c: Likewise. + * sunrpc/rpc_cmsg.c: Likewise. + * sunrpc/rpc_common.c: Likewise. + * sunrpc/rpc_dtable.c: Likewise. + * sunrpc/rpc_prot.c: Likewise. + * sunrpc/rpc_thread.c: Likewise. + * sunrpc/rtime.c: Likewise. + * sunrpc/svc.c: Likewise. + * sunrpc/svc_auth.c: Likewise. + * sunrpc/svc_authux.c: Likewise. + * sunrpc/svc_raw.c: Likewise. + * sunrpc/svc_run.c: Likewise. + * sunrpc/svc_simple.c: Likewise. + * sunrpc/svc_tcp.c: Likewise. + * sunrpc/svc_udp.c: Likewise. + * sunrpc/svc_unix.c: Likewise. + * sunrpc/svcauth_des.c: Likewise. + * sunrpc/xcrypt.c: Likewise. + * sunrpc/xdr.c: Likewise. + * sunrpc/xdr_array.c: Likewise. + * sunrpc/xdr_float.c: Likewise. + * sunrpc/xdr_intXX_t.c: Likewise. + * sunrpc/xdr_mem.c: Likewise. + * sunrpc/xdr_rec.c: Likewise. + * sunrpc/xdr_ref.c: Likewise. + * sunrpc/xdr_sizeof.c: Likewise. + * sunrpc/xdr_stdio.c: Likewise. + +2011-04-10 Ulrich Drepper + + [BZ #12650] + * sysdeps/i386/dl-tls.h: Define TLS_DTV_UNALLOCATED. + * sysdeps/ia64/dl-tls.h: Likewise. + * sysdeps/powerpc/dl-tls.h: Likewise. + * sysdeps/s390/dl-tls.h: Likewise. + * sysdeps/sh/dl-tls.h: Likewise. + * sysdeps/sparc/dl-tls.h: Likewise. + * sysdeps/x86_64/dl-tls.h: Likewise. + * elf/dl-tls.c: Don't define TLS_DTV_UNALLOCATED here. + +2011-03-14 Andreas Schwab + + * elf/dl-load.c (_dl_dst_substitute): When skipping the first + rpath element also skip the following colon. + (expand_dynamic_string_token): Add is_path parameter and pass + down to DL_DST_REQUIRED and _dl_dst_substitute. + (decompose_rpath): Call expand_dynamic_string_token with + non-zero is_path. Ignore empty rpaths. + (_dl_map_object_from_fd): Call expand_dynamic_string_token + with zero is_path. + +2011-04-08 Andreas Schwab + + * sysdeps/unix/sysv/linux/powerpc/powerpc64/sync_file_range.c: + Make cancelable. + +2011-04-09 Ulrich Drepper + + [BZ #12655] + * sysdeps/unix/sysv/linux/sys/syscall.h: Fix comment. + Patch by Filipe David Manana . + +2011-04-07 Andreas Schwab + + * sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S (CALL_FAIL): + Maintain aligned stack. + (CHECK_RSP): Remove unused macro. + +2011-04-03 Ulrich Drepper + + * sysdeps/x86_64/cacheinfo.c (intel_02_known): Fix typo in table. + * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Likewise. + +2011-04-02 Ulrich Drepper + + * sysdeps/unix/sysv/linux/bits/time.h (CLOCK_BOOTTIME): Define. + + * include/features.h: Mention __USE_XOPEN2K8 in comment. + +2011-03-26 H.J. Lu + + [BZ #12518] + * sysdeps/x86_64/Versions: Add memcpy to GLIBC_2.14. + * sysdeps/x86_64/memcpy.S: Provide GLIBC_2_14 memcpy. + * sysdeps/x86_64/memmove.c: New file. + * sysdeps/x86_64/multiarch/memcpy.S: Include . + (memcpy): Renamed to ... + (__new_memcpy): This. + (memcpy): Provide GLIBC_2_14 memcpy. + * sysdeps/x86_64/multiarch/memmove.c: Include . + (memcpy): Provide GLIBC_2_2_5 memcpy. + +2011-04-01 Ulrich Drepper + + [BZ #12631] + * wcsmbs/wchar.h: Make wcpcpy and wcpncpy visible for __USE_XOPEN2K8. + +2011-03-30 Andreas Schwab + + * misc/syncfs.c: New file. + * misc/Makefile (routines): Add syncfs. + * posix/unistd.h: Declare syncfs. + * sysdeps/unix/syscalls.list: Add syncfs. + +2011-04-01 Andreas Schwab + + * sysdeps/unix/sysv/linux/Versions: Rename open_by_handle to + open_by_handle_at. + * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/syscalls.list: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise. + +2011-04-01 Ulrich Drepper + + * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Define O_PATH. + * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise. + + * io/Makefile: Compile fallocate.c, fallocate64.c, and + sync_file_range.c with -fexceptions. + * sysdeps/unix/sysv/linux/fallocate.c: Make cancelable. + * sysdeps/unix/sysv/linux/fallocate64.c: Likewise. + * sysdeps/unix/sysv/linux/i386/fallocate.c: Likewise. + * sysdeps/unix/sysv/linux/i386/fallocate64.c: Likewise. + * sysdeps/unix/sysv/linux/wordsize-64/fallocate.c: Likewise. + * sysdeps/unix/sysv/linux/sync_file_range.c: Likewise. + * sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: Mark + sync_file_range as cancellation point + * sysdeps/unix/sysv/linux/i386/sync_file_range.c: New file. This is + now a wrapper around __call_sync_file_range with cancellation handling. + * sysdeps/unix/sysv/linux/i386/sync_file_range.S: Renamed to ... + * sysdeps/unix/sysv/linux/i386/call_sync_file_range.S: ...this. Change + function name to __call_sync_file_range. + * sysdeps/unix/sysv/linux/i386/Makefile [subdir=io] (sysdep_routines): + Add call_sync_file_range. + +2011-04-01 Andreas Schwab + + * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add + bits/timex.h. + +2011-04-01 Ulrich Drepper + + * iconv/iconv.h: Fix typo in comment. + * io/fcntl.h: Likewise. + * libio/stdio.h: Likewise. + * posix/spawn.h: Likewise. + * posix/unistd.h: Likewise. + * stdlib/stdlib.h: Likewise. + * time/time.h: Likewise. + * wcsmbs/wchar.h: Likewise. + + * sysdeps/unix/sysv/linux/Versions [GLIBC_2.14] (name_to_handle_at, + open_by_handle): Add. + * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Define struct file_handle + and MAX_HANDLE_SZ. Declare name_to_handle_at and open_by_handle. + Augment a few comments. + * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/syscalls.list: Add name_to_handle_at and + open_by_handle. + + * io/fcntl.h (AT_EMPTY_PATH): Define. + +2011-03-30 Ulrich Drepper + + * sysdeps/unix/sysv/linux/syscalls.list: Add clock_adjtime. + * sysdeps/unix/sysv/linux/bits/time.h: New file. + * sysdeps/unix/sysv/linux/sys/timex.h: Move struct timex definition + to... + * sysdeps/unix/sysv/linux/bits/timex.h: ...here. New file. + * Versions.def: Add GLIBC_2.14. + * sysdeps/unix/sysv/linux/Versions [GLIBC_2.14] (clock_adjtime): + Export. + +2011-03-22 Ulrich Drepper + + * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_check_word): Increment + round counter. + * sysdeps/x86_64/cacheinfo.c (intel_check_word): Likewise. + +2011-03-20 H.J. Lu + + [BZ #12597] + * string/test-strncmp.c (do_page_test): New function. + (check2): Likewise. + (test_main): Call check2. + * sysdeps/x86_64/multiarch/strcmp.S: Properly cross page boundary. + +2011-03-20 Ulrich Drepper + + [BZ #12587] + * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_check_word): + Handle cache information in CPU leaf 4. + * sysdeps/x86_64/cacheinfo.c (intel_check_word): Likewise. + +2011-03-18 Ulrich Drepper + + [BZ #12583] + * posix/fnmatch.c (fnmatch): Check size of pattern in wide + character representation. + Partly based on a patch by Tomas Hoger . + +2011-03-16 Ryan S. Arnold + + * sysdeps/powerpc/powerpc32/power6/fpu/s_isnanf.S (isnanf): Fix + END(__isnan) to END(__isnanf) to match function entry point/label + EALIGN(__isnanf,...). + +2011-03-10 Jakub Jelinek + + * wcsmbs/wchar.h (wmemcmp): Remove __restrict qualifiers. + +2011-03-10 Ulrich Drepper + + [BZ #12510] + * elf/dl-lookup.c (do_lookup_x): For copy relocations of unique objects + copy from the symbol referenced in the relocation to initialize the + used variable. + Patch by Piotr Bury . + * elf/Makefile: Add rules to build and tst-unique3. + * include/bits/dlfcn.h: Remove _dl_mcount_wrapper_check declaration. + * elf/tst-unique3.cc: New file. + * elf/tst-unique3.h: New file. + * elf/tst-unique3lib.cc: New file. + * elf/tst-unique3lib2.cc: New file. + + * elf/Makefile: Don't run tst-execstack* tests of SELinux is enabled. + +2011-03-10 Mike Frysinger + + * sysdeps/sparc/sparc64/elf/configure.in (libc_cv_sparc64_tls): Add + $LDFLAGS and -nostdlib -nostartfiles to linking step. Change main + to _start. + +2011-03-06 Ulrich Drepper + + * elf/dl-load.c (_dl_map_object): If we are looking for the first + to-be-loaded object along a path to loader is ld.so. + +2011-03-02 Harsha Jagasia + Ulrich Drepper + + * sysdeps/x86_64/memset.S: After aligning destination, code + branches to different locations depending on the value of + misalignment, when multiarch is enabled. Fix this. + +2011-03-02 Harsha Jagasia + + * sysdeps/x86_64/cacheinfo.c (init_cacheinfo): + Set _x86_64_preferred_memory_instruction for AMD processsors. + * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features): + Set bit_Prefer_SSE_for_memop for AMD processors. + +2011-03-04 Ulrich Drepper + + * libio/fmemopen.c (fmemopen): Optimize a bit. + +2011-03-03 Andreas Schwab + + * libio/fmemopen.c (fmemopen): Don't read past end of buffer. + +2011-03-03 Roland McGrath + + * setjmp/bits/setjmp2.h: Canonicalize comment formatting. + +2011-02-28 Aurelien Jarno + + * sysdeps/sparc/sparc64/multiarch/memset.S(__bzero): Call + __bzero_ultra1 instead of __memset_ultra1. + +2011-02-23 Andreas Schwab + Ulrich Drepper + + [BZ #12509] + * include/link.h (struct link_map): Add l_orig_initfini. + * elf/dl-load.c (_dl_map_object_from_fd): Free realname before + returning unsuccessfully. + * elf/dl-close.c (_dl_close_worker): If this is the last explicit + close of a file loaded at startup, restore the original l_initfini + list. + * elf/dl-deps.c (_dl_map_object_deps): Don't free old l_initfini + list, store the pointer. + * elf/Makefile ($(objpfx)noload-mem): New rule. + (noload-ENV): Define. + (tests): Add $(objpfx)noload-mem. + * elf/noload.c: Include . + (main): Call mtrace. Close all opened handles. + +2011-02-17 Andreas Schwab + + [BZ #12454] + * elf/dl-deps.c (_dl_map_object_deps): Signal error early when + dependencies are missing. + +2011-02-22 Samuel Thibault + + Fix __if_freereq crash: Unlike the generic version which uses free, + Hurd needs munmap. + * sysdeps/mach/hurd/ifreq.h: New file. + +2011-01-27 Petr Baudis + Ulrich Drepper + + [BZ 12445]# + * stdio-common/vfprintf.c (vfprintf): Pass correct newlen + to extend_alloca(). + * stdio-common/bug23.c: New file. + * stdio-common/Makefile (tests): Add bug23. + +2010-09-28 Andreas Schwab + Ulrich Drepper + + [BZ #12489] + * elf/rtld.c (dl_main): Move setting of GLRO(dl_init_all_dirs) + before performing relro protection. At old place add assertion + to make sure nothing changed. + +2011-02-17 Nathan Sidwell + Glauber de Oliveira Costa + + * elf/elf.h: Add new ARM TLS relocs. + +2011-02-16 Ryan S. Arnold + + * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: + (INTERNAL_VSYSCALL_NCS INTERNAL_SYSCALL_NCS): Remove erroneous (int) + cast from r3. + * sysdeps/wordsize-64/Makefile: New file. Add tst-writev to + 'tests' variable. + * sysdeps/wordsize-64/tst-writev.c: New file. + +2011-02-15 Ryan S. Arnold + + * sysdeps/powerpc/powerpc64/power7/Makefile: New file which adds + -mno-vsx to the CFLAGS-rtld.c variable to avoid using VSX registers and + insns in _dl_start to prevent a TOC reference before relocs are + resolved. + +2011-02-15 Ulrich Drepper + + [BZ #12469] + * Makeconfig: Remove RANLIB definition. + * Makerules: Don't use RANLIB. + * aclocal.m4: Remove ranlib test. + * configure.in: No need to check for ranlib. + * elf/rtld-Rules: Don't use RANLIB. + +2011-02-16 Samuel Thibault + + * sysdeps/mach/i386/sysdep.h: Add _MACH_I386_SYSDEP_H inclusion + protection macro. + * sysdeps/mach/i386/thread_state.h: Add _MACH_I386_THREAD_STATE_H + inclusion protection macro. + + * stdio-common/psiginfo.c (psiginfo): Check pinfo->si_signo against + SIGRTMIN and SIGRTMAX and print information in that case only when + SIGRTMIN is defined. + +2011-02-11 Jakub Jelinek + + * stdio-common/printf-parsemb.c (__parse_one_specmb): Handle + arginfo fn returning -1. + + * stdio-common/_i18n_number.h (_i18n_number_rewrite): Ensure decimal + and thousands string is zero terminated. + +2011-02-03 Andreas Schwab + + * sysdeps/unix/sysv/linux/sparc/bits/socket.h: Sync with + sysdeps/unix/sysv/linux/bits/socket.h. + +2011-01-30 Samuel Thibault + + * bits/sched.h (__CPU_ZERO, __CPU_SET, __CPU_CLR, __CPU_ISSET) + (__CPU_COUNT): Remove old macros. + (__CPU_ZERO_S, __CPU_SET_S, __CPU_CLR_S, __CPU_ISSET_S) + (__CPU_COUNT, __CPU_EQUAL_S, __CPU_OP_S, __CPU_ALLOC_SIZE) + (__CPU_ALLOC, __CPU_FREE): Add macros. + (__sched_cpualloc, __sched_cpufree): Add declarations. + +2011-02-05 Ulrich Drepper + + * nscd/nscd-client.h: Define MAX_TIMEOUT_VALUE. + (struct datahead): Reuse 32 bits of the alignment for a TTL field. + * nscd/aicache.c (addhstaiX): Return timeout of added value. + (readdhstai): Return value of addhstaiX call. + * nscd/grpcache.c (cache_addgr): Return timeout of added value. + (addgrbyX): Return value returned by cache_addgr. + (readdgrbyname): Return value returned by addgrbyX. + (readdgrbygid): Likewise. + * nscd/pwdcache.c (cache_addpw): Return timeout of added value. + (addpwbyX): Return value returned by cache_addpw. + (readdpwbyname): Return value returned by addhstbyX. + (readdpwbyuid): Likewise. + * nscd/servicescache.c (cache_addserv): Return timeout of added value. + (addservbyX): Return value returned by cache_addserv. + (readdservbyname): Return value returned by addservbyX: + (readdservbyport): Likewise. + * nscd/hstcache.c (cache_addhst): Return timeout of added value. + (addhstbyX): Return value returned by cache_addhst. + (readdhstbyname): Return value returned by addhstbyX. + (readdhstbyaddr): Likewise. + (readdhstbynamev6): Likewise. + (readdhstbyaddrv6): Likewise. + * nscd/initgrcache.c (addinitgroupsX): Return timeout of added value. + (readdinitgroups): Return value returned by addinitgroupsX. + * nscd/cache.c (readdfcts): Change return value of functions to time_t. + (prune_cache): Keep track of timeout value of re-added entries. + * nscd/connections.c (nscd_run_prune): Use MAX_TIMEOUT_VALUE. + * nscd/nscd.h: Adjust prototypes of readd* functions. + +2011-02-04 Roland McGrath + + * nis/nis_server.c (nis_servstate): Use the right name for 0. + (nis_stats): Likewise. + * nis/nis_modify.c (nis_modify): Likewise. + * nis/nis_remove.c (nis_remove): Likewise. + * nis/nis_add.c (nis_add): Likewise. + + * elf/dl-object.c (_dl_new_object): Remove unused variable L. + + * posix/fnmatch_loop.c: Add some consts. + + * sysdeps/x86_64/multiarch/memset-x86-64.S: Add an #undef. + +2011-02-02 H.J. Lu + + [BZ #12460] + * config.make.in (config-cflags-novzeroupper): Define. + * configure.in: Substitute libc_cv_cc_novzeroupper. + * elf/Makefile (AVX-CFLAGS): Define. + (CFLAGS-tst-audit4.c): Replace -mavx with $(AVX-CFLAGS). + (CFLAGS-tst-auditmod4a.c): Likewise. + (CFLAGS-tst-auditmod4b.c): Likewise. + (CFLAGS-tst-auditmod6b.c): Likewise. + (CFLAGS-tst-auditmod6c.c): Likewise. + (CFLAGS-tst-auditmod7b.c): Likewise. + * sysdeps/i386/configure.in: Check -mno-vzeroupper. + +2011-02-02 Ulrich Drepper + + * elf/dl-runtime.c (_dl_call_pltexit): Pass correct address of the + function to the callback. + Patch partly by Jiri Olsa . + +2011-02-02 Andreas Schwab + + * shadow/sgetspent.c: Check return value of __sgetspent_r instead + of errno. + +2011-01-19 Ulrich Drepper + + [BZ #11724] + * elf/dl-deps.c (_dl_map_object_deps): Rewrite sorting determining order + of constructors. + * elf/dl-fini.c (_dl_sort_fini): Rewrite sorting determining order + of destructors. + (_dl_fini): Don't call _dl_sort_fini if there is only one object. + + [BZ #11724] + * elf/Makefile: Add rules to build and run new test. + * elf/tst-initorder.c: New file. + * elf/tst-initorder.exp: New file. + * elf/tst-initordera1.c: New file. + * elf/tst-initordera2.c: New file. + * elf/tst-initordera3.c: New file. + * elf/tst-initordera4.c: New file. + * elf/tst-initorderb1.c: New file. + * elf/tst-initorderb2.c: New file. + * elf/tst-order-a1.c: New file. + * elf/tst-order-a2.c: New file. + * elf/tst-order-a3.c: New file. + * elf/tst-order-a4.c: New file. + * elf/tst-order-b1.c: New file. + * elf/tst-order-b2.c: New file. + * elf/tst-order-main.c: New file. + New test case by George Gensure . + +2010-10-01 Andreas Schwab + + * sysdeps/posix/getaddrinfo.c (gaih_inet): Don't discard result of + decoding ACE if AI_CANONIDN. + +2011-01-18 Ulrich Drepper + + * elf/Makefile: Build IFUNC tests unless multi-arch = no. + +2011-01-17 Ulrich Drepper + + * version.h (RELEASE): Bump for 2.13 release. + * include/features.h: (__GLIBC_MINOR__): Bump to 13. + + * io/fcntl.h: Define AT_NO_AUTOMOUNT. + + * sysdeps/unix/sysv/linux/i386/bits/mman.h: Define MADV_HUGEPAGE and + MADV_NOHUGEPAGE. + * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise. + * sysdeps/unix/sysv/linux/sh/bits/mman.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/mman.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Likewise. + + * posix/getconf.c: Update copyright year. + * catgets/gencat.c: Likewise. + * csu/version.c: Likewise. + * debug/catchsegv.sh: Likewise. + * debug/xtrace.sh: Likewise. + * elf/ldconfig.c: Likewise. + * elf/ldd.bash.in: Likewise. + * elf/sprof.c (print_version): Likewise. + * iconv/iconv_prog.c: Likewise. + * iconv/iconvconfig.c: Likewise. + * locale/programs/locale.c: Likewise. + * locale/programs/localedef.c: Likewise. + * malloc/memusage.sh: Likewise. + * malloc/mtrace.pl: Likewise. + * nscd/nscd.c (print_version): Likewise. + * nss/getent.c: Likewise. + + * sysdeps/unix/sysv/linux/bits/socket.h: Define AF_CAIF, AF_ALG, + PF_CAIF, and PF_ALG. + * sysdeps/unix/sysv/linux/sparc/bits/socket.h: Likewise. + +2011-01-16 Andreas Schwab + + * elf/Makefile (tlsmod17a-modules, tlsmod18a-modules): Define. + (modules-names): Use them. + (ifunc-test-modules, ifunc-pie-tests): Define. + (extra-test-objs): Add tlsmod17a-modules, tlsmod18a-modules, + tst-pie1, ifunc-test-modules and ifunc-pie-tests objects. + (test-extras): Likewise. + ($(patsubst %,$(objpfx)%.os,$(tlsmod17a-modules))): Use + $(compile-command.c). + ($(patsubst %,$(objpfx)%.os,$(tlsmod18a-modules))): Likewise. + (all-built-dso): Define. + (check-textrel.out, check-execstack.out): Depend on it. + + * configure.in: Don't override --enable-multi-arch. + +2011-01-15 Ulrich Drepper + + [BZ #6812] + * nscd/hstcache.c (tryagain): Define. + (cache_addhst): Return tryagain not notfound for temporary errors. + (addhstbyX): Also set h_errno to TRY_AGAIN when memory allocation + failed. + +2011-01-14 Ulrich Drepper + + [BZ #10563] + * sysdeps/unix/sysv/linux/i386/setgroups.c: Use INLINE_SETXID_SYSCALL + to make the syscall. + * sysdeps/unix/sysv/linux/setgroups.c: New file. + + [BZ #12378] + * posix/fnmatch_loop.c (FCT): When matching '[' keep track of beginning + and fall back to matching as normal character if the string ends before + the matching ']' is found. This is what POSIX requires. + * posix/testfnm.c: Adjust test result. + * posix/globtest.sh: Adjust test result. Add new test. + * posix/tst-fnmatch.input: Likewise. + * posix/tst-fnmatch2.c: Add new test. + +2010-12-28 Andreas Schwab + + * elf/Makefile (check-execstack): Revert last change. Depend on + check-execstack.h. + (check-execstack.h): New target. + (generated): Add check-execstack.h. + * elf/check-execstack.c: Include "check-execstack.h". + (main): Revert last change. + (handle_file): Return zero if GNU_STACK is absent and + DEFAULT_STACK_PERMS doesn't include PF_X. + +2011-01-13 Ulrich Drepper + + * sysdeps/posix/spawni.c (__spawni): Don't fail if close file action + in child fails because the descriptor is already closed. + * include/sys/resource.h: Add libc_hidden_proto for getrlimit64. + * sysdeps/unix/sysv/linux/getrlimit64.c: Add libc_hidden_def. + * sysdeps/unix/sysv/linux/i386/getrlimit64.c: Likewise. + + [BZ #12397] + * sysdeps/unix/sysv/linux/mkdirat.c (mkdirat): Fix handling of missing + syscall. + + [BZ #10484] + * nss/nss_files/files-hosts.c (HOST_DB_LOOKUP): Handle overflows of + temporary buffer used to handle multi lookups locally. + * include/alloca.h: Add libc_hidden_proto for __libc_alloca_cutoff. + +2011-01-12 Ulrich Drepper + + * elf/dl-dst.h (DL_DST_REQUIRED): Allow l_origin to be NULL when + loader is ld.so. + +2011-01-10 Paul Pluzhnikov + + * sysdeps/i386/Makefile: stdlib/cxa_finalize.c needs 16-byte stack + alignment for SSE2. + +2011-01-12 Ulrich Drepper + + [BZ #12394] + * stdio-common/printf_fp.c (__printf_fp): Add more room for grouping + characters. When rounding increased number of integer digits recompute + number of groups. + * stdio-common/tst-grouping.c: New file. + * stdio-common/Makefile: Add rules to build and run tst-grouping. + +2011-01-09 Ulrich Drepper + + * sysdeps/i386/bits/select.h: Don't use asm code for __FD_SET, + __FD_CLR, and __FS_ISSET. gcc generates better code on its own. + + * sysdeps/x86_64/bits/select.h: Mark value of __FD_SET and __FD_CLR as + void. + * bits/select.h: Likewise. + +2011-01-08 Ulrich Drepper + + * po/ja.po: Update from translation team. + +2011-01-04 David S. Miller + + [BZ #11155] + * sysdeps/unix/sysv/linux/sparc/sparc64/fxstat.c: Use i386's + implementation just like for lxstat, fxstatat, et al. + +2010-12-27 Jim Meyering + + [BZ #12348] + * posix/regexec.c (build_trtable): Return failure indication upon + calloc failure. Otherwise, re_search_internal could infloop on OOM. + +2010-12-25 Ulrich Drepper + + [BZ #12201] + * sysdeps/unix/sysv/linux/getrlimit64.c: New file. + * sysdeps/unix/sysv/linux/setrlimit64.c: New file. + * sysdeps/unix/sysv/linux/i386/getrlimit64.c: Use ../getrlimit64.c. + * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_PRLIMIT64. + + [BZ #12207] + * malloc/malloc.c (do_check_malloc_state): Use fastbin macro. + + [BZ #12204] + * string/xpg-strerror.c (__xpg_strerror_r): Return error code, not -1. + * sysdeps/mach/xpg-strerror.c (__xpg_strerror_r): Likewise. + +2010-12-15 H.J. Lu + + * config.h.in (NO_CTORS_DTORS_SECTIONS): Define. + * configure.in: Define NO_CTORS_DTORS_SECTIONS if linker + script has SORT_BY_INIT_PRIORITY. + * elf/sofini.c: Remove `.ctors' and `.dtors' sections if + NO_CTORS_DTORS_SECTIONS is defined. + * elf/soinit.c: Likewise. + * sysdeps/i386/init-first.c: Don't call __libc_global_ctors if + NO_CTORS_DTORS_SECTIONS is defined. + * sysdeps/mach/hurd/i386/init-first.c: Likewise. + * sysdeps/mach/hurd/powerpc/init-first.c: Likewise. + * sysdeps/sh/init-first.c: Likewise. + * sysdeps/unix/sysv/linux/init-first.c: Likewise. + +2010-12-24 Ulrich Drepper + + * stdio-common/vfprintf.c (vfprintf): If printf handlers are installed + always use the slow path. + +2010-12-15 Ryan S. Arnold + + * elf/Makefile: (check-execstack): Replace $(native-compile) with a + similar rule which adds the sysdep directories to the header search in + order to pick up the correct platform stackinfo.h. + * elf/check-execstack.c (main): Check DEFAULT_STACK_PERMS for PF_X and + perform test if it is, otherwise return successfully without testing. + * elf/dl-load.c (_dl_map_object_from_fd): Source stack_flags from + DEFAULT_STACK_PERMS define in stackinfo.h. + * elf/dl-support.c (_dl_stack_flags): Source from DEFAULT_STACK_PERMS + defined in stackinfo.h. + * elf/rtld.c (_dl_starting_up): Source ._dl_stack_flags from + DEFAULT_STACK_PERMS defined in stackinfo.h. + * sysdeps/i386/stackinfo.h: Define DEFAULT_STACK_PERMS with PF_X. + * sysdeps/ia64/stackinfo.h: Likewise. + * sysdeps/s390/stackinfo.h: Likewise. + * sysdeps/sh/stackinfo.h: Likewise. + * sysdeps/sparc/stackinfo.h: Likewise. + * sysdeps/x86_64/stackinfo.h: Likewise. + * sysdeps/powerpc/stackinfo.h: Define DEFAULT_STACK_PERMS without + PF_X for powerpc64. Retain PF_X for powerpc32. + +2010-12-19 Ulrich Drepper + + * sysdeps/unix/readdir_r.c (__READDIR_R): Compute reclen more + accurately. + * sysdeps/unix/sysv/linux/wordsize-64/readdir_r.c: Define + GETDENTS_64BIT_ALIGNED. + +2010-12-14 Ulrich Drepper + + * sysdeps/i386/i686/multiarch/strcmp.S: Undo accidental checkin. + +2010-12-10 Andreas Schwab + + * wcsmbs/wchar.h (wcpcpy, wcpncpy): Only declare under + _GNU_SOURCE. + + * wcsmbs/wchar.h (wcpcpy, wcpncpy): Add __restrict. + * wcsmbs/bits/wchar2.h (__wmemmove_chk_warn, wmemmove, wmemset): + Remove __restrict. + (wcscpy, __wcpcpy_chk, __wcpcpy_alias, wcpcpy, wcsncpy, wcpncpy) + (wcscat, wcsncat, __wcrtomb_chk, wcrtomb): Add __restrict. + +2010-12-09 Ulrich Drepper + + [BZ #11655] + * stdlib/msort.c (qsort_r): Make sure both phys_pages and pagesize + are initialized. + +2010-12-09 Jakub Jelinek + + * string/bits/string3.h (memmove, bcopy): Remove __restrict. + +2010-12-03 Ulrich Drepper + + * po/it.po: Update from translation team. + +2010-12-01 H.J. Lu + + * sysdeps/i386/i686/multiarch/strcmp-ssse3.S (STRCMP): Remove + unused codes. + +2010-11-30 Ulrich Drepper + + * sysdeps/i386/fpu/libm-test-ulps: Relax ynf(10,0.75) test expectations. + +2010-11-24 Andreas Schwab + + * resolv/nss_dns/dns-host.c (getanswer_r): Don't handle ttl == 0 + specially. + (gaih_getanswer_slice): Likewise. + +2010-10-20 Jakub Jelinek + + * sysdeps/ieee754/ldbl-128/s_fmal.c (__fmal): Fix up inline asm. + +2010-05-31 Petr Baudis + + [BZ #11149] + * elf/ldconfig.c (main): Allow aux_cache_file open()ing to fail + silently even in the chroot mode. + +2010-11-22 Ulrich Drepper + + * nis/nss_compat/compat-initgroups.c (internal_getgrent_r): Optimize + last patch a bit. Pretty printing + +2010-05-31 Petr Baudis + + [BZ #10085] + * nis/nss_compat/compat-initgroups.c (internal_getgrent_r): Fix + initialization of skip_initgroups_dyn. + +2010-11-19 Ulrich Drepper + + * sysdeps/unix/sysv/linux/i386/bits/mman.h: Define MAP_HUGETLB. + * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Likewise. + +2010-11-16 Ulrich Drepper + + * sysdeps/unix/sysv/linux/sys/swap.h (SWAP_FLAG_DISCARD): Define. + +2010-11-11 Andreas Schwab + + * posix/fnmatch_loop.c (NEW_PATTERN): Fix use of alloca. + * posix/Makefile (tests): Add $(objpfx)tst-fnmatch-mem. + (tst-fnmatch-ENV): Set MALLOC_TRACE. + ($(objpfx)tst-fnmatch-mem): New rule. + (generated): Add tst-fnmatch-mem and tst-fnmatch.mtrace. + * posix/tst-fnmatch.c (main): Call mtrace. + +2010-11-11 H.J. Lu + + * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features): + Support Intel processor model 6 and model 0x2c. + +2010-11-10 Luis Machado + + * sysdeps/ieee754/ldbl-128ibm/e_sqrtl.c (__ieee754_sqrtl): Force + signed comparison. + +2010-11-09 H.J. Lu + + [BZ #12205] + * string/test-strncasecmp.c (check_result): New function. + (do_one_test): Use it. + (check1): New function. + (test_main): Use it. + * sysdeps/i386/i686/multiarch/strcmp.S (nibble_ashr_use_sse4_2_exit): + Support strcasecmp and strncasecmp. + +2010-11-08 Ulrich Drepper + + [BZ #12194] + * sysdeps/i386/bits/byteswap.h: Avoid warning in __bswap_16. + * sysdeps/x86_64/bits/byteswap.h: Likewise. + +2010-11-07 H.J. Lu + + * sysdeps/x86_64/memset.S: Check USE_MULTIARCH and USE_SSE2 for + IFUNC support. + * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add + memset-x86-64. + * sysdeps/x86_64/multiarch/bzero.S: New file. + * sysdeps/x86_64/multiarch/cacheinfo.c: New file. + * sysdeps/x86_64/multiarch/memset-x86-64.S: New file. + * sysdeps/x86_64/multiarch/memset.S: New file. + * sysdeps/x86_64/multiarch/memset_chk.S: New file. + * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features): + Set bit_Prefer_SSE_for_memop for Intel processors. + * sysdeps/x86_64/multiarch/init-arch.h (bit_Prefer_SSE_for_memop): + Define. + (index_Prefer_SSE_for_memop): Define. + (HAS_PREFER_SSE_FOR_MEMOP): Define. + +2010-11-04 Luis Machado + + * sysdeps/powerpc/powerpc32/power7/mempcpy.S: New file. + * sysdeps/powerpc/powerpc64/power7/mempcpy.S: New file. + +2010-11-03 H.J. Lu + + [BZ #12191] + * sysdeps/i386/i686/cacheinfo.c (__x86_64_raw_data_cache_size): New. + (__x86_64_raw_data_cache_size_half): Likewise. + (__x86_64_raw_shared_cache_size): Likewise. + (__x86_64_raw_shared_cache_size_half): Likewise. + + * sysdeps/x86_64/cacheinfo.c (__x86_64_raw_data_cache_size): New. + (__x86_64_raw_data_cache_size_half): Likewise. + (__x86_64_raw_shared_cache_size): Likewise. + (__x86_64_raw_shared_cache_size_half): Likewise. + (init_cacheinfo): Set __x86_64_raw_data_cache_size, + __x86_64_raw_data_cache_size_half, __x86_64_raw_shared_cache_size + and __x86_64_raw_shared_cache_size_half. Round + __x86_64_data_cache_size_half, __x86_64_data_cache_size + __x86_64_shared_cache_size_half and __x86_64_shared_cache_size, + to multiple of 256 bytes. + +2010-11-03 Ulrich Drepper + + [BZ #12167] + * sysdeps/unix/sysv/linux/ttyname.c (ttyname): Recognize new mangling + of inacessible symlinks. Verify result of symlink before returning it. + * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Likewise. + Patch mostly by Miklos Szeredi . + +2010-10-28 Erich Ritz + + * math/math.h (isinf): Fix typo in comment. + +2010-11-01 Ulrich Drepper + + * po/da.po: Update from translation team. + +2010-10-26 Ulrich Drepper + + * elf/rtld.c (dl_main): Move assertion after the point where rtld map + is added to the list. + +2010-10-20 Andreas Krebbel + Ulrich Drepper + + * elf/dl-object.c (_dl_new_object): Don't append the new object to + the global list here. Move code to... + (_dl_add_to_namespace_list): ...here. New function. + * elf/rtld.c (dl_main): Invoke _dl_add_to_namespace_list. + * sysdeps/generic/ldsodefs.h (_dl_add_to_namespace_list): Declare. + * elf/dl-load.c (lose): Don't remove the element from the list. + (_dl_map_object_from_fd): Invoke _dl_add_to_namespace_list. + (_dl_map_object): Likewise. + +2010-10-25 Ulrich Drepper + + [BZ #12159] + * sysdeps/x86_64/multiarch/strchr.S: Fix propagation of search byte + into all bytes of SSE register. + Patch by Richard Li . + +2010-10-24 Ulrich Drepper + + [BZ #12140] + * malloc/malloc.c (_int_free): Fill correct number of bytes when + perturbing. + +2010-10-20 Michael B. Brutman + + * sysdeps/powerpc/dl-procinfo.c: Add support for ppca2 platform + * sysdeps/powerpc/dl-procinfo.h: Add support for ppca2 platform + * sysdeps/powerpc/powerpc32/a2/memcpy.S: New file. + * sysdeps/powerpc/powerpc64/a2/memcpy.S: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/a2/Implies: New + submachine. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/a2/Implies: Likewise. + +2010-10-22 Andreas Schwab + + * include/dlfcn.h (__RTLD_SECURE): Define. + * elf/dl-load.c (_dl_map_object): Remove preloaded parameter. Use + mode & __RTLD_SECURE instead. + (open_path): Rename preloaded parameter to secure. + * sysdeps/generic/ldsodefs.h (_dl_map_object): Adjust declaration. + * elf/dl-open.c (dl_open_worker): Adjust call to _dl_map_object. + * elf/dl-deps.c (openaux): Likewise. + * elf/rtld.c (struct map_args): Remove is_preloaded. + (map_doit): Don't use it. + (dl_main): Likewise. + (do_preload): Use __RTLD_SECURE instead of is_preloaded. + (dlmopen_doit): Add __RTLD_SECURE to mode bits. + +2010-09-09 Andreas Schwab + + * Makeconfig (sysd-rules-patterns): Add rtld-%:rtld-%. + (sysd-rules-targets): Remove duplicates. + * elf/rtld-Rules ($(objpfx)rtld-%.os): Add pattern rules with + rtld-%.$o dependency. + +2010-10-18 Andreas Schwab + + * elf/dl-open.c (dl_open_worker): Don't expand DST here, let + _dl_map_object do it. + +2010-10-19 Ulrich Drepper + + * sysdeps/i386/bits/mathdef.h (FP_FAST_FMA): If the GCC 4.6 port has + fast fma builtins, define the macros in the C99 standard. + (FP_FAST_FMAF): Likewise. + (FP_FAST_FMAL): Likewise. + * sysdeps/x86_64/bits/mathdef.h: Likewise. + + * bits/mathdef.h: Update copyright year. + * sysdeps/powerpc/bits/mathdef.h: Likewise. + +2010-10-19 Michael Meissner + + * bits/mathdef.h (FP_FAST_FMA): If the GCC 4.6 port has fast fma + builtins, define the macros in the C99 standard. + (FP_FAST_FMAF): Likewise. + (FP_FAST_FMAL): Likewise. + * sysdeps/powerpc/bits/mathdef.h (FP_FAST_FMA): Define, ppc as + multiply/add. + (FP_FAST_FMAF): Likewise. + +2010-10-15 Jakub Jelinek + + [BZ #3268] + * math/libm-test.inc (fma_test): Some new testcases. + * sysdeps/ieee754/ldbl-128/s_fmal.c: New file. + * sysdeps/ieee754/ldbl-96/s_fma.c (__fma): Fix fma with finite x and + y and infinite z. Do multiplication by C already in long double. + * sysdeps/ieee754/ldbl-96/s_fmal.c: New file. + * sysdeps/ieee754/dbl-64/s_fma.c (__fma): Fix fma with finite x and + y and infinite z. Do bitwise or of inexact bit into u.d. + * sysdeps/ieee754/ldbl-64-128/s_fmal.c: New file. + * sysdeps/i386/fpu/s_fmaf.S: Removed. + * sysdeps/i386/fpu/s_fma.S: Removed. + * sysdeps/i386/fpu/s_fmal.S: Removed. + +2010-10-16 Jakub Jelinek + + [BZ #3268] + * math/libm-test.inc (fma_test): Add IEEE quad long double fmal tests. + * sysdeps/ieee754/ldbl-128/s_fmal.c (__fmal): Ensure a1 + u.d + computation is not scheduled after fetestexcept. Fix value + of minimum denormal long double. + +2010-10-14 Jakub Jelinek + + [BZ #3268] + * math/libm-test.inc (fma_test): Add some more tests. + * sysdeps/ieee754/dbl-64/s_fma.c (__fma): Handle underflows + correctly. + +2010-10-15 Andreas Schwab + + * scripts/data/localplt-s390-linux-gnu.data: New file. + * scripts/data/localplt-s390x-linux-gnu.data: New file. + +2010-10-13 Jakub Jelinek + + [BZ #3268] + * math/libm-test.inc (fma_test): Some more fmaf and fma tests. + * sysdeps/i386/i686/multiarch/s_fma.c: Include ldbl-96 version + instead of dbl-64. + * sysdeps/i386/fpu/bits/mathinline.h (fma, fmaf, fmal): Remove + inlines. + * sysdeps/ieee754/ldbl-96/s_fma.c: New file. + * sysdeps/ieee754/dbl-64/s_fma.c (__fma): Fix exponent adjustment + if one of x and y is very large and the other is subnormal. + * sysdeps/s390/fpu/s_fmaf.c: New file. + * sysdeps/s390/fpu/s_fma.c: New file. + * sysdeps/powerpc/fpu/s_fmaf.S: New file. + * sysdeps/powerpc/fpu/s_fma.S: New file. + * sysdeps/powerpc/powerpc32/fpu/s_fma.S: New file. + * sysdeps/powerpc/powerpc64/fpu/s_fma.S: New file. + * sysdeps/unix/sysv/linux/s390/fpu/s_fma.c: New file. + +2010-10-12 Jakub Jelinek + + [BZ #3268] + * math/libm-test.inc (fma_test): Add some more fmaf tests, add + fma tests. + * sysdeps/ieee754/dbl-64/s_fmaf.c (__fmaf): Fix Inf/Nan check. + * sysdeps/ieee754/dbl-64/s_fma.c: New file. + * sysdeps/i386/i686/multiarch/s_fma.c: Include + sysdeps/ieee754/dbl-64/s_fma.c instead of math/s_fma.c. + * sysdeps/x86_64/multiarch/s_fma.c: Likewise. + * sysdeps/ieee754/ldbl-opt/s_fma.c: Likewise. + * sysdeps/ieee754/ldbl-128/s_fma.c: New file. + +2010-10-12 Ulrich Drepper + + [BZ #12078] + * posix/regcomp.c (parse_branch): One more memory leak plugged. + * posix/bug-regex31.input: Add test case. + +2010-10-11 Ulrich Drepper + + * posix/bug-regex31.c: Rewrite to run multiple tests from stdin. + * posix/bug-regex31.input: New file. + + [BZ #12078] + * posix/regcomp.c (parse_branch): Free memory when allocation failed. + (parse_sub_exp): Fix last change, use postorder. + + * posix/bug-regex31.c: New file. + * posix/Makefile: Add rules to build and run bug-regex31. + + * posix/regcomp.c (parse_bracket_exp): Add missing re_free calls. + + [BZ #12078] + * posix/regcomp.c (parse_sub_exp): Free tree data when it is not used. + + [BZ #12108] + * stdio-common/psiginfo.c (psiginfo): Don't expext SIGRTMIN..SIGRTMAX + to have entries in sys_siglist. + + [BZ #12093] + * sysdeps/unix/sysv/linux/check_pf.c (__check_pf): ->ifa_addr might + be NULL. + +2010-10-07 Jakub Jelinek + + [BZ #3268] + * math/libm-test.inc (fma_test): Add 2 fmaf tests. + * sysdeps/ieee754/dbl-64/s_fmaf.c: New file. + * sysdeps/i386/i686/multiarch/s_fmaf.c: Include + sysdeps/ieee754/dbl-64/s_fmaf.c instead of math/s_fmaf.c. + * sysdeps/x86_64/multiarch/s_fmaf.c: Likewise. + * include/fenv.h (feupdateenv, fetestexcept): Add libm_hidden_proto. + * math/feupdateenv.c (feupdateenv): Add libm_hidden_ver. + * sysdeps/i386/fpu/feupdateenv.c (feupdateenv): Likewise. + * sysdeps/powerpc/fpu/feupdateenv.c (feupdateenv): Likewise. + * sysdeps/x86_64/fpu/feupdateenv.c (feupdateenv): Likewise. + * sysdeps/sparc/fpu/feupdateenv.c (feupdateenv): Likewise. + * sysdeps/ia64/fpu/feupdateenv.c (feupdateenv): Add libm_hidden_def. + * sysdeps/s390/fpu/feupdateenv.c (feupdateenv): Likewise. + * math/ftestexcept.c (fetestexcept): Likewise. + * sysdeps/ia64/fpu/ftestexcept.c (fetestexcept): Likewise. + * sysdeps/i386/fpu/ftestexcept.c (fetestexcept): Likewise. + * sysdeps/s390/fpu/ftestexcept.c (fetestexcept): Likewise. + * sysdeps/powerpc/fpu/ftestexcept.c (fetestexcept): Likewise. + * sysdeps/x86_64/fpu/ftestexcept.c (fetestexcept): Likewise. + * sysdeps/sparc/fpu/ftestexcept.c (fetestexcept): Likewise. + * sysdeps/sh/sh4/fpu/ftestexcept.c (fetestexcept): Likewise. + +2010-10-11 Ulrich Drepper + + [BZ #12107] + * stdio-common/psiginfo.c (psiginfo): Terminate all strings with + newline. + +2010-10-06 Ulrich Drepper + + * string/bug-strstr1.c: New file. + * string/Makefile: Add rules to build and run bug-strstr1. + +2010-10-05 Eric Blake + + [BZ #12092] + * string/str-two-way.h (two_way_long_needle): Always clear memory + when skipping input due to the shift table. + +2010-10-03 Ulrich Drepper + + [BZ #12005] + * malloc/mcheck.c: Handle large requests. + + [BZ #12077] + * sysdeps/x86_64/strcmp.S: Fix handling of remaining bytes in buffer + for strncmp and strncasecmp. + * string/stratcliff.c: Add tests for strcmp and strncmp. + * wcsmbs/wcsatcliff.c: Adjust for stratcliff change. + +2010-09-28 Nobuhiro Iwamatsu + + * sysdeps/sh/sh4/fpu/fpu_control.h: Add 'extern "C"' protection to + __set_fpscr. + +2010-09-30 Andreas Jaeger + + * sysdeps/unix/sysv/linux_fsinfo.h (BTRFS_SUPER_MAGIC): Define. + (CGROUP_SUPER_MAGIC): Define. + * sysdeps/unix/sysv/linux/internal_statvfs.c (__statvfs_getflags): + Handle btrfs and cgroup file systems. + * sysdeps/unix/sysv/linux/pathconf.c (__statfs_filesize_max): + Likewise. + +2010-09-27 Luis Machado + + * sysdeps/powerpc/powerpc32/rtld-memset.c: New file. + * sysdeps/powerpc/powerpc64/rtld-memset.c: New file. + +2010-09-29 Andreas Krebbel + + [BZ #12067] + * sysdeps/s390/s390-32/elf/start.S: Fix address calculation when + trying to locate the ELF header. + +2010-09-27 Andreas Schwab + + [BZ #11611] + * sysdeps/unix/sysv/linux/internal_statvfs.c (INTERNAL_STATVFS): + Mask out sign-bit copies when constructing f_fsid. + +2010-09-24 Petr Baudis + + * debug/stack_chk_fail_local.c: Add missing licence exception. + * debug/warning-nop.c: Likewise. + +2010-09-15 Joseph Myers + + * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): When + implementing getdents64 using getdents syscall, set d_type if + __ASSUME_GETDENTS32_D_TYPE. + +2010-09-16 Andreas Schwab + + * elf/dl-close.c (free_slotinfo, free_mem): Move to... + * elf/dl-libc.c (free_slotinfo, free_mem): ... here. + +2010-09-21 Ulrich Drepper + + [BZ #12037] + * posix/unistd.h: Undo change of feature selection for ftruncate from + 2010-01-11. + +2010-09-20 Ulrich Drepper + + * sysdeps/x86_64/strcmp.S: Fix another typo in x86-64 strncasecmp limit + detection. + +2010-09-20 Andreas Schwab + + * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list: Add + fanotify_mark. + * sysdeps/unix/sysv/linux/s390/s390-32/syscalls.list: Likewise. + +2010-09-14 Andreas Schwab + + * sysdeps/s390/s390-32/__longjmp.c (__longjmp): Define register + variables after CHECK_SP call. + * sysdeps/s390/s390-64/__longjmp.c (__longjmp): Likewise. + +2010-09-13 Andreas Schwab + Ulrich Drepper + + * elf/rtld.c (dl_main): Set GLRO(dl_init_all_dirs) just before + re-relocationg ld.so. + * elf/dl-support.c (_dl_non_dynamic_init): And here after the + _dl_init_paths call. + * elf/dl-load.c (_dl_init_paths). Don't set GLRO(dl_init_all_dirs) + here anymore. + +2010-09-14 Ulrich Drepper + + * resolv/res_init.c (__res_vinit): Count the default server we added. + +2010-09-08 Chung-Lin Tang + Ulrich Drepper + + [BZ #11968] + * sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S + (____longjmp_chk): Use %ebx for saving value across system call. + Add unwind info. + +2010-09-06 Andreas Schwab + + * manual/Makefile: Don't mix pattern rules with normal rules. + +2010-09-05 Andreas Schwab + + * debug/vdprintf_chk.c (__vdprintf_chk): Remove undefined + operation. + * libio/iofdopen.c (_IO_new_fdopen): Likewise. + * libio/iofopncook.c (_IO_cookie_init): Likewise. + * libio/iovdprintf.c (_IO_vdprintf): Likewise. + * libio/oldiofdopen.c (_IO_old_fdopen): Likewise. + * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): + Likewise. + +2010-09-04 Ulrich Drepper + + [BZ #11979] + * iconvdata/gconv-modules: Remove EBCDIC-CP-AR2 alias from + IBM-930, IBM-933, IBM-935, IBM-937, and IBM-939. + +2010-09-02 Ulrich Drepper + + * sysdeps/x86_64/add_n.S: Update from GMP 5.0.1. + * sysdeps/x86_64/addmul_1.S: Likewise. + * sysdeps/x86_64/lshift.S: Likewise. + * sysdeps/x86_64/mul_1.S: Likewise. + * sysdeps/x86_64/rshift.S: Likewise. + * sysdeps/x86_64/sub_n.S: Likewise. + * sysdeps/x86_64/submul_1.S: Likewise. + +2010-09-01 Samuel Thibault + + This aligns bits/sched.h onto sysdeps/unix/sysv/linux/bits/sched.h: + Define __sched_param instead of SCHED_* and sched_param when + is included with __need_schedparam defined. + * bits/sched.h [__need_schedparam] + (SCHED_OTHER, SCHED_FIFO, SCHED_RR, sched_param): Do not define. + [!__defined_schedparam && (__need_schedparam || _SCHED_H)] + (__defined_schedparam): Define to 1. + (__sched_param): New structure, identical to sched_param. + (__need_schedparam): Undefine. + +2010-08-31 Mike Frysinger + + * sysdeps/unix/sysv/linux/sparc/sys/epoll.h (epoll_create2): Delete. + (epoll_create1): Declare. + + * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: Fix typo. + +2010-08-31 Andreas Schwab + + [BZ #7066] + * stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix array overflow when + shifting retval into place. + +2010-09-01 Ulrich Drepper + + * nis/rpcsvc/nis.h: Update copyright notice. + * nis/rpcsvc/nis.x: Likewise. + * nis/rpcsvc/nis_callback.h: Likewise. + * nis/rpcsvc/nis_callback.x: Likewise. + * nis/rpcsvc/nis_object.x: Likewise. + * nis/rpcsvc/nis_tags.h: Likewise. + * nis/rpcsvc/yp.h: Likewise. + * nis/rpcsvc/yp.x: Likewise. + * nis/rpcsvc/ypupd.h: Likewise. + * nis/yp_xdr.c: Likewise. + * nis/ypupdate_xdr.c: Likewise. + + * sunrpc/pm_getport.c (__libc_rpc_getport): New function. This is + mainly the body of pmap_getport. Add parameters to specify timeouts. + (pmap_getport): Use __libc_rpc_getport. + * sunrpc/Versions: Export __libc_rpc_getport with GLIBC_PRIVATE. + * include/rpc/pmap_clnt.h: Declare __libc_rpc_getport. + * nis/nis_findserv.c: Remove pmap_getport copy. Use __libc_rpc_getport. + +2010-08-31 Andreas Schwab + + * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Add + fanotify_mark. + +2010-08-27 Roland McGrath + + * sysdeps/i386/i686/multiarch/Makefile + (CFLAGS-varshift.c): New variable. + +2010-08-27 Ulrich Drepper + + * sysdeps/i386/i686/multiarch/varshift.S: File removed. + * sysdeps/i386/i686/multiarch/varshift.c: New file. + + * sysdeps/x86_64/multiarch/strlen-no-bsf.S: Move to .text.slow section. + + * sysdeps/x86_64/strlen.S: Minimal code improvement. + +2010-08-26 H.J. Lu + + * sysdeps/x86_64/strlen.S: Unroll the loop. + * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add + strlen-sse2 strlen-sse2-bsf. + * sysdeps/x86_64/multiarch/strlen.S ((strlen): Return + __strlen_no_bsf if bit_Slow_BSF is set. + (__strlen_sse42): Removed. + * sysdeps/x86_64/multiarch/strlen-no-bsf.S: New file. + * sysdeps/x86_64/multiarch/strlen-sse4.S: New file. + +2010-08-25 Roland McGrath + + * sysdeps/x86_64/multiarch/varshift.S: File removed. + * sysdeps/x86_64/multiarch/varshift.c: New file. + * sysdeps/x86_64/multiarch/Makefile (CFLAGS-varshift.c): New variable. + * sysdeps/x86_64/multiarch/varshift.h: Clean up decls, fix a cast. + * sysdeps/x86_64/multiarch/memmove.c: Move decls around. + * sysdeps/x86_64/multiarch/memmove_chk.c: Likewise. + +2010-08-25 H.J. Lu + + * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Add + strlen-sse2 strlen-sse2-bsf. + * sysdeps/i386/i686/multiarch/strlen.S (strlen): Return + __strlen_sse2_bsf if bit_Slow_BSF is unset. + (__strlen_sse2): Removed. + * sysdeps/i386/i686/multiarch/strlen-sse2-bsf.S: New file. + * sysdeps/i386/i686/multiarch/strlen-sse2.S: New file. + * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features): Set + bit_Slow_BSF for Atom. + * sysdeps/x86_64/multiarch/init-arch.h (bit_Slow_BSF): Define. + (index_Slow_BSF): Define. + (HAS_SLOW_BSF): Define. + +2010-08-25 Ulrich Drepper + + [BZ #10851] + * resolv/res_init.c (__res_vinit): When no server address at all + is given default to loopback. + +2010-08-24 Roland McGrath + + * configure.in: Remove config-name.h generation. + * configure: Regenerated. + * config-name.in: File removed. + * scripts/config-uname.sh: New file. + * posix/Makefile (uname.c): Depend on $(objdir)config-name.h. + ($(objdir)config-name.h): New target. + + * sunrpc/rpc_parse.h: Avoid nested comment. + +2010-08-24 Richard Henderson + Ulrich Drepper + H.J. Lu + + * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Add varshift. + * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Likewise. + * sysdeps/x86_64/multiarch/strcspn-c.c: Include "varshift.h". + Replace _mm_srli_si128 with __m128i_shift_right. Replace + _mm_alignr_epi8 with _mm_loadu_si128. + * sysdeps/x86_64/multiarch/strspn-c.c: Likewise. + * sysdeps/x86_64/multiarch/strstr.c: Include "varshift.h". + (__m128i_shift_right): Removed. + * sysdeps/i386/i686/multiarch/varshift.h: New file. + * sysdeps/i386/i686/multiarch/varshift.S: New file. + * sysdeps/x86_64/multiarch/varshift.h: New file. + * sysdeps/x86_64/multiarch/varshift.S: New file. + +2010-08-21 Mike Frysinger + + * configure.in: Move assembler checks to before sysdep dir checking. + +2010-08-20 Petr Baudis + + * LICENSES: Sync the sunrpc license. + +2010-08-19 Ulrich Drepper + + * sunrpc/auth_des.c: Update copyright notice once again. + * sunrpc/auth_none.c: Likewise. + * sunrpc/auth_unix.c: Likewise. + * sunrpc/authdes_prot.c: Likewise. + * sunrpc/authuxprot.c: Likewise. + * sunrpc/bindrsvprt.c: Likewise. + * sunrpc/clnt_gen.c: Likewise. + * sunrpc/clnt_perr.c: Likewise. + * sunrpc/clnt_raw.c: Likewise. + * sunrpc/clnt_simp.c: Likewise. + * sunrpc/clnt_tcp.c: Likewise. + * sunrpc/clnt_udp.c: Likewise. + * sunrpc/clnt_unix.c: Likewise. + * sunrpc/des_crypt.c: Likewise. + * sunrpc/des_soft.c: Likewise. + * sunrpc/get_myaddr.c: Likewise. + * sunrpc/getrpcport.c: Likewise. + * sunrpc/key_call.c: Likewise. + * sunrpc/key_prot.c: Likewise. + * sunrpc/openchild.c: Likewise. + * sunrpc/pm_getmaps.c: Likewise. + * sunrpc/pm_getport.c: Likewise. + * sunrpc/pmap_clnt.c: Likewise. + * sunrpc/pmap_prot.c: Likewise. + * sunrpc/pmap_prot2.c: Likewise. + * sunrpc/pmap_rmt.c: Likewise. + * sunrpc/rpc/auth.h: Likewise. + * sunrpc/rpc/auth_unix.h: Likewise. + * sunrpc/rpc/clnt.h: Likewise. + * sunrpc/rpc/des_crypt.h: Likewise. + * sunrpc/rpc/key_prot.h: Likewise. + * sunrpc/rpc/netdb.h: Likewise. + * sunrpc/rpc/pmap_clnt.h: Likewise. + * sunrpc/rpc/pmap_prot.h: Likewise. + * sunrpc/rpc/pmap_rmt.h: Likewise. + * sunrpc/rpc/rpc.h: Likewise. + * sunrpc/rpc/rpc_des.h: Likewise. + * sunrpc/rpc/rpc_msg.h: Likewise. + * sunrpc/rpc/svc.h: Likewise. + * sunrpc/rpc/svc_auth.h: Likewise. + * sunrpc/rpc/types.h: Likewise. + * sunrpc/rpc/xdr.h: Likewise. + * sunrpc/rpc_clntout.c: Likewise. + * sunrpc/rpc_cmsg.c: Likewise. + * sunrpc/rpc_common.c: Likewise. + * sunrpc/rpc_cout.c: Likewise. + * sunrpc/rpc_dtable.c: Likewise. + * sunrpc/rpc_hout.c: Likewise. + * sunrpc/rpc_main.c: Likewise. + * sunrpc/rpc_parse.c: Likewise. + * sunrpc/rpc_parse.h: Likewise. + * sunrpc/rpc_prot.c: Likewise. + * sunrpc/rpc_sample.c: Likewise. + * sunrpc/rpc_scan.c: Likewise. + * sunrpc/rpc_scan.h: Likewise. + * sunrpc/rpc_svcout.c: Likewise. + * sunrpc/rpc_tblout.c: Likewise. + * sunrpc/rpc_util.c: Likewise. + * sunrpc/rpc_util.h: Likewise. + * sunrpc/rpcinfo.c: Likewise. + * sunrpc/rpcsvc/bootparam_prot.x: Likewise. + * sunrpc/rpcsvc/key_prot.x: Likewise. + * sunrpc/rpcsvc/klm_prot.x: Likewise. + * sunrpc/rpcsvc/mount.x: Likewise. + * sunrpc/rpcsvc/nfs_prot.x: Likewise. + * sunrpc/rpcsvc/nlm_prot.x: Likewise. + * sunrpc/rpcsvc/rex.x: Likewise. + * sunrpc/rpcsvc/rstat.x: Likewise. + * sunrpc/rpcsvc/rusers.x: Likewise. + * sunrpc/rpcsvc/sm_inter.x: Likewise. + * sunrpc/rpcsvc/spray.x: Likewise. + * sunrpc/rpcsvc/yppasswd.x: Likewise. + * sunrpc/rtime.c: Likewise. + * sunrpc/svc.c: Likewise. + * sunrpc/svc_auth.c: Likewise. + * sunrpc/svc_authux.c: Likewise. + * sunrpc/svc_raw.c: Likewise. + * sunrpc/svc_run.c: Likewise. + * sunrpc/svc_simple.c: Likewise. + * sunrpc/svc_tcp.c: Likewise. + * sunrpc/svc_udp.c: Likewise. + * sunrpc/svc_unix.c: Likewise. + * sunrpc/svcauth_des.c: Likewise. + * sunrpc/xcrypt.c: Likewise. + * sunrpc/xdr.c: Likewise. + * sunrpc/xdr_array.c: Likewise. + * sunrpc/xdr_float.c: Likewise. + * sunrpc/xdr_mem.c: Likewise. + * sunrpc/xdr_rec.c: Likewise. + * sunrpc/xdr_ref.c: Likewise. + * sunrpc/xdr_sizeof.c: Likewise. + * sunrpc/xdr_stdio.c: Likewise. + + * sysdeps/x86_64/multiarch/strcmp.S: Fix two typos in strncasecmp + handling. + +2010-08-19 Andreas Schwab + + * sysdeps/i386/i686/multiarch/strspn.S [!SHARED]: Fix SSE4.2 check. + +2010-08-19 Luis Machado + + * sysdeps/powerpc/powerpc32/power7/memchr.S: New file. + * sysdeps/powerpc/powerpc32/power7/memrchr.S: New file. + * sysdeps/powerpc/powerpc32/power7/rawmemchr.S: New file. + * sysdeps/powerpc/powerpc32/power7/strchr.S: New file. + * sysdeps/powerpc/powerpc32/power7/strchrnul.S: New file. + * sysdeps/powerpc/powerpc32/power7/strlen.S: New file. + * sysdeps/powerpc/powerpc32/power7/strnlen.S: New file. + * sysdeps/powerpc/powerpc64/power7/memchr.S: New file. + * sysdeps/powerpc/powerpc64/power7/memrchr.S: New file. + * sysdeps/powerpc/powerpc64/power7/rawmemchr.S: New file. + * sysdeps/powerpc/powerpc64/power7/strchr.S: New file. + * sysdeps/powerpc/powerpc64/power7/strchrnul.S: New file. + * sysdeps/powerpc/powerpc64/power7/strlen.S: New file. + * sysdeps/powerpc/powerpc64/power7/strnlen.S: New file. + +2010-07-26 Anton Blanchard + + * malloc/malloc.c (sYSTRIm): Replace divide and multiply with mask. + * malloc/arena.c (heap_trim): Likewise. + +2010-08-16 Ulrich Drepper + + * sysdeps/unix/sysv/linux/syscalls.list: Add entry for fanotify_init + here. Not... + * sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: ...here... + * sysdeps/unix/sysv/linux/i386/syscalls.list: ... orhere. + +2010-08-12 H.J. Lu + + * sysdeps/i386/elf/Makefile: New file. + +2010-08-14 Andreas Schwab + + * sysdeps/unix/sysv/linux/sys/fanotify.h: Remove third argument + from fanotify_init. + * sysdeps/unix/sysv/linux/i386/syscalls.list: Likewise. + * sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: Likewise. + +2010-08-15 Ulrich Drepper + + * sysdeps/x86_64/strcmp.S: Use correct register for fourth parameter + of strncasecmp_l. + * sysdeps/multiarch/strcmp.S: Likewise. + +2010-08-14 Ulrich Drepper + + * sysdeps/x86_64/Makefile [subdir=string] (sysdep_routines): Add + strncase_l-nonascii. + * sysdeps/x86_64/multiarch/Makefile [subdir=string] (sysdep_routines): + Add strncase_l-ssse3. + * sysdeps/x86_64/multiarch/strcmp.S: Prepare for use as strncasecmp. + * sysdeps/x86_64/strcmp.S: Likewise. + * sysdeps/x86_64/multiarch/strncase_l-ssse3.S: New file. + * sysdeps/x86_64/multiarch/strncase_l.S: New file. + * sysdeps/x86_64/strncase.S: New file. + * sysdeps/x86_64/strncase_l-nonascii.c: New file. + * sysdeps/x86_64/strncase_l.S: New file. + * string/Makefile (strop-tests): Add strncasecmp. + * string/test-strncasecmp.c: New file. + + * sysdeps/x86_64/strcasecmp_l-nonascii.c: Add prototype to avoid + warning. + + * sysdeps/x86_64/strcmp.S: Move definition of NO_NOLOCALE_ALIAS to... + * sysdeps/x86_64/multiarch/strcasecmp_l-ssse3.S: ... here. + +2010-08-14 Andreas Schwab + + * sysdeps/unix/sysv/linux/prlimit.c: Make it compile. + +2010-08-12 Ulrich Drepper + + * sysdeps/unix/sysv/linux/bits/termios.h: Define EXTPROC. + * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/termios.h: Likewise. + +2010-05-01 Alan Modra + + * sysdeps/powerpc/powerpc32/power4/memcmp.S: Correct cfi for r24. + * sysdeps/powerpc/powerpc64/bsd-_setjmp.S: Move contents.. + * sysdeps/powerpc/powerpc64/bsd-setjmp.S: ..and these too.. + * sysdeps/powerpc/powerpc64/setjmp.S: ..to here.. + * sysdeps/powerpc/powerpc64/setjmp-common.S: ..and here, with some + tidying. Don't tail-call __sigjmp_save for static lib. + * sysdeps/powerpc/powerpc64/sysdep.h (SAVE_ARG, REST_ARG): Correct + save location. + (CFI_SAVE_ARG, CFI_REST_ARG): New macros. + (CALL_MCOUNT): Add eh info, and nop after bl. + (TAIL_CALL_SYSCALL_ERROR): New macro. + (PSEUDO_RET): Use it. + * sysdeps/powerpc/powerpc64/dl-trampoline.S (_dl_runtime_resolve): + Correct save location of integer regs and cr. + (_dl_profile_resolve): Correct cr save location. Delete nops + after bl when SHARED. Reduce cfi size a little by better + placement of cfi directives. + * sysdeps/powerpc/powerpc64/fpu/s_copysign.S (__copysign): Don't + make a stack frame. Instead use parm save area as a temp. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S (__brk): Don't + make a stack frame. Use TAIL_CALL_SYSCALL_ERROR. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S (__clone): + Don't make a stack frame for parent, use parm save area. + Increase child stack frame to 112 bytes. Don't save unused reg, + and adjust reg usage. Set up cfi on error recovery and + epilogue of parent, and use TAIL_CALL_SYSCALL_ERROR, PSEUDO_RET. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S + (__makecontext): Add dummy nop after jump to exit. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S (__socket): + Use correct parm save area and cr save, reduce stack frame. + Correct cfi for possible PSEUDO_RET frame setup. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S (__vfork): + Branch to local label emitted by PSEUDO_RET rather than + __syscall_error. + +2010-08-12 Andreas Schwab + + [BZ #11904] + * locale/programs/locale.c (print_assignment): New function. + (show_locale_vars): Use it. + +2010-08-11 Ulrich Drepper + + * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs): Add f_flags + field. + (struct statfs64): Likewise. + (_STATFS_F_FLAGS): Define. + * sysdeps/unix/sysv/linux/s390/bits/statfs.h: Likewise. + * sysdeps/unix/sysv/linux/internal_statvfs.c (__statvfs_getflags): + Don't define if __ASSUME_STATFS_F_FLAGS is defined. + (ST_VALID): Define locally. + (INTERNAL_STATVFS): If f_flags has ST_VALID set don't call + __statvfs_getflags, use the provided value. + * sysdeps/unix/sysv/linux/kernel-features.h: Define + __ASSUME_STATFS_F_FLAGS. + + * sysdeps/unix/sysv/linux/sys/inotify.h (IN_EXCL_UNLINK): Define. + + * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers): + Add sys/fanotify.h. + * sysdeps/unix/sysv/linux/Versions [libc]: Export fanotify_init and + fanotify_mask for GLIBC_2.13. + * sysdeps/unix/sysv/linux/i386/syscalls.list: Add entries for + fanotify_init and fanotify_mark. + * sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: Likewise. + * sysdeps/unix/sysv/linux/sys/fanotify.h: New file. + + * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_routines): + Add prlimit. + * sysdeps/unix/sysv/linux/Versions [libc]: Export prlimit and + prlimit64 for GLIBC_2.13. + * sysdeps/unix/sysv/linux/bits/resource.h: Declare prlimit and + prlimit64. + * sysdeps/unix/sysv/linux/i386/syscalls.list: Add entry for prlimit64 + syscall. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Likewise. + * sysdeps/unix/sysv/linux/s390/s390-32/syscalls.list: Likewise. + * sysdeps/unix/sysv/linux/sh/syscalls.list: Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.lis: Likewise. + * sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: Likewise. Also + add prlimit alias. + * sysdeps/unix/sysv/linux/prlimit.c: New file. + + [BZ #11903] + * sysdeps/generic/netinet/ip.h (IPTOS_CLASS): Fix definition. + Patch by Evgeni Bikov . + + * nss/Makefile: Add rules to build and run tst-nss-test1. + * shlib-versions: Add entry for libnss_test1. + * nss/nss_test1.c: New file. + * nss/tst-nss-test1.c: New file. + + * nss/nsswitch.c (__nss_database_custom): Define new variable. + (__nss_configure_lookup): Set appropriate entry in + __nss_configure_lookup to true. + * nss/nsswitch.h: Define enum with indeces of databases in + databases and __nss_database_custom arrays. Declare + __nss_database_custom. + * grp/initgroups.c (internal_getgrouplist): Use __nss_database_custom + to avoid using nscd when custom rules are installed. + * nss/getXXbyYY_r.c: Likewise. + * sysdeps/posix/getaddrinfo.c (gaih_inet): Likewise. + + * nss/nss_files/files-parse.c: Whitespace fixes. + +2010-08-09 Ulrich Drepper + + [BZ #11883] + * posix/fnmatch.c: Keep track of alloca use and fall back on malloc. + * posix/fnmatch_loop.c: Likewise. + +2010-07-17 Andi Kleen + + * sysdeps/i386/i386-mcount.S (__fentry__): Define. + * sysdeps/x86_64/_mcount.S (__fentry__): Define. + * stdlib/Versions (__fentry__): Add for GLIBC 2.13 + * Versions.def [GLIBC_2.13]: Add. + +2010-08-06 Ulrich Drepper + + * sysdeps/unix/sysv/linux/getlogin_r.c (__getlogin_r_loginuid): + Also fail if tpwd after pwuid call is NULL. + +2010-07-31 Samuel Thibault + + * hurd/hurdselect.c (_hurd_select): Round timeout up instead of down + when converting to ms. + +2010-06-06 Samuel Thibault + + * sysdeps/mach/hurd/ttyname.c (ttyname): Replace MIG_BAD_ID and + EOPNOTSUPP errors with ENOTTY. + * sysdeps/mach/hurd/ttyname_r.c (__ttyname_r): Replace MIG_BAD_ID and + EOPNOTSUPP errors with ENOTTY. + +2010-07-31 Ulrich Drepper + + * sysdeps/x86_64/multiarch/Makefile [subdir=string] (sysdep_routines): + Add strcasecmp_l-ssse3. + * sysdeps/x86_64/multiarch/strcmp.S: Add support to compile for + strcasecmp. + * sysdeps/x86_64/strcmp.S: Allow more flexible compiling of strcasecmp. + * sysdeps/x86_64/multiarch/strcasecmp_l.S: New file. + * sysdeps/x86_64/multiarch/strcasecmp_l-ssse3.S: New file. + +2010-07-30 Ulrich Drepper + + * sysdeps/x86_64/multiarch/strcmp.S: Pretty printing. + + * string/Makefile (strop-tests): Add strcasecmp. + * sysdeps/x86_64/Makefile [subdir=string] (sysdep_routines): Add + strcasecmp_l-nonascii. + (gen-as-const-headers): Add locale-defines.sym. + * sysdeps/x86_64/strcmp.S: Add support for strcasecmp implementation. + * sysdeps/x86_64/strcasecmp.S: New file. + * sysdeps/x86_64/strcasecmp_l.S: New file. + * sysdeps/x86_64/strcasecmp_l-nonascii.c: New file. + * sysdeps/x86_64/locale-defines.sym: New file. + * string/test-strcasecmp.c: New file. + + * string/test-strcasestr.c: Test both ends of the range of characters. + * sysdeps/x86_64/multiarch/strstr.c: Fix UCHIGH definition. + +2010-07-29 Roland McGrath + + [BZ #11856] + * manual/locale.texi (Yes-or-No Questions): Fix example code. + +2010-07-27 Ulrich Drepper + + * sysdeps/x86_64/multiarch/strcmp-ssse3.S: Avoid compiling the file + for ld.so. + +2010-07-27 Andreas Schwab + + * manual/memory.texi (Malloc Tunable Parameters): Document + M_PERTURB. + +2010-07-26 Roland McGrath + + [BZ #11840] + * configure.in (-fgnu89-inline check): Set and substitute + gnu89_inline, not libc_cv_gnu89_inline. + * configure: Regenerated. + * config.make.in (gnu89-inline-CFLAGS): Use @gnu89_inline@. + +2010-07-26 Ulrich Drepper + + * string/test-strnlen.c: New file. + * string/Makefile (strop-tests): Add strnlen. + * string/tester.c (test_strnlen): Add a few more test cases. + * string/tst-strlen.c: Better error reporting. + + * sysdeps/x86_64/strnlen.S: New file. + +2010-07-24 Ulrich Drepper + + * sysdeps/x86_64/multiarch/strstr.c (__m128i_strloadu_tolower): Use + lower-latency instructions. + +2010-07-23 Ulrich Drepper + + * string/test-strcasestr.c: New file. + * string/test-strstr.c: New file. + * string/Makefile (strop-tests): Add strstr and strcasestr. + * string/str-two-way.h: Don't undefine MAX. + * string/strcasestr.c: Don't define alias if NO_ALIAS is defined. + +2010-07-21 Andreas Schwab + + * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Add + strcasestr-nonascii. + (CFLAGS-strcasestr-nonascii.c): Define. + * sysdeps/i386/i686/multiarch/strcasestr-nonascii.c: New file. + * sysdeps/x86_64/multiarch/strcasestr-nonascii.c (STRSTR_SSE42): + Remove unused attribute. + +2010-07-20 Roland McGrath + + * elf/dl-sysdep.c (_dl_important_hwcaps): Add dsocaps mask to + dl_hwcap_mask as well as dl_hwcap. Without this, dsocaps matching in + ld.so.cache was broken. With it, there is no way to disable dsocaps + like LD_HWCAP_MASK can disable hwcaps. + +2010-06-02 Emilio Pozuelo Monfort + + * sysdeps/mach/hurd/sendmsg.c (__libc_sendmsg): Fix memory leaks. + +2010-07-16 Ulrich Drepper + + * sysdeps/x86_64/multiarch/strstr.c: Rewrite to avoid indirect function + call in strcasestr. + * sysdeps/x86_64/multiarch/strcasestr.c: Declare + __strcasestr_sse42_nonascii. + * sysdeps/x86_64/multiarch/Makefile: Add rules to build + strcasestr-nonascii.c. + * sysdeps/x86_64/multiarch/strcasestr-nonascii.c: New file. + +2010-06-15 Luis Machado + + * sysdeps/powerpc/powerpc32/power6/fpu/s_copysign.S: New file. + * sysdeps/powerpc/powerpc32/power6/fpu/s_copysignf.S: New file. + * sysdeps/powerpc/powerpc64/power6/fpu/s_copysign.S: New file. + * sysdeps/powerpc/powerpc64/power6/fpu/s_copysignf.S: New file. + +2010-07-09 Ulrich Drepper + + * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Use __fcntl not + fcntl. + +2010-07-06 Andreas Schwab + + [BZ #11577] + * elf/dl-version.c (match_symbol): Don't pass NULL occation to + dl_signal_cerror. + +2010-07-06 Ulrich Drepper + + * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Implement + _PC_PIPE_BUF using F_GETPIPE_SZ. + +2010-07-05 Roland McGrath + + * manual/arith.texi (Rounding Functions): Fix rint description + implicit in round description. + +2010-07-02 Ulrich Drepper + + * elf/Makefile: Fix linking for a few tests to make recent linker + happy. + +2010-06-30 Andreas Schwab + + * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Readd + $(common-objpfx)libc_nonshared.a. + +2010-06-21 Luis Machado + + * sysdeps/powerpc/powerpc32/970/fpu/Implies: Remove. + * sysdeps/powerpc/powerpc32/power5/fpu/Implies: Remove. + * sysdeps/powerpc/powerpc32/power5+/fpu/Implies: Remove. + * sysdeps/powerpc/powerpc32/power6x/fpu/Implies: Remove. + * sysdeps/powerpc/powerpc64/970/fpu/Implies: Remove. + * sysdeps/powerpc/powerpc64/power5/fpu/Implies: Remove. + * sysdeps/powerpc/powerpc64/power5+/fpu/Implies: Remove. + * sysdeps/powerpc/powerpc64/power6x/fpu/Implies: Remove. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/970/fpu/Implies: Remove. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/power4/fpu/Implies: Remove. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5/fpu/Implies: Remove. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5+/fpu/Implies: Remove. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/fpu/Implies: Remove. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6x/fpu/Implies: Remove. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/power7/fpu/Implies: Remove. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/970/fpu/Implies: Remove. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/power4/fpu/Implies: Remove. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5/fpu/Implies: Remove. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5+/fpu/Implies: Remove. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/fpu/Implies: Remove. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6x/fpu/Implies: Remove. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/power7/fpu/Implies: Remove. + * sysdeps/powerpc/powerpc32/970/Implies: Point to power4. + * sysdeps/powerpc/powerpc32/power5/Implies: Point to power4. + * sysdeps/powerpc/powerpc32/power5+/Implies: Point to power5. + * sysdeps/powerpc/powerpc32/power6/Implies: Point to power5+. + * sysdeps/powerpc/powerpc32/power6x/Implies: Point to power6. + * sysdeps/powerpc/powerpc64/970/Implies: Point to power4. + * sysdeps/powerpc/powerpc64/power5/Implies: Point to power4. + * sysdeps/powerpc/powerpc64/power5+/Implies: Point to power5. + * sysdeps/powerpc/powerpc64/power6/Implies: Point to power5+. + * sysdeps/powerpc/powerpc64/power6x/Implies: Point to power6. + * sysdeps/powerpc/powerpc32/power7/Implies: New file. + * sysdeps/powerpc/powerpc64/power7/Implies: New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/970/Implies: New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/cell/Implies: New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/power4/Implies: New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5/Implies: New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/Implies: New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6x/Implies: New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc32/power7/Implies: New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/970/Implies: New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/cell/Implies: New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/power4/Implies: New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5/Implies: New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/Implies: New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6x/Implies: New file. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/power7/Implies: New file. + +2010-06-25 H.J. Lu + + * debug/memmove_chk.c (__memmove_chk): Renamed to ... + (MEMMOVE_CHK): ...this. Default to __memmove_chk. + * string/memmove.c (memmove): Renamed to ... + (MEMMOVE): ...this. Default to memmove. + * sysdeps/x86_64/memcpy.S: Use ENTRY_CHK and END_CHK. + * sysdeps/x86_64/sysdep.h (ENTRY_CHK): Define. + (END_CHK): Define. + * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add + memcpy-ssse3 mempcpy-ssse3 memmove-ssse3 memcpy-ssse3-back + mempcpy-ssse3-back memmove-ssse3-back. + * sysdeps/x86_64/multiarch/bcopy.S: New file . + * sysdeps/x86_64/multiarch/memcpy-ssse3-back.S: New file. + * sysdeps/x86_64/multiarch/memcpy-ssse3.S: New file. + * sysdeps/x86_64/multiarch/memcpy.S: New file. + * sysdeps/x86_64/multiarch/memcpy_chk.S: New file. + * sysdeps/x86_64/multiarch/memmove-ssse3-back.S: New file. + * sysdeps/x86_64/multiarch/memmove-ssse3.S: New file. + * sysdeps/x86_64/multiarch/memmove.c: New file. + * sysdeps/x86_64/multiarch/memmove_chk.c: New file. + * sysdeps/x86_64/multiarch/mempcpy-ssse3-back.S: New file. + * sysdeps/x86_64/multiarch/mempcpy-ssse3.S: New file. + * sysdeps/x86_64/multiarch/mempcpy.S: New file. + * sysdeps/x86_64/multiarch/mempcpy_chk.S: New file. + * sysdeps/x86_64/multiarch/init-arch.h (bit_Fast_Copy_Backward): + Define. + (index_Fast_Copy_Backward): Define. + (HAS_ARCH_FEATURE): Define. + (HAS_FAST_REP_STRING): Define. + (HAS_FAST_COPY_BACKWARD): Define. + +2010-06-21 Andreas Schwab + + * sysdeps/unix/sysv/linux/getlogin_r.c (__getlogin_r_loginuid): + Restore proper fallback handling. + +2010-06-19 Ulrich Drepper + + [BZ #11701] + * posix/group_member.c (__group_member): Correct checking loop. + + * sysdeps/unix/sysv/linux/getlogin_r.c (__getlogin_r_loginuid): Handle + OOM in getpwuid_r correctly. Return error number when the caller + should return, otherwise -1. + (getlogin_r): Adjust to return also for result of __getlogin_r_loginuid + call returning > 0 value. + * sysdeps/unix/sysv/linux/getlogin.c (getlogin): Likewise. + +2010-06-07 Andreas Schwab + + * dlfcn/Makefile: Remove explicit dependencies on libc.so and + libc_nonshared.a from targets in modules-names. + +2010-06-02 Kirill A. Shutemov + + * elf/dl-reloc.c: Flush cache after solving TEXTRELs if arch + requires it. + +2010-06-10 Luis Machado + + * sysdeps/powerpc/powerpc32/power7/memcmp.S: New file + * sysdeps/powerpc/powerpc64/power7/memcmp.S: New file. + * sysdeps/powerpc/powerpc32/power7/strncmp.S: New file. + * sysdeps/powerpc/powerpc64/power7/strncmp.S: New file. + +2010-06-02 Andreas Schwab + + * nis/nss_nis/nis-initgroups.c (get_uid): Properly resize buffer. + +2010-06-14 Ulrich Drepper + + * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Define F_SETPIPE_SZ + and F_GETPIPE_SZ. + * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise. + * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise + +2010-06-14 Roland McGrath + + * manual/libc.texinfo (@copying): Change to GFDL v1.3. + +2010-06-07 Jakub Jelinek + + * libio/stdio.h (sscanf, vsscanf): Use __REDIRECT_NTH instead of + __REDIRECT followed by __THROW. + * wcsmbs/wchar.h (swscanf, vswscanf): Likewise. + * posix/getopt.h (getopt): Likewise. + +2010-06-02 Emilio Pozuelo Monfort + + * hurd/lookup-at.c (__file_name_lookup_at): Accept + AT_SYMLINK_FOLLOW in AT_FLAGS. Fail with EINVAL if both + AT_SYMLINK_FOLLOW and AT_SYMLINK_NOFOLLOW are present + in AT_FLAGS. + * hurd/hurd/fd.h (__file_name_lookup_at): Update comment. + * sysdeps/mach/hurd/linkat.c (linkat): Pass O_NOLINK in FLAGS. + +2010-05-28 Luis Machado + + * sysdeps/powerpc/powerpc32/power7/memcpy.S: Exchange srdi for srwi. + +2010-05-26 H.J. Lu + + [BZ #11640] + * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features): + Properly check family and model. + +2010-05-26 Takashi Yoshii + + * sysdeps/unix/sysv/linux/sh/sh4/register-dump.h: Fix iov[] size. + +2010-05-24 Luis Machado + + * sysdeps/powerpc/powerpc32/power7/memset.S: POWER7 32-bit memset fix. + +2010-05-21 Ulrich Drepper + + * elf/dl-runtime.c (_dl_profile_fixup): Don't crash on unresolved weak + symbol reference. + +2010-05-19 Andreas Schwab + + * elf/dl-runtime.c (_dl_fixup): Don't crash on unresolved weak + symbol reference. + +2010-05-21 Andreas Schwab + + * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add recvmmsg + and internal_recvmmsg. + * sysdeps/unix/sysv/linux/recvmmsg.c: New file. + * sysdeps/unix/sysv/linux/internal_recvmmsg.S: New file. + * sysdeps/unix/sysv/linux/socketcall.h (SOCKOP_recvmmsg): Define. + * sysdeps/unix/sysv/linux/syscalls.list (recvmmsg): Remove. + + * sunrpc/clnt_tcp.c (clnttcp_control): Add missing break. + * sunrpc/clnt_udp.c (clntudp_control): Likewise. + * sunrpc/clnt_unix.c (clntunix_control): Likewise. + +2010-05-20 Andreas Schwab + + * sysdeps/unix/sysv/linux/sys/timex.h: Use __REDIRECT_NTH. + +2010-05-17 Luis Machado + + POWER7 optimizations. + * sysdeps/powerpc/powerpc64/power7/memset.S: New file. + * sysdeps/powerpc/powerpc32/power7/memset.S: New file. + +2010-05-19 Ulrich Drepper + + * version.h: Update for 2.13 development version. + +2010-05-12 Andrew Stubbs + + * sysdeps/sh/sh4/fpu/feholdexcpt.c (feholdexcept): Really disable all + exceptions. Return 0. + +2010-05-07 Roland McGrath + + * elf/ldconfig.c (main): Add a const. + +2010-05-06 Ulrich Drepper + + * nss/getent.c (idn_flags): Default to AI_IDN|AI_CANONIDN. + (args_options): Add no-idn option. + (ahosts_keys_int): Add idn_flags to ai_flags. + (parse_option): Handle 'i' option to clear idn_flags. + + * malloc/malloc.c (_int_free): Possible race in the most recently + added check. Only act on the data if no current modification + happened. + +See ChangeLog.17 for earlier changes. diff -Nup a/Makeconfig b/Makeconfig --- a/Makeconfig 2012-01-01 05:16:32.000000000 -0700 +++ b/Makeconfig 2012-01-01 13:08:53.291715873 -0700 @@ -803,12 +803,12 @@ endif # The assembler can generate debug information too. ifndef ASFLAGS ifeq ($(have-cpp-asm-debuginfo),yes) -ASFLAGS := $(filter -g% -fdebug-prefix-map=%,$(CFLAGS)) +ASFLAGS = $(filter -g% -fdebug-prefix-map=%,$(CFLAGS)) else -ASFLAGS := +ASFLAGS = endif endif -ASFLAGS += $(ASFLAGS-config) $(asflags-cpu) +ASFLAGS += $(ASFLAGS-config) $(asflags-cpu) $(sysdep-ASFLAGS) ifndef BUILD_CC BUILD_CC = $(CC) diff -Nup a/NEWS b/NEWS --- a/NEWS 2012-01-01 05:16:32.000000000 -0700 +++ b/NEWS 2012-01-01 13:08:53.292715874 -0700 @@ -84,16 +84,6 @@ Version 2.14 12724, 12734, 12738, 12746, 12766, 12775, 12777, 12782, 12788, 12792, 12795, 12811, 12813, 12814, 12841 -* The RPC implementation in libc is obsoleted. Old programs keep working - but new programs cannot be linked with the routines in libc anymore. - Programs in need of RPC functionality must be linked against TI-RPC. - The TI-RPC implementation is IPv6 enabled and there are other benefits. - - Visible changes of this change include (obviously) the inability to link - programs using RPC functions without referencing the TI-RPC library and the - removal of the RPC headers from the glibc headers. - Implemented by Ulrich Drepper. - * New Linux interfaces: clock_adjtime, name_to_handle_at, open_by_handle_at, syncfs, setns, sendmmsg diff -Nup a/NEWS.orig b/NEWS.orig --- a/NEWS.orig 1969-12-31 17:00:00.000000000 -0700 +++ b/NEWS.orig 2012-01-01 05:16:32.000000000 -0700 @@ -0,0 +1,2048 @@ +GNU C Library NEWS -- history of user-visible changes. 2011-12-23 +Copyright (C) 1992-2009, 2010, 2011 Free Software Foundation, Inc. +See the end for copying conditions. + +Please send GNU C library bug reports via +using `glibc' in the "product" field. + +Version 2.15 + +* The following bugs are resolved with this release: + + 6779, 6783, 9696, 10103, 10709, 11589, 12403, 12786, 12840, 12847, 12868, + 12852, 12874, 12885, 12892, 12906, 12907, 12922, 12935, 12962, 13007, + 13021, 13061, 13062, 13067, 13068, 13085, 13088, 13090, 13092, 13096, + 13114, 13118, 13123, 13134, 13138, 13147, 13150, 13166, 13179, 13185, + 13189, 13192, 13268, 13276, 13282, 13291, 13305, 13328, 13335, 13337, + 13344, 13358, 13367, 13413, 13416, 13423, 13439, 13446, 13472, 13484, + 13506, 13515, 13523, 13524, 13538, 13540 + +* New program pldd to list loaded object of a process + Implemented by Ulrich Drepper. + +* Add nss_db support back to glibc. No more dependency on Berkeley db + and support for initgroups lookups. + Implemented by Ulrich Drepper. + +* Optimized strcpy, strncpy, stpcpy, stpncpy for SSE2 and SSSE3 on x86-32. + Contributed by HJ Lu. + +* Improved strcpy, strncpy, stpcpy, stpncpy for SSE2 and SSSE3 on x86-64. + Contributed by HJ Lu. + +* Optimized strcat, strncat on x86-64 and optimized wcscmp, wcslen, strnlen + on x86-32 and x86-64. + Contributed by Liubov Dmitrieva. + +* Optimized strchr and strrchr for SSE on x86-32. + Contributed by Liubov Dmitrieva. + +* Optimized memchr, memrchr, rawmemchr, memcmp, wmemcmp, wcschr, wcscpy + for x86-64 and x86-32. + Contributed by Liubov Dmitrieva. + +* New interfaces: scandirat, scandirat64 + Implemented by Ulrich Drepper. + +* Checking versions of FD_SET, FD_CLR, and FD_ISSET added. + Implemented by Ulrich Drepper. + +* nscd now also caches the netgroup database. + Implemented by Ulrich Drepper. + +* Integrate libm with gcc's -ffinite-math-only option. + Implemented by Ulrich Drepper. + +* Lots of generic, 64-bit, and x86-64-specific performance optimizations + to math functions. Implemented by Ulrich Drepper. + +* Optimized strcasecmp and strncasecmp for AVX on x86-64. + Implemented by Ulrich Drepper. + +* New Linux interfaces: process_vm_readv, process_vm_writev + +* Optimized strcasecmp and strncasecmp for SSSE3 and SSE4.2 on x86-32. + Implemented by Ulrich Drepper. + +* Optimized nearbyint and strcasecmp for PPC. + Implemented by Adhemerval Zanella. + +* New locales: bho_IN, unm_US, es_CU, ta_LK + +Version 2.14 + +* The following bugs are resolved with this release: + + 386, 6420, 7101, 9730, 9732, 9809, 10138, 10149, 10157, 11099, 11257, + 11258, 11487, 11532, 11558, 11578, 11634, 11653, 11668, 11697, 11724, + 11781, 11799, 11820, 11837, 11857, 11869, 11892, 11895, 11901, 11945, + 11947, 11952, 11987, 12052, 12083, 12158, 12178, 12200, 12346, 12350, + 12393, 12420, 12432, 12445, 12449, 12453, 12454, 12460, 12469, 12489, + 12509, 12510, 12511, 12518, 12527, 12541, 12545, 12551, 12582, 12583, + 12587, 12597, 12601, 12611, 12625, 12626, 12631, 12650, 12653, 12655, + 12660, 12671, 12681, 12684, 12685, 12711, 12713, 12714, 12717, 12723, + 12724, 12734, 12738, 12746, 12766, 12775, 12777, 12782, 12788, 12792, + 12795, 12811, 12813, 12814, 12841 + +* The RPC implementation in libc is obsoleted. Old programs keep working + but new programs cannot be linked with the routines in libc anymore. + Programs in need of RPC functionality must be linked against TI-RPC. + The TI-RPC implementation is IPv6 enabled and there are other benefits. + + Visible changes of this change include (obviously) the inability to link + programs using RPC functions without referencing the TI-RPC library and the + removal of the RPC headers from the glibc headers. + Implemented by Ulrich Drepper. + +* New Linux interfaces: clock_adjtime, name_to_handle_at, open_by_handle_at, + syncfs, setns, sendmmsg + +* New locales: os_RU, bem_ZA, en_ZA, ff_SN, sw_KE, sw_TZ, lb_LU, wae_CH, + yue_HK, lij_IT, mhr_RU + +* New encodings: CP770, CP771, CP772, CP773, CP774 + +* New program sotruss to trace calls through PLTs + Implemented by Ulrich Drepper. + +* The malloc hook implementation is marked deprecated and will be removed + from the default implementation in the next version. The design never + worked ever since the introduction of threads. Even programs which do + not create threads themselves can use multiple threads created internally. + +Version 2.13 + +* The following bugs are resolved with this release: + + 3268, 6812, 7066, 10085, 10484, 10563, 10851, 11149, 11155, 11577, 11611, + 11640, 11655, 11701, 11840, 11856, 11883, 11903, 11904, 11968, 11979, + 12005, 12037, 12067, 12077, 12078, 12092, 12093, 12107, 12108, 12113, + 12140, 12159, 12167, 12191, 12194, 12201, 12204, 12205, 12207, 12348, + 12378, 12394, 12397 + +* New Linux interfaces: prlimit, prlimit64, fanotify_init, fanotify_mark + +* POWER7 optimizations: memset, memcmp, strncmp + +* New optimized string functions for x86-64: strnlen (SSE2), + strcasecmp (SSE2, SSSE3, SSE4.2), strncasecmp (SSE2, SSSE3, SSE4.2) + Implemented by Ulrich Drepper. + +Version 2.12 + +* The following bugs are resolved with this release: + + 3662, 4457, 5553, 10162, 10401, 10414, 10554, 10824, 10864, 10915, 10918, + 10936, 10939, 10958, 10968, 10969, 10972, 10992, 11000, 11001, 11007, + 11010, 11027, 11039, 11040, 11041, 11043, 11046, 11056, 11070, 11093, + 11115, 11120, 11125, 11126, 11127, 11134, 11141, 11149, 11183, 11184, + 11185, 11186, 11187, 11188, 11189, 11190, 11191, 11192, 11193, 11194, + 11200, 11230, 11235, 11242, 11254, 11258, 11271, 11272, 11276, 11279, + 11287, 11292, 11319, 11332, 11333, 11387, 11389, 11390, 11394, 11397, + 11410, 11438, 11449, 11470, 11471, 11520, 11537, 11538, 11571 + +* New interfaces: pthread_getname_np, pthread_setname_np + +* New Linux interface: recvmmsg + +* STT_GNU_IFUNC implemented for Sparc by David Miller. + +* The dynamic linker now recognizes supported ABI versions from the + EI_ABIVERSION field in the ELF header. + Implemented by Ulrich Drepper. + +* New NIS mode selector ADJUNCT_AS_SHADOW. The passwd.adjunct.byname table + will not be used to fill in password fields in the passwd.byname replies. + Instead it is used to synthesize the shadow.byname table, should it be + missing. This is a useful mode in some installations involving Solaris. + Implemented by Ulrich Drepper. + +* New locales: kok_IN, sq_MK, cv_RU + +Version 2.11 + +* The following bugs are resolved with this release: + + 3270, 7094, 9924, 9986, 10011, 10085, 10107, 10159, 10162, 10166, 10183, + 10195, 10196, 10200, 10203, 10207, 10211, 10213, 10217, 10221, 10229, + 10262, 10286, 10312, 10315, 10319, 10349, 10360, 10391, 10402, 10416, + 10418, 10422, 10425, 10446, 10448, 10452, 10540, 10553, 10560, 10564, + 10609, 10643, 10692, 10713, 10717, 10730, 10731, 10742, 10780, 10784, + 10789, 10817, 10823, 10840, 10847 + +* New interfaces: execvpe, pthread_sigqueue, mkstemps, mkstemps64, mkostemps, + mkostemps64 + Implemented by Ulrich Drepper. + +* Checking version of longjmp added that fails if an uninitialized stack + frame would be created. Implemented by Ulrich Drepper. + +* STT_GNU_IFUNC is now supported in static executables. + Implemented by H.J. Lu. + +* STT_GNU_IFUNC implemented for PPC by Alan Modra. + +* New optimized string functions for x86-64: strstr, strcasestr, memcmp, + strcspn, strpbrk, strspn, strcpy, stpcpy, strncpy, strcmp (SSE2, SSE4.2), + strncmp (SSE2, SSE4.2), strchr (SSE4.2), strrchr (SSE4.2). + Contributed by H.J. Lu. + + strlen, rawmemchr, strcmp (SSSE3), strncmp (SSSE3). + Implemented by Ulrich Drepper. + +* New optimized string functions for x86: strlen, strcspn, strspn, strpbrk, + strstr, strcasestr. + Contributed by H.J. Lu. + +* Support for fma instruction in AVX on x86-64. + Implemented by H.J. Lu and Ulrich Drepper. + +* AVX support in x86-64 auditing support in ld.so. + Implemented by H.J. Lu. + +* STB_GNU_UNIQUE support added. + Implemented by Ulrich Drepper. + +* Implement second fallback mode for optimized DNS lookup for even more + broken environments. If two requests from the same port are not + handled correctly close the socket and open a new one before sending + the second request. The 'single-request-reopen' option in /etc/resolv.conf + can be used to select this mode right away, instead of rediscovering the + necessity is every process again. + Implemented by Ulrich Drepper. + +* New resolver flag RES_USE_DNSSEC to enable use of verified lookup. + Implemented by Adam Tkac. + +* Optimized iconv conversions for S390x. + Implemented by Andreas Krebbel. + +* Using condvars with PI mutexes is now more efficient due to kernel + support for requeueing to PI futexes. NPTL support added for x86-64. + Implemented by Ulrich Drepper. + +* New locales: ps_AF, my_MM + +Version 2.10 + +* The following bugs are resolved with this release: + + 697, 5381, 5807, 6411, 6545, 7040, 7058, 7067, 7080, 7083, 7095, 7098, + 9677, 9694, 9697, 9701, 9704, 9705, 9706, 9720, 9726, 9730, 9733, 9736, + 9741, 9750, 9753, 9759, 9781, 9791, 9793, 9823, 9833, 9844, 9880, 9881, + 9891, 9893, 9895, 9913, 9916, 9920, 9948, 9955, 9957, 9963, 9985, 10052, + 10069, 10086, 10087, 10090, 10092, 10093, 10100, 10118, 10128 + +* New interfaces: preadv, preadv64, pwritev, pwritev64, malloc_info + 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 errors for invalid C++ code. + +* XPG7/POSIX 2008 compilation environment. Many GNU-specific functions are + now in POSIX. + +* New POSIX 2008 interface: psiginfo + Implemented by Ulrich Drepper. + +* New ISO C++1x interfaces: quick_exit, at_quick_exit + Implemented by Ulrich Drepper. + +* Support for selecting between multiple function definitions at runtime + using STT_GNU_IFUNC symbols. Implemented by Ulrich Drepper. + +* 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, strchr, strchrnul, strrchr, memchr, and rawmemchr for x86-64. + Implemented by Ulrich Drepper. + +* Extended printf hook support. It is possible to use user-defined types + and extend existing format specifiers. + Implemented by Ulrich Drepper. + +* Handling for group shadow files has been added. + Implemented by Ulrich Drepper. + +* DNS IPv4-IPv6 parallel lookup now deals better with broken DNS + servers (the case, e.g., for some people using the built-in DNS + server in ADSL modems/routers). There is a once-per-process timeout + in case of a broken server. To avoid it, users can run nscd or put + 'options single-request' in /etc/resolv.conf. + Implemented by Ulrich Drepper. + +Version 2.9 + +* The following bugs are resolved with this release: + + 3406, 5209, 5210, 5381, 5794, 5814, 5911, 6428, 6438, 6442, 6447, 6461, + 6472, 6505, 6544, 6589, 6612, 6634, 6653, 6654, 6657, 6698, 6712, 6713, + 6719, 6723, 6724, 6740, 6763, 6771, 6790, 6791, 6817, 6824, 6839, 6843, + 6845, 6856, 6857, 6860, 6867, 6875, 6919, 6920, 6942, 6947, 6955, 6966, + 6968, 6974, 6980, 6995, 7008, 7009, 7029 + +* Unified lookup for getaddrinfo: IPv4 and IPv6 addresses are now looked + up at the same time. Implemented by Ulrich Drepper. + +* TLS descriptors for LD and GD on x86 and x86-64. + Implemented by Alexandre Oliva. + +* getaddrinfo now handles DCCP and UDPlite. + Implemented by Ulrich Drepper. + +* New fixed-size conversion macros: htobe16, htole16, be16toh, le16toh, + htobe32, htole32, be32toh, le32toh, htobe64, htole64, be64toh, le64toh. + Implemented by Ulrich Drepper. + +* New implementation of memmem, strstr, and strcasestr which is O(n). + Implemented by Eric Blake. + +* New Linux interfaces: inotify_init1, dup3, epoll_create1, pipe2 + +* Implement "e" option for popen to open file descriptor with the + close-on-exec flag set. Implemented by Ulrich Drepper. + +* Implement "b" mode for fmemopen. In this mode writes writes don't + implicitly add a NUL byte and seeks from the end of the buffer really + use the buffer end, not the string length as the basis. + Implemented by Ulrich Drepper. + +* Many functions, exported and internal, now atomically set the close-on-exec + flag when run on a sufficiently new kernel. Implemented by Ulrich Drepper. + +* Sorting rules for some Indian languages (Kannada, Gurumukhi, Telugu, + Sinhala) + Implemented by Pravin Satpute. + +* New locales: sd_IN, sd_IN@devanagari, ks_IN@devanagari, ht_HT, en_AG, nl_AW. + +Version 2.8 + +* The following bugs are resolved with this release: + + 2549, 3112, 4314, 4407, 4997, 5012, 5040, 5112, 5204, 5208, 5209, 5220, + 5222, 5224, 5225, 5237, 5238, 5240, 5245, 5277, 5346, 5375, 5378, 5382, + 5424, 5427, 5428, 5435, 5436, 5439, 5441, 5442, 5443, 5451, 5452, 5454, + 5455, 5463, 5464, 5465, 5475, 5477, 5478, 5520, 5541, 5545, 5553, 5600, + 5602, 5607, 5614, 5627, 5628, 5736, 5737, 5741, 5753, 5760, 5762, 5768, + 5774, 5777, 5778, 5779, 5786, 5790, 5818, 5854, 5857, 5903, 5939, 5979, + 5983, 5995, 5998, 6004, 6007, 6020, 6021, 6024, 6040, 6042 + +* New locales: bo_CN, bo_IN, shs_CA. + +* New encoding: HP-ROMAN9, HP-GREEK8, HP-THAI8, HP-TURKISH8. + +* Sorting rules for some Indian languages (Devanagari and Gujarati). + Implemented by Pravin Satpute. + +* IPV6 addresses in /etc/resolv.conf can now have a scope ID + +* nscd caches now all timeouts for DNS entries + Implemented by Ulrich Drepper. + +* nscd is more efficient and wakes up less often. + Implemented by Ulrich Drepper. + +* More checking functions: asprintf, dprintf, obstack_printf, vasprintf, + vdprintf, and obstack_vprintf. + Implemented by Jakub Jelinek. + +* Faster memset for x86-64. + Implemented by Harsha Jagasia and H.J. Lu. + +* Faster memcpy on x86. + Implemented by Ulrich Drepper. + +* ARG_MAX is not anymore constant on Linux. Use sysconf(_SC_ARG_MAX). + Implemented by Ulrich Drepper. + +* Faster sqrt and sqrtf implemention for some PPC variants. + Implemented by Stephen Munroe. + +Version 2.7 + +* The following bugs are resolved with this release: + + 4125, 4126, 4178, 4359, 4407, 4512, 4514, 4525, 4554, 4556, 4557, 4566, + 4582, 4586, 4588, 4599, 4610, 4647, 4702, 4705, 4726, 4745, 4772, 4773, + 4775, 4776, 4792, 4813, 4814, 4816, 4833, 4858, 4860, 4896, 4905, 4925, + 4936, 4937, 4938, 4941, 4946, 4963, 4972, 5010, 5028, 5043, 5058, 5063, + 5071, 5103, 5104, 5112, 5113, 5184, 5186 + +* More checking functions: fread, fread_unlocked, open*, mq_open. + Implemented by Jakub Jelinek and Ulrich Drepper. + +* Extend fortification to C++. Implemented by Jakub Jelinek. + +* Implement 'm' modifier for scanf. Add stricter C99/SUS compliance + by not recognizing 'a' as a modifier when those specs are requested. + Implemented by Jakub Jelinek. + +* PPC optimizations to math and string functions. + Implemented by Steven Munroe. + +* New interfaces: mkostemp, mkostemp64. Like mkstemp* but allow additional + options to be passed. Implemented by Ulrich Drepper. + +* More CPU set manipulation functions. Implemented by Ulrich Drepper. + +* New Linux interfaces: signalfd, eventfd, eventfd_read, and eventfd_write. + Implemented by Ulrich Drepper. + +* Handle private futexes in the NPTL implementation. + Implemented by Jakub Jelinek and Ulrich Drepper. + +* Add support for O_CLOEXEC. Implement in Hurd. Use throughout libc. + Implemented by Roland McGrath and Ulrich Drepper. + +* Linux/x86-64 vDSO support. Implemented by Ulrich Drepper. + +* SHA-256 and SHA-512 based password encryption. + Implemented by Ulrich Drepper. + +* New locales: ber_DZ, ber_MA, en_NG, fil_PH, fur_IT, fy_DE, ha_NG, ig_NG, + ik_CA, iu_CA, li_BE, li_NL, nds_DE, nds_NL, pap_AN, sc_IT, tk_TM, ug_CN, + yo_NG. + ++ New iconv modules: MAC-CENTRALEUROPE, ISO-8859-9E, KOI8-RU. + Implemented by Ulrich Drepper. + +Version 2.6 + +* The following bugs are resolved with this release: + + 3156, 3213, 3285, 3291, 3306, 3313, 3320, 3322, 3325, 3326, 3334, 3348, + 3352, 3363, 3369, 3426, 3427, 3429, 3451, 3458, 3465, 3480, 3483, 3493, + 3514, 3515, 3559, 3632, 3664, 3673, 3674, 3745, 3747, 3818, 3840, 3842, + 3851, 3855, 3884, 3885, 3902, 3905, 3919, 3944, 3954, 3955, 3957, 3991, + 3995, 3996, 4024, 4040, 4069, 4070, 4074, 4076, 4096, 4101, 4102, 4114, + 4130, 4131, 4181, 4276, 4306, 4342, 4344, 4349, 4364, 4368, 4381, 4392, + 4403, 4405, 4406, 4411, 4438, 4439, 4455, 4456, 4465, 4512, 4514, 4586, + 4702, 4858 + +* New Linux interfaces: epoll_pwait, sched_getcpu. + +* New generic interfaces: strerror_l. + +* nscd can now cache the services database. Implemented by Ulrich Drepper. + +Version 2.5 + +* The following bugs are resolved with this release: + + 39, 68, 192, 352, 388, 531, 935, 1006, 1201, 1203, 1386, 1782, 1783, 1784, + 1785, 1786, 1787, 1951, 1974, 1996, 2072, 2098, 2125, 2134, 2158, 2182, + 2349, 2376, 2386, 2389, 2415, 2418, 2420, 2423, 2450, 2451, 2466, 2472, + 2473, 2477, 2498, 2499, 2501, 2502, 2505, 2507, 2508, 2509, 2517, 2526, + 2569, 2571, 2592, 2611, 2625, 2632, 2644, 2662, 2680, 2683, 2684, 2693, + 2695, 2703, 2734, 2751, 2764, 2766, 2775, 2792, 2821, 2823, 2832, 2841, + 2843, 2883, 2892, 2908, 2914, 2926, 2961, 2978, 2980, 2987, 2997, 2998, + 3013, 3018, 3034, 3040, 3044, 3123, 3124, 3137, 3138, 3143, 3155, 3189, + 3225, 3251, 3252, 3253, 3273 + +* For Linux, the sorting of addresses returned by getaddrinfo now also + handles rules 3, 4, and 7 from RFC 3484. I.e., all rules are handled. + Implemented by Ulrich Drepper. + +* Allow system admin to configure getaddrinfo with the /etc/gai.conf file. + Implemented by Ulrich Drepper. + +* New Linux interfaces: splice, tee, sync_file_range, vmsplice. + +* New iconv module for MIK. Contributed by Alexander Shopov. + +* For sites with broken group and/or passwd database, the auto-propagate + option of nscd can prevent creating ID lookup entries from the results + of a name lookup and vice versa. This usually is no problem but some + site might have problems with the default behavior. + Implemented by Ulrich Drepper. + +* Iterating over entire database in NIS can be slow. With the + SETENT_BATCH_READ option in /etc/default/nss a system admin can decide + to trade time for memory. The entire database will be read at once. + Implemented by Ulrich Drepper. + +* The interfaces introduced in RFC 3542 have been implemented by + Ulrich Drepper. + +* Support for the new ELF hash table format was added by Ulrich Drepper. + +* Support for priority inheritance mutexes added by Jakub Jelinek and + Ulrich Drepper. + +* Support for priority protected mutexes added by Jakub Jelinek. + +* New locales: nr_ZA, pa_PK, ca_AD, ca_FR, ca_IT, el_CY, tr_CY, as_IN, + or_IN, csb_PL, fy_NL, sr_ME. + +Version 2.4 + +* More overflow detection functions. + +* New iconv converters for IBM1025, IBM1122, IBM1137, IBM1153, + IBM1154, IBM1155, IBM1156, IBM1157, and IBM1158 contributed by Jiro Sekiba. + + More converters for IBM803, IBM901, IBM902, IBM921, IBM1008, IBM1097, + IBM1112, IBM1123, IBM1130, IBM1140, IBM1141, IBM1142, IBM1143, IBM1144, + IBM1145, IBM1146, IBM1147, IBM1148, IBM1149, IBM1166, IBM1167, IBM4517, + IBM4899, IBM4909, IBM4971, IBM5347, IBM9030, IBM9066, IBM9448, IBM12712, + IBM16804, IBM1364, IBM1371, IBM1388, IBM1390, and IBM1399 contributed + by Masahide Washizawa. + +* It is now possible to install audit libraries for the dynamic linker using + LD_AUDIT. Implemented by Ulrich Drepper. + +* The LinuxThreads add-on, providing pthreads on Linux 2.4 kernels, is no + longer supported. The new NPTL implementation requires Linux 2.6 kernels. + For a libc and libpthread that works well on Linux 2.4 kernels, we + recommend using the stable 2.3 branch. + +* The new function open_wmemstream acts like open_memstream, + but uses a wchar_t wide character buffer. + +* The new function ppoll is an improved version of poll, similar to pselect. + +* New interfaces: fdopendir, openat, fstatat, fchmodat, fchownat, + futimesat, faccessat, mkdirat, mkfifoat, mknodat, + renameat, unlinkat, linkat, symlinkat, readlinkat. + +* New Linux kernel system calls: unshare, + inotify_init, inotify_add_watch, inotify_rm_watch. + +* The euidaccess function is now also known by the alias eaccess, + for compatibility with some other systems. + +* Timezone data updated to 2006b version. + +Version 2.3.6 + +* The following bugs are resolved with this release: + + 38, 253, 549, 622, 653, 721, 758, 851, 877, 915, 934, 955, 961, + 1016, 1037, 1076, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, + 1087, 1088, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, + 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109, + 1110, 1111, 1112, 1113, 1125, 1137, 1138, 1249, 1250, 1251, 1252, + 1253, 1254, 1350, 1358, 1394, 1438, 1498, 1534 + + Visit for the details of each bug. + +* As of this release, GCC 4 can be used to compile the C Library. + +* Timezone data updated to 2005m version. + +Version 2.3.5 + +* The following bugs are resolved with this release: + + 284, 592, 602, 626, 633, 640, 650, 661, 671, 681, 693, 700, 710, 719, + 722, 723, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, + 737, 738, 739, 740, 741, 742, 743, 744, 745, 765, 767, 768, 769, 776, + 777, 787, 821, 822, 823, 825 + + Visit for the details of each bug. + +Version 2.3.4 + +* Support for RFC 3678. Real implementations exist only for Linux so far. + Implemented by Ulrich Drepper. + +* nscd can now cache entries persistently. Expiring entries are reloaded. + For speedups the cache can be shared in memory with client processes. + Implemented by Ulrich Drepper. + +* nscd can now perform SELinux checks. + Implemented by Matthew Rickard . + +* getaddrinfo queries are now cached. Canonical name lookup is performed + efficiently. + Implemented by Ulrich Drepper. + +* The nothrow function attribute is used when headers are used by gcc when + compiling C code. This can avoid significant amounts of exception + handling data. + +* The malloc functions perform more error checking and are stricter when + it comes to reacting on errors. The default action is to terminate + the process after showing an error message. Implemented by Ulrich Drepper. + +* Reverse lookups of IPv6 addresses does not use bit string or .ip6.int + lookups anymore unless explicitly requested. Implemented by Ulrich Drepper. + +* Namespaces in ld.so are implemented. DSOs can be loaded in separate + namespaces using the new function dlmopen(). This feature is of course, + like most other dynamic loading functionality, not available in statically + linked applications. Implemented by Ulrich Drepper. + +* Low-overhead boundary checking variants of string and some stdio functions + were added. These are to be used in conjunction with a gcc patch by + Jakub Jelinek which adds calls to these functions if possible. + Implemented by Jakub Jelinek and Ulrich Drepper. + +* Old code for several operating systems and machine architectures that + have not been in working condition in a long time have been removed from + the main source tree maintained by the GNU C Library's maintainers. + These files are now reside in the separate `ports' source module + that is usable as an add-on when building the library. + +Version 2.3.3 + +* New functions `dladdr1' and `dlinfo' in provide more ways to + interrogate the dynamic linker, compatible with the Solaris interface. + +* ELF thread-local storage support (TLS) now works on PowerPC and PowerPC64; + implemented by Paul Mackerras, Steven Munroe, and Roland McGrath. + +* getifaddrs now uses the netlink interface on Linux to get its information. + Implemented by Thorsten Kukuk. + +* getaddrinfo now implements AI_V4MAPPED, AI_ALL, and AI_ADDRCONF. + Implemented by Ulrich Drepper. + +* support for non-executable stacks on x86 has been added. Changes mostly + by Roland McGrath. + +* regex is now much faster for multibyte locales. Changes by Jakub Jelinek + and Ulrich Drepper. + +* getaddrinfo now performs destination address selection according to + RFC 3484. + +Version 2.3.2 + +* Thread-safe interfaces for many functions that access locale data + were added in version 2.3, but these features were omitted from NEWS. + Many functions have variants with an `_l' suffix that take a `locale_t' + object as a parameter rather than consulting the current locale. + The new functions `newlocale', `duplocale', and `freelocale' in + create and maintain `locale_t' objects. Additionally, the new function + `uselocale' sets "the current locale" (as used by functions not so + parameterized) set for an individual thread. These features were added + in version 2.3, implemented by Ulrich Drepper and Roland McGrath. + +* The functions getresuid, getresgid, setresuid, and setresgid, which + have long been available on Linux, are now declared in + and are now also available on the Hurd. + +* ELF thread-local storage support (TLS) now works on x86-64. + +* The new dynamic string token $LIB is expanded in shared library names. + This normally expands to lib, but on some 64-bit platforms to lib64 instead. + +* Aldy Hernandez contributed complete software floating point support for + PowerPC machines with no FPU. + +* fexecve is implemented on Linux. + +* The `btowc' function should work at least twice as fast due to + specialized callbacks in the iconv modules. Implemented by Bruno Haible. + +* With approriate thread add-ons cancelable functions are now implemented + in libc.so as well. No need to call the function in libpthread. This + change allowed to finally disable the incorrect and expensive handling + of weak definition in ld.so. + +* Yet more PLT entries in libc.so have been removed. We finally arrived + at the bare minimum. Startup times improved appropriately. + +* Support for the new Linux/x86 system call interface was added. The + AT_SYSINFO auxiliary vector entry is recognized and handled. + +Version 2.3 + +* Masahide Washizawa contributed iconv modules for IBM1163 and IBM1164 + charsets. + +* iconv (the program and the interface) now accepts empty names (excluding + options like //TRANSLIT) to mean "use charset of current locale". + +* localedef can now transliterate characters in strings which are not in + the provided charmap. The information from the input locale is used. + +* Prelinking support was added for ELF targets. This requires additional + tools and recent versions of the GNU binutils. Contributed by Jakub Jelinek. + +* Read-only stdio streams now use mmap to speed up operation by eliminating + copying and buffer underflows. To use add 'm' to the mode string of + the fopen/fdopen/freopen call. Implemented by Ulrich Drepper. + +* The malloc functions were completely rewritten by Wolfram Gloger based + on Doug Lea's malloc-2.7.0.c. + +* Isamu Hasegawa contributed a completely new and POSIX-conformant + implementation of regex. + +* Bruno Haible upgraded the iconv and locale implementation to support + Unicode 3.2. + +* Contents of the LC_* and LANG environment variables in the CEN style are + not recognized anymore. It never was used. Change by Ulrich Drepper. + +* The runtime (ld.so, libc, libpthread for Linux) now can handle the ELF + thread-local storage (TLS) ABI on some platforms. + Changes by Ulrich Drepper. SH support by Kaz Kojima. + +* Bruno Haible contributed iconv converters for ISO-2022-JP-3, SHIFT JIS-X0213, + EUC-JISX0213, and TSCII. + +* New header with functions `getifaddrs' and `freeifaddrs': + BSD-compatible interface for getting all network interface addresses. + Implementation for IPv4 by Roland McGrath. + +* Loading of locale data is faster due to the introduction of a locale + archive. Implemented by Roland McGrath and Ulrich Drepper. + +* Startup times are significantly reduced by not using exported functions + inside the library itself. Changes by Jakub Jelinek, Roland McGrath, + and Ulrich Drepper. + +* Steven Munroe contributed a port to PowerPC64/Linux. + +Version 2.2.6 + +* The Hurd now uses the GNU libio implementation of stdio rather than the + old GNU stdio implementation, and uses a new ABI (libc.so.0.3). + +* The Hurd on x86 now has the `ioperm' function and header file + with the same behavior as the Linux system call of the same name. + +Version 2.2.5 + +* Stephen Moshier implemented log2, log10, powl and cbrtl for the + 128-bit long double format. + +* Masahide Washizawa contributed iconv modules for IBM1132, IBM1133, IBM1160, + IBM1161, and IBM1162 charsets. + +* Andreas Jaeger contributed a port to x86-64/Linux. + +* Peter Bruin contributed a port to PowerPC/Hurd. + +* libc functions using I/O streams now can handle wide-oriented streams + as well. + +* optimizations in the dynamic linker. Binaries created by recent binutils + versions start up quicker due to reduced time spent on relocations. + +* Support for use of gcc3 added by Jakub Jelinek and HJ Lu. + +Version 2.2.4 + +* Stephen Moshier implemented cosh, expm1, log1p, acos, sinh, tanh, + asinh, atanh, j0 for the 128-bit long double format. + +* Bruno Haible updated all the code handling Unicode in some form to + support Unicode 3.1. + +* Speed of regex for single-byte locales is back to previous levels. + Patch by Isamu Hasegawa. + +* Alpha, SPARC, and IA-64 now also using floating stacks. + +* Startup time of internationalized applications greatly improved through + iconv cache. Use iconvconfig to generate the cache file. + Contributed by Ulrich Drepper. + +* The IA-64 specific part of ld.so was rewritten to eliminate some pretty + severe performance problems. Patch by David Mosberger. + +* The Hurd port got a lot more functionality like AIO, various stdio + extensions, etc. Mainly done by Roland McGrath. + +* mtrace can now lookup symbols in shared libraries. + +Version 2.2.3 + +* Intel's IA-64 math library is largely integrated. It provides fast and + accurate implementatations for most basic and standard math functions + in float, double, and long double format. + +* Stephen Moshier implemented j0, j1, jn, y0, y1, yn, lgamma, erf, erfc, + and asin for the 96-bit long double format and asin, log, tan for the + 128-bit long double format. + +* The beginning of a last-bit accurate math library by IBM Haifa were added. + The basic double functions exist today. Contributed by Abraham Ziv + , Moshe Olshansky , Ealan Henis + , and Anna Reitman . + +* An asynchronous name lookup library was added. The interface is designed + after POSIX AIO. The proposal was circulated beforehand to get comments. + No negative ones came in. Implemented by Ulrich Drepper. + +* Port to S390/64bit contributed by Martin Schwidefsky + . + +* David Mosberger implemented the setcontext family + of functions for Linux/IA-64. + +* The RPC code is now thread safe. Threads can now use the same service + of different services at the same time. Patch by Eric Norum + with some help by Ulrich Drepper. + +* Martin Schwidefsky implemented the setcontext + family of functions for Linux/S390. + +* Ulrich Drepper implemented the setcontext family + of functions for Linux/x86. + +* Port to Linux/CRIS contributed by Axis Communications. + +Version 2.2.2 + +* Lots of headers were cleaned up. Using the tool in the conform/ subdir + we can now check for namespace violations and missing declarations. The + result is that almost all headers are now Unix-compliant (as defined in + the upcoming XPG6). The negative side is that some programs might need + corrections, too, if they depend on the incorrect form of the headers in + previous versions which defined too many symbols and included too many + other headers. + +* regex now handles multibyte character sets correctly. + Contributed by Isamu Hasegawa . + +* iconv (the program) does now conform to the upcoming XPG6 and handles + charmaps. Instead of the charset names the path of charmaps can be + provided and the conversion happens based on this data. + Contributed by Ulrich Drepper. + +* The locale program now provides detailed information about the installed + locales. While + + locale -a + + only lists the names of the supported locales + + locale -a --verbose + + provides details such as country, language, and codeset name. + Contributed by Ulrich Drepper. + +Version 2.2.1 + +* The gencat program now parses the input file according to the charset + selected by the LC_CTYPE category. This is important for stateful + character sets. To make generating catalogs easier there is a way + to overwrite the charset selected by the locale: before the first + message or $ quote line the catalog can contain a line like + + $ codeset=ISO-8859-2 + + to select the charset (ISO-8859-2 in this case). + + Implemented by Shinya Hanataka and Ulrich Drepper. + +* New codeset conversion modules: IBM-922 (Estonia PC codeset), + IBM-1124 (Ukraine PC codeset), IBM-1129 (Vietnamese PC codeset). + Contributed by Masahide Washizawa . + +* Optimized string functions for Alpha ev6 and ev67 by Richard Henderson + and Rick Gorton . + +* The LANGUAGE environment variable is now ignored unless the locale is + changed from the default "C" locale. + +* The usual bug fixes. + +Version 2.2 + +* Greg McGary added runtime support for bounds checking using gcc's + new -fbounded-pointers option. ix86 target is complete. PowerPC + is in progress. + +* Thorsten Kukuk added secure mode support to nscd. + +* The Berkeley db libraries have been removed. + + Related, the nss_db module is now in a separate package since it + obviously requires a database library being available. + +* Wide character I/O streams implemented by Ulrich Drepper. + +* Functions from the extended socket API added by Ulrich Drepper. + +* Functions feenableexcept and fedisableexcept to control the + behaviour of individual exceptions have been added by Andreas Jaeger. + +* ldconfig program added by Andreas Jaeger and Jakub Jelinek. + +* The resolver code has been updated from bind 8.2.3-T5B which supports + threads. The integration was done by Andreas Jaeger, Adam D. Bradley, + and Mark Kettenis. + + This change could in some situations effect backward compatibility. Since + now `_res' is a thread-local instead of a global variable, modifying it + in one thread does not have any effect in other threads. + + The resolver library was also extended to allow IPv6 as the transport + protocol for the requests. This work was done by Stig Venaas. + +* Compatibility code for K&R C compilers has been removed from the + header files. A ISO C compiler is needed to use the library + (conforming to either C89 or C99 standard). + +* Complete rewrite of the localedef program to support multibyte character + sets. Implement handling of ISO 14651 and ISO 14652. Rewrite strcoll, + strxfrm, wcscoll, and wcsxfrm functions. Make isw*() functions work. + Implemented by Ulrich Drepper. + + Bruno Haible significantly improved the generation and use of the data + structures for the wide character tables. + +* Plural handling in gettext implemented by Ulrich Drepper. + +* The utmp daemon has been removed. + +* The port to MIPS-Linux has been finished by Andreas Jaeger. + +* A port to Hitachi SH3 and SH4 has been contributed by Kazumoto Kojima + and Yutaka Niibe. + +* POSIX clocks and timers implemented by Kaz Kylheku and Ulrich Drepper. + +* POSIX barriers implemented by Kaz Kylheku. + +* POSIX spawn function family implemented by Ulrich Drepper. + +* POSIX spinlocks are now available. + +* Timed wait functions for mutex, rwlock, and semaphores are implemented. + +* the configure option --enable-kernel=X.Y.Z allows to strip out + compatibility for kernel versions before X.Y.Z. This is currently only + implemented for Linux. + +* the sockaddr_in6 structure changed. The IPv6 working group added a new + field sin6_scope_id. This means that all programs using IPv6 should be + recompiled. Don't expect binary compatibility with previous glibc + versions. + +* various conversion modules for IBM character sets contributed by + Masahide Washizawa. + +* IA-64 port by Jes Sorensen and HJ Lu. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Compiling the GNU C Library for Linux/ia64 +****************************************** + + Please refer to the file INSTALL in the same directory as you found +this file for general information about configuring and compiling +glibc. + + For general inquiries about glibc under Linux/ia64 please use the +following mailing list linux-ia64@linuxia64.org or one of the relevant +glibc mailing lists. + +Recommended Tools for Compilation +================================= + + In order for glibc-2.2 to build correctly on the ia64 you need at +least the following versions of the GNU tools (the : + + * The Cygnus toolchain snapshot for the ia64 as of August 4 + including the provided set of patches. It is however recommend + you use the October 24 toolchain snapshot or a more recent version. + + OR alternatively you can try the following (the Cygnus toolchain is + the recommended solution): + + * GCC and binutils, GAS and GNU LD out of CVS from + sources.redhat.com as of August 28, 2000 or later. The CVS tree + may require special patches to work properly on the ia64. + +Configuring and compiling GNU Libc for Linux/ia64 +================================================= + + The library requires Linux kernel version 2.4.0-test4-000728 or +later to funtion properly. Besides that it support for debug libraries +is currently untested. Hence the following options +are required for configuring the library: + + --disable-debug --enable-kernel=2.4.0 + + It is also important that you make sure the library picks up the +appropriate kernel header files, if you do not have recent enough +kernel headers in /usr/src/linux/include, you should use the +--with-headers= option to specify the location. + + As an example I personally use the following options to configure +the library: + + --disable-debug + --disable-cvs + --enable-kernel=2.4.0 + --host=ia64-linux + --enable-add-ons=yes + --prefix=/usr + --with-headers=/home/jes/linux/include + + +Good luck + +Jes Sorensen , +November 14th, 2000 +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Version 2.1.3 + +* bug fixes + + +Version 2.1.2 + +* bug fixes + + +Version 2.1.1 + +* New ISO C 9x function _Exit, imaxabs, and imaxdiv are added. + +* New xdr functions are added; some rpc functions are now 64bit clean. + +* Fixed a number of bugs and memory leaks (especially in NIS+ code). + +* Fixed known incompatibilities with glibc 2.0. + +* New functions lock64, strchrnul, rawmemchr, getutmp and getutmpx. + +* Optimized a number of functions (especially the ELF dynamic loader). + +* Update timezone data files. + +* lots of charmaps corrections + +* some new locale definitions and charmaps + + +Version 2.1 + +* Richard Henderson corrected size of struct timeval on Linux/Alpha to + conform to POSIX member type requirements. Symbol versions have been + adjusted as needed within the library, and for direct use by applications, + but there is potential for problems if third-party libraries use + struct timeval as part of their interface. This does not present + a problem for X and other "essential" system libraries. + +* An additional locale model to support C++ Standard Library locale + model and probably more was implemented by Ulrich Drepper. + +* Eric Youngdale and Ulrich Drepper implemented versioning of objects on + symbol level. + +* Miles Bader provided the `argp' function family to support hierachical + command line argument parsing, layered on top of getopt. + +* strtod accepts new hexadecimal floating-point format from ISO C 9X. + +* printf has two new specifiers %a and %A to print hexadecimal flaoting-point + numbers. + +* scanf recognizes the %a and %A format for scanning floating point numbers. + +* the new headers and from ISO C 9X provides + information and interfaces for the available integer types. + +* about 130 new math functions were added to implement the ISO C9x math + library. + +* the new header contains definitions of the complex math + functions from ISO C 9X. + +* the new header defines generic macros to use complex or + real valued functions. + +* Thorsten Kukuk provided an implementation for NIS+, securelevel 0, 1 and 2. + +* Andreas Jaeger provided a test suite for the math library. + +* Mark Kettenis implemented the utmpx interface and an utmp daemon. + +* Ulrich Drepper added character set conversion functions (iconv). + +* Optimized string functions have been added. + +* The localedata addon is now part of glibc. + +* An implementation of profiling shared libraries was added by Ulrich Drepper. + +* Thorsten Kukuk and Ulrich Drepper provided an implementation for a caching + daemon for NSS (nscd). + + Missing a better place here are some numbers on improvements. Under + Linux 2.1.125 un-tar-ing the kernel sources takes + + user system wall + + using local files 12.19s 6.88s 22.91s + + using NIS 13.92s 8.91s 26.34s + + using NIS & nscd 10.37s 7.34s 25.30s + + using NIS+ 27.57s 30.37s 640.46s + + using NIS+ & nscd 10.25s 7.83s 26.51s + + using NIS & old nscd [1] 13.83s 8.32s 29.60s + + Keep in mind that non-namelookup related operations dominate above times. + It was just a common complain that using NIS+ unpacking the kernel is + horribly slow. + + [1] The old nscd implementation is not available anymore since it was + distributed with glibc up to version 2.0.98 and thus is now replaced. + +* Tim Waugh provided an implementation of the POSIX.2 wordexp function family. + +* Mark Kettenis provided a Hesiod NSS module. + +* The ELF dynamic loader knows how to process dynamic string tokens ($ORIGIN + and $PLATFORM) in RPATHs and similar strings (Ulrich Drepper). + +* rcmd can now handle netgroups (Dick Streefland). + +* A port to the ARM was contributed by Phil Blundell, Pat Beirne and Scott + Bambrough. + +* Support for the IPv6 protocol has been added to the socket API, as per the + latest draft standards. + +* Support for Linux 2.2 has been added. + +* Interface changes relative to the latest 2.0.x release: +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +addseverity NEW: Unix98 +alphasort64 NEW: LFS +argp_err_exit_status NEW: argp, GNU ext +argp_error NEW: argp, GNU ext +argp_failure NEW: argp, GNU ext +argp_help NEW: argp, GNU ext +argp_parse NEW: argp, GNU ext +argp_program_bug_address NEW: argp, GNU ext +argp_program_version NEW: argp, GNU ext +argp_program_version_hook NEW: argp, GNU ext +argp_state_help NEW: argp, GNU ext +argp_usage NEW: argp, GNU ext +authdes_create NEW: Secure RPC +authdes_getucred NEW: Secure RPC +authdes_pk_create NEW: Secure RPC +backtrace NEW: GNU ext. +backtrace_symbols NEW: GNU ext. +backtrace_symbols_fd NEW: GNU ext. +cacos NEW: ISO C 9x +cacosf NEW: ISO C 9x +cacosh NEW: ISO C 9x +cacoshf NEW: ISO C 9x +cacoshl NEW: ISO C 9x +cacosl NEW: ISO C 9x +capget NEW: kernel +capset NEW: kernel +carg NEW: ISO C 9x +cargf NEW: ISO C 9x +cargl NEW: ISO C 9x +casin NEW: ISO C 9x +casinf NEW: ISO C 9x +casinh NEW: ISO C 9x +casinhf NEW: ISO C 9x +casinhl NEW: ISO C 9x +casinl NEW: ISO C 9x +catan NEW: ISO C 9x +catanf NEW: ISO C 9x +catanh NEW: ISO C 9x +catanhf NEW: ISO C 9x +catanhl NEW: ISO C 9x +catanl NEW: ISO C 9x +cbc_crypt NEW: Secure RPC +ccos NEW: ISO C 9x +ccosf NEW: ISO C 9x +ccosh NEW: ISO C 9x +ccoshf NEW: ISO C 9x +ccoshl NEW: ISO C 9x +ccosl NEW: ISO C 9x +cexp NEW: ISO C 9x +cexpf NEW: ISO C 9x +cexpl NEW: ISO C 9x +cimag NEW: ISO C 9x +cimagf NEW: ISO C 9x +cimagl NEW: ISO C 9x +clearerr_locked REMOVED +clntunix_create NEW: sunrpc ext +clog NEW: ISO C 9x +clog10 NEW: ISO C 9x +clog10f NEW: ISO C 9x +clog10l NEW: ISO C 9x +clogf NEW: ISO C 9x +clogl NEW: ISO C 9x +conj NEW: ISO C 9x +conjf NEW: ISO C 9x +conjl NEW: ISO C 9x +cpow NEW: ISO C 9x +cpowf NEW: ISO C 9x +cpowl NEW: ISO C 9x +cproj NEW: ISO C 9x +cprojf NEW: ISO C 9x +cprojl NEW: ISO C 9x +creal NEW: ISO C 9x +crealf NEW: ISO C 9x +creall NEW: ISO C 9x +creat64 NEW: LFS +csin NEW: ISO C 9x +csinf NEW: ISO C 9x +csinh NEW: ISO C 9x +csinhf NEW: ISO C 9x +csinhl NEW: ISO C 9x +csinl NEW: ISO C 9x +csqrt NEW: ISO C 9x +csqrtf NEW: ISO C 9x +csqrtl NEW: ISO C 9x +ctan NEW: ISO C 9x +ctanf NEW: ISO C 9x +ctanh NEW: ISO C 9x +ctanhf NEW: ISO C 9x +ctanhl NEW: ISO C 9x +ctanl NEW: ISO C 9x +des_setparity NEW: Secure RPC +ecb_crypt NEW: Secure RPC +endutxent NEW: Unix98 +exp10 NEW: ISO C 9x +exp10f NEW: ISO C 9x +exp10l NEW: ISO C 9x +exp2 NEW: ISO C 9x +exp2f NEW: ISO C 9x +exp2l NEW: ISO C 9x +fattach NEW: STREAMS +fdetach NEW: STREAMS +fdim NEW: ISO C 9x +fdimf NEW: ISO C 9x +fdiml NEW: ISO C 9x +feclearexcept NEW: ISO C 9x +fegetenv NEW: ISO C 9x +fegetexceptflag NEW: ISO C 9x +fegetround NEW: ISO C 9x +feholdexcept NEW: ISO C 9x +feof_locked REMOVED +feraiseexcept NEW: ISO C 9x +ferror_locked REMOVED +fesetenv NEW: ISO C 9x +fesetexceptflag NEW: ISO C 9x +fesetround NEW: ISO C 9x +fetestexcept NEW: ISO C 9x +feupdateenv NEW: ISO C 9x +fflush_locked REMOVED +ffsl NEW: GNU ext. +ffsll NEW: GNU ext. +fgetpos64 NEW: LFS +fgets_unlocked NEW: GNU ext. +fileno_locked REMOVED +fma NEW: ISO C 9x +fmaf NEW: ISO C 9x +fmal NEW: ISO C 9x +fmax NEW: ISO C 9x +fmaxf NEW: ISO C 9x +fmaxl NEW: ISO C 9x +fmin NEW: ISO C 9x +fminf NEW: ISO C 9x +fminl NEW: ISO C 9x +fmtmsg NEW: Unix98 +fopen64 NEW: LFS +fputc_locked REMOVED +fputs_unlocked NEW: GNU ext. +fread_unlocked NEW: GNU ext. +freopen64 NEW: LFS +fseeko NEW: Unix98 +fsetpos64 NEW: LFS +fstatfs64 NEW: LFS +fstatvfs NEW: Unix98 +fstatvfs64 NEW: LFS +ftello NEW: Unix98 +ftello64 NEW: LFS +ftruncate64 NEW: LFS +ftw64 NEW: LFS +fwrite_unlocked NEW: GNU ext. +gai_strerror NEW: IPv6 +gamma_r REMOVED +gammaf_r REMOVED +gammal_r REMOVED +getchar_locked REMOVED +getdate NEW: Unix98 +getdate_err NEW: Unix98 +getdate_r NEW: GNU ext. +getmsg NEW: STREAMS +getnameinfo NEW: IPv6 +getnetname NEW: Secure RPC +getpmsg NEW: STREAMS +getpt NEW: Unix98 PTY +getrlimit64 NEW: LFS +getutxent NEW: Unix98 +getutxid NEW: Unix98 +getutxline NEW: Unix98 +glob64 NEW: GNU ext. +globfree64 NEW: GNU ext. +gnu_get_libc_release NEW: GNU ext. +gnu_get_libc_version NEW: GNU ext. +grantpt NEW: Unix98 PTY +host2netname NEW: Secure RPC +iconv NEW: iconv +iconv_close NEW: iconv +iconv_open NEW: iconv +if_freenameindex NEW: IPv6 +if_indextoname NEW: IPv6 +if_nameindex NEW: IPv6 +if_nametoindex NEW: IPv6 +in6addr_any NEW: IPv6 +in6addr_loopback NEW: IPv6 +inet6_isipv4mapped NEW: IPv6 +isastream NEW: STREAMS +iswblank NEW: GNU ext. +key_decryptsession NEW: Secure RPC +key_decryptsession_pk NEW: Secure RPC +key_encryptsession NEW: Secure RPC +key_encryptsession_pk NEW: Secure RPC +key_gendes NEW: Secure RPC +key_get_conv NEW: Secure RPC +key_secretkey_is_set NEW: Secure RPC +key_setnet NEW: Secure RPC +key_setsecret NEW: Secure RPC +llrint NEW: ISO C 9x +llrintf NEW: ISO C 9x +llrintl NEW: ISO C 9x +llround NEW: ISO C 9x +llroundf NEW: ISO C 9x +llroundl NEW: ISO C 9x +log2 NEW: ISO C 9x +log2f NEW: ISO C 9x +log2l NEW: ISO C 9x +lrint NEW: ISO C 9x +lrintf NEW: ISO C 9x +lrintl NEW: ISO C 9x +lround NEW: ISO C 9x +lroundf NEW: ISO C 9x +lroundl NEW: ISO C 9x +lseek64 NEW: LFS +makecontext NEW: Unix98 +mempcpy NEW: GNU ext. +mmap64 NEW: LFS +moncontrol REMOVED +modify_ldt NEW: kernel +nan NEW: ISO C 9x +nanf NEW: ISO C 9x +nanl NEW: ISO C 9x +nearbyint NEW: ISO C 9x +nearbyintf NEW: ISO C 9x +nearbyintl NEW: ISO C 9x +netname2host NEW: Secure RPC +netname2user NEW: Secure RPC +nexttoward NEW: ISO C 9x +nexttowardf NEW: ISO C 9x +nexttowardl NEW: ISO C 9x +nftw NEW: Unix98 +nftw64 NEW: LFS +open64 NEW: LFS +passwd2des NEW: Secure RPC +pow10 NEW: GNU ext. +pow10f NEW: GNU ext. +pow10l NEW: GNU ext. +pread NEW: Unix98 +pread64 NEW: LFS +printf_size NEW: GNU ext. +printf_size_info NEW: GNU ext. +profil_counter REMOVED +pthread_mutexattr_getkind_np REPLACED +pthread_mutexattr_setkind_np REPLACED +ptsname NEW: Unix98 PTY +ptsname_r NEW: Unix98 PTY +putc_locked REMOVED +putchar_locked REMOVED +putgrent NEW: GNU ext. +putmsg NEW: STREAMS +putpmsg NEW: STREAMS +pututxline NEW: Unix98 +pwrite NEW: Unix98 +pwrite64 NEW: LFS +readdir64 NEW: LFS +readdir64_r NEW: LFS +remquo NEW: ISO C 9x +remquof NEW: ISO C 9x +remquol NEW: ISO C 9x +round NEW: ISO C 9x +roundf NEW: ISO C 9x +roundl NEW: ISO C 9x +rtime NEW: GNU ext. +scalbln NEW: ISO C 9x +scalblnf NEW: ISO C 9x +scalblnl NEW: ISO C 9x +scandir64 NEW: LFS +sendfile NEW: kernel +setcontext NEW: Unix98 +setrlimit64 NEW: LFS +setutxent NEW: Unix98 +sighold NEW: Unix98 +sigignore NEW: Unix98 +sigqueue NEW: POSIX.1b +sigrelse NEW: Unix98 +sigset NEW: POSIX.1b +sigtimedwait NEW: POSIX.1b +sigwaitinfo NEW: POSIX.1b +sincos NEW: GNU ext. +sincosf NEW: GNU ext. +sincosl NEW: GNU ext. +statfs64 NEW: LFS +statvfs NEW: Unix98 +statvfs64 NEW: LFS +strcasestr NEW: GNU ext. +strtoimax NEW: ISO C 9x +strtoumax NEW: ISO C 9x +strverscmp NEW: GNU ext. +svcauthdes_stats NEW: Secure RPC +svcunix_create NEW: sunrpc etx +svcunixfd_create NEW: sunrpc ext +swapcontext NEW: Unix98 +tcgetsid NEW: Unix98 PTY +tdestroy NEW: GNU ext. +tgamma NEW: ISO C 9x +tgammaf NEW: ISO C 9x +tgammal NEW: ISO C 9x +tmpfile64 NEW: LFS +trunc NEW: ISO C 9x +truncate64 NEW: LFS +truncf NEW: ISO C 9x +truncl NEW: ISO C 9x +umount2 NEW: kernel +unlockpt NEW: Unix98 PTY +updwtmpx NEW: Unix98 +user2netname NEW: Secure RPC +utmpxname NEW: Unix98 +versionsort NEW: GNU ext. +versionsort64 NEW: GNU ext. +waitid NEW: Unix98 +wcscasecmp NEW: GNU ext. +wcsncasecmp NEW: GNU ext. +wcsnlen NEW: GNU ext. +wcstoimax NEW: ISO C 9x +wcstoll NEW: ISO C 9x +wcstoull NEW: ISO C 9x +wcstoumax NEW: ISO C 9x +wcswcs NEW: Unix98 +wordexp NEW: POSIX.2 +wordfree NEW: POSIX.2 +write_profiling REMOVED +xdecrypt NEW: Secure RPC +xdr_authdes_cred NEW: Secure RPC +xdr_authdes_verf NEW: Secure RPC +xdr_cryptkeyarg NEW: Secure RPC +xdr_cryptkeyarg2 NEW: Secure RPC +xdr_cryptkeyres NEW: Secure RPC +xdr_getcredres NEW: Secure RPC +xdr_key_netstarg NEW: Secure RPC +xdr_key_netstres NEW: Secure RPC +xdr_keybuf NEW: Secure RPC +xdr_keystatus NEW: Secure RPC +xdr_netnamestr NEW: Secure RPC +xdr_sizeof NEW: Secure RPC +xdr_unixcred NEW: sunrpc ext +xencrypt NEW: Secure RPC +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Version 2.0.6 + +* more bug fixes + + +Version 2.0.5 + +* more bug fixes + +* inet_ntoa is thread-safe + +* updwtmp is moved from libutil to libc + +* rewrite of cbrt function + +* update of timezone data + +Version 2.0.4 + +* more bug fixes + +Version 2.0.3 + +* more bug fixes + +Version 2.0.2 + +* more bug fixes + +* add atoll function + +* fix complex problems in Berkeley DB code + +* fix math functions + +Version 2.0.1 + +* fixed lots of header problems (especially Linux/GNU specific) + +* dynamic loader preserves all registers + +* Roland McGrath provided support for handling of auxiliary objects in + the ELF dynamic loader. + +* support for parallel builds is improved + +Version 2.0 + +* GNU extensions are no longer declared by default. To enable them you + must define the macro `_GNU_SOURCE' in your program or compile with + `-D_GNU_SOURCE'. + +* The library has changed from using GNU ld symbol aliases to using weak + symbols where available. The ELF object file format supports weak + symbols; GNU ld also supports weak symbols in the a.out format. (There + is also now support for other GNU ld extensions in ELF. Use the + `--with-elf' option to configure to indicate you have ELF, and + `--with-gnu-ld' if using GNU ld.) This change resulted in the deletion + of many files which contained only symbol aliases, reducing the size of + the source and the compiled library; many other files were renamed to + less cryptic names previously occupied by the symbol alias files. + There is a new header file for programs which operate on + files in the ELF format. + +* Converted to Autoconf version 2, so `configure' has more options. + Run `configure --help' to see the details. + +* The library can now be configured to build profiling, highly-optimized + (but undebuggable), and/or shared libraries (ELF with GNU ld only). The + `--enable-profile', `--enable-omitfp', and `--enable-shared' options to + `configure' enable building these extra libraries. The shared library is + built by default when using both ELF and GNU ld. When shared libraries + are enabled, the new library `-ldl' is available for arbitrary run-time + loading of shared objects; its interface is defined in . The + new header file gives access to the internals of the run-time + dynamic linker, `ld.so'. The shell script `ldd' is similar to the + application of same name on other systems and it provides information + about dynamically linked binaries. + +* The C library now provides the run-time support code for profiling + executables compiled with `-pg'. Programs can control the profiling code + through the interface in . The `gmon.out' files written by + the GNU C library can be read only by GNU `gprof' (from GNU binutils); + the support for this file format was contributed by David Mosberger-Tang. + +* The math code has been replaced with a math library based on fdlibm from + Sun, and modified by JT Conklin and Ulrich Drepper with i387 support, by + Ian Taylor with `float' functions and by Ulrich Drepper with `long double' + functions. The math functions now reside in a separate library, so + programs using them will need to use `-lm' their linking commands. + +* John C. Bowman contributed optimized ix87 assembler inline functions. + +* Ulrich Drepper has contributed support for an `/etc/nsswitch.conf' + mechanism similar to that found in Solaris 2. This is now used for the + group, passwd, hosts, networks, services, protocols, rpc, ethers, + shadow, netgroup, publickey, and alias databases. The `nsswitch.conf' + file controls what services are used for each individual database. This + works by loading shared libraries with names specified in `nsswitch.conf', + so service modules can be changed or added at any time without even + relinking any program. Currently there are the file, db, and NIS based + NSS services available. + +* The new functions `strtoq' and `strtouq' parse integer values from + strings, like `strtol' and `strtoul', but they return `long long int' and + `unsigned long long int' values, respectively (64-bit quantities). + +* The new functions `strtof' and `strtold' parse floating-point values from + strings, like `strtod', but they return `float' and `long double' values, + respectively (on some machines `double' and `long double' are the same). + +* Ulrich Drepper has contributed new implementations of the floating-point + printing and reading code used in the `printf' family of functions and + `strtod', `strtof', and `strtold'. These new functions are perfectly + accurate, and much faster than the old ones. + +* The implementation of the POSIX locale model was completely rewritten by + Ulrich Drepper. This includes the new programs `localedef' and `locale' + to compile the POSIX locale definition. + +* The former dummy implementations of the strcoll and strxfrm function are + now replaced by fully functional code contributed by Ulrich Drepper. The + collation information comes from the POSIX locale definitions. + +* The new header defines an interface for accessing + various locale-dependent data (using the locale chosen with `setlocale'). + +* Ulrich Drepper has contributed a new suite of functions for operation on + wide-character and multibyte-character strings, in ; + and classification and case conversion of wide characters, in . + These new functions are conforming to the ISO C, Amendement 1 specification. + +* There is now a second implementation of the standard I/O library available. + It comes from GNU libg++ as was written by Per Bothner, heavily modified + by Hongjiu Lu and made thread safe by Ulrich Drepper. + +* You can now use positional parameter specifications in format strings + for the `printf' and `scanf' families of functions. For example, + `printf ("Number %2$d, Mr %1$s\n", "Jones", 6);'' prints + ``Number 6, Mr Jones''. This is mainly useful when providing different + format strings for different languages, whose grammars may dictate + different orderings of the values being printed. To support this + feature, the interface for `register_printf_handler' has changed; see + the header file for details. + +* The `printf' and `scanf' families of functions now understand a new + formatting flag for numeric conversions: the ' flag (e.g. %'d or %'f) says + to group numbers as indicated by the locale; for `scanf' and friends, this + says to accept as valid only a number with all the proper grouping + separators in the right places. In the default "C" locale, numbers are + not grouped; but locales for specific countries will define the usual + conventions (i.e. separate thousands with `,' in the US locale). + +* The pgrp functions have been regularized, slightly incompatibly but much + less confusingly. The core functions are now `getpgid' and `setpgid', + which take arguments for the PID to operate on; the POSIX.1 `getpgrp' (no + argument) and BSD `setpgrp' (identical to `setpgid') functions are + provided for compatibility. There is no longer an incompatible `getpgrp' + with an argument declared under _BSD_SOURCE; no BSD code uses it. + +* The new header file and suite of functions simplify programs that + operate on directory trees. This code comes from 4.4 BSD. + +* The resolver code has been updated from the BIND 4.9.5-P1 release. + Parts of the code were heavily modified by Ulrich Drepper to fit in the + NSS scheme used in glibc. + +* There is a new malloc debugging hook `__memalign_hook'. + +* There are new typedefs `ushort' for `unsigned short int' and `uint' for + `unsigned int' in . These are for compatibility only and + their use is discouraged. + +* The `-lmcheck' library to enable standard malloc debugging hooks is now + done differently, so that it works even without GNU ld. + +* New function `euidaccess' checks allowed access to a file like `access', + but using the effective IDs instead of the real IDs. + +* The time zone data files have been updated for the latest and greatest + local time conventions of the countries of the world. + +* The new function `dirfd' extracts the file descriptor used by a DIR stream; + see . + +* The new functions `ecvt', `fcvt', and `gcvt' provide an obsolete interface + for formatting floating-point numbers. They are provided only for + compatibility; new programs should use `sprintf' instead. There are + also equivalent function for the `long double' floating-point type and + all functions also exist in a reentrant form. + +* The new auxiliary library `-lutil' from 4.4 BSD contains various + functions for maintaining the login-record files (primarily of use to + system programs such as `login'), and convenient functions for + allocating and initializing a pseudo-terminal (pty) device. + +* Ulrich Drepper has contributed new support for System V style + shared memory and IPC on systems that support it. + +* Ulrich Drepper has contributed several miscellaneous new functions found + in System V: The `hsearch' family of functions provide an effective + implementation of hash tables; `a64l' and `l64a' provide a very simple + binary to ASCII mapping; `drand48' and friends provide a 48-bit random + number generator. + +* Ulrich Drepper has contributed new reentrant counterparts for the + `random' and `hsearch' families of functions; `random_r', `hsearch_r', etc. + +* Ulrich Drepper has contributed new, highly-optimized versions of several + string functions for the i486/Pentium family of processors. + +* Ulrich Drepper has updated the Linux-specific code, based largely + on work done in Hongjiu Lu's version of GNU libc for Linux. + The GNU library now supports Linux versions 2.0.10 and later, + using the ELF object file format (i[3456]86-*-linux). + +* Andreas Schwab has ported the C library to Linux/m68k (m68k-*-linux). + +* David Mosberger-Tang and Richard Henderson have ported the C library + to Linux/Alpha (alpha-*-linux). Richard Henderson contributed the + dynamic linking support for ELF/Alpha. + +* Richard Henderson contributed several Alpha optimized assembler function + for arithmetic and string handling. + +* Ulrich Drepper has contributed a new set of message catalog functions to + support multiple languages using the interface, for use with + his new package GNU gettext. Translation volunteers have contributed + catalogs of the library's messages in Spanish, German, and Korean. + +* For compatibility with XPG4, Ulrich Drepper has contributed the `gencat' + program and the `catgets' function for reading the catalog files it + creates. (The interface is preferred; we include the + interface using `catgets' only for source compatibility with + programs already written to use it.) + +* New header file gives SVID-compatible names for + constants. + +* Various new macros, declarations, and small header files for compatibility + with 4.4 BSD. + +* New function `group_member' is a convenient way to check if a process has + a given effective group ID. + +* When using GCC 2.7 and later, the socket functions are now declared in a + special way so that passing an argument of type `struct sockaddr_in *', + `struct sockaddr_ns *', or `struct sockaddr_un *' instead of the generic + `struct sockaddr *' type, does not generate a type-clash warning. + +* New function `error' declared in header file is a convenient + function for printing error messages and optionally exiting; this is the + canonical function used in GNU programs. The new functions `err', `warn', + and friends in header file are the canonical 4.4 BSD interface for + doing the same thing. + +* The interface has several new flags from 4.4 BSD that extend the + POSIX.2 `glob' function to do ~ and {...} expansion. + +* New function `unsetenv' complements `setenv' for compatibility with 4.4 BSD. + `clearenv' which is used in POSIX.9 is also available. + +* New function `getsid' returns session ID number on systems that support it. + +* We have incorporated the 4.4 BSD `db' library (version 1.85). New header + files and provide a rich set of functions for several + types of simple databases stored in memory and in files, and is + an old `ndbm'-compatible interface using the `db' functions. Link with + `-ldb' to get these functions. + +* New macro `strdupa' copies a string like `strdup', but uses local stack + space from `alloca' instead of dynamic heap space from `malloc'. + +* New function `strnlen' is like `strlen' but searches only a given maximum + number of characters for the null terminator. `stpncpy', `strndup' and + `strndupa' are similar variants for the `stpcpy', `strdup' and `strdupa' + function. + +* New function `statfs' in header . + +* The new and interfaces contributed by Miles Bader + provide convenient functions for operating on blocks of null-terminated + strings. + +* A new suite of functions in handle all the details of reading + and writing the utmp file. + +* An implementation of the NIS/YP(tm) based NSS service was contributed by + Thorsten Kukuk. + +* Paul Eggert and Ulrich Drepper modified the `strftime' function to be + completely POSIX compliant and also implemented the extended functionality + to handle alternate digit representation and alternate era date formats. + +* Ulrich Drepper provided an implementation of the `strptime' function + defined in XPG4.2 which transforms a string into a `struct tm' value. + +* Paul Eggert provided the tzselect shell script as part of the timezone + code. The shell script makes it easy to select the correct timezone + specification. + +* The implementation of the malloc family of functions is completely replaced + by a new implementation by Doug Lea with many improvements by Wolfram Gloger. + The implementation uses the mmap function (if available) and it is + optimized for the use in multi threaded programs. + +* Ulrich Drepper contributed a MD5 "encryption" for the crypt family of + functions. This new functionality is usable by specifying a special + salt string and it is compatible with implementation on *BSD systems. + +* Lots of functions from the XPG4.2 standard were added by Ulrich Drepper: + `getsubopt' to handle second level command line options, `bsd_signal' + to access BSD style `signal' functionality, the obsolete `regexp' style + expression matcher. + +* the `lchown' function is available on system which support this + functionality. + +* The implementation of the shadow password handling function was contributed + by Ulrich Drepper. + +* David Mosberger-Tang changed the SunRPC implementation to be 64bit safe. + +* POSIX.1g support was added. The header is available, + `isfdtype' and `pselect' are implemented. Craig Metz contributed an + implementation of `getaddrinfo'. + +Version 1.09 + +* For cross-compilation you should now set `BUILD_CC' instead of `HOST_CC'. + +* New header file and new functions `getfsspec', `getfsent' and + friends, for parsing /etc/fstab. This code comes from 4.4 BSD. + +* The new function `daemon' from 4.4 BSD is useful for server programs that + want to put themselves in the background. + +* Joel Sherrill has contributed support for several standalone boards that + run without an operating system. + +* `printf', `scanf' and friends now accept a `q' type modifier for long + long int as well as `ll'. Formats using these might be `%qu' or `%lld'. + +* All of the code taken from BSD (notably most of the math and networking + routines) has been updated from the BSD 4.4-Lite release. + +* The resolver code has been updated from the BIND-4.9.3-BETA9 release. + +* The new functions `getdomainname' and `setdomainname' fetch or change the + YP/NIS domain name. These are system calls which exist on systems which + have YP (aka NIS). + +* The time zone data files have been updated for the latest international + conventions. + +* The SunRPC programs `portmap' and `rpcinfo' are now installed in + $(sbindir) (usually /usr/local/sbin) instead of $(bindir). + +Version 1.08 + +* The C library now includes support for Sun RPC, from Sun's free + RPCSRC-4.0 distribution. The `portmap', `rpcinfo', and `rpcgen' programs + are included. (There is still no support for YP.) + +* Tom Quinn has contributed a port of the C library to SGI machines running + Irix 4 (mips-sgi-irix4). + +* The new `lockf' function is a simplified interface to the locking + facilities of `fcntl', included for compatibility. + +* New time functions `timegm', `timelocal', and `dysize' for compatibility. + +* New header file and new function `ftime' for compatibility. + +* New header files and and new function `poll' for + compatibility. + +* The error message printed by `assert' for a failed assertion now includes + the name of the program (if using GNU ld) and the name of the calling + function (with versions of GCC that support this). + +* The `psignal' function is now declared in , not . + +* The library now includes the header file and memory + management functions `mmap', `munmap', `mprotect', `msync', and + `madvise', on systems that support those facilities. + +* The interface for `mcheck' has changed slightly: the function called to + abort the program when an allocation inconsistency is detected now takes + an argument that indicates the type of failure. The new function + `mprobe' lets you request a consistency check for a particular block at + any time (checks are normally done only when you call `free' or `realloc' + on a block). + +* It is now possible to easily cross-compile the C library, building on one + system a library to run on another machine and/or operating system. All + you need to do is set the variable `HOST_CC' in `configparms' to the + native compiler for programs to run on the machine you are building on (a + few generator programs are used on Unix systems); set `CC' to the + cross-compiler. + +* The new function `fexecve' (only implemented on the GNU system) executes + a program file given a file descriptor already open on the file. + +Version 1.07 + +* Brendan Kehoe has contributed most of a port to the DEC Alpha + running OSF/1 (alpha-dec-osf1). He says it is 75% complete. + +* You can set the variable `libprefix' in `configparms' to specify a prefix + to be prepended to installed library files; this makes it easy to install + the GNU C library to be linked as `-lgnuc' or whatever. + +* The new `stpncpy' is a cross between `stpcpy' and `strncpy': It + copies a limited number of characters from a string, and returns the + address of the last character written. + +* You no longer need to check for whether the installed `stddef.h' is + compatible with the GNU C library. configure now checks for you. + +* You can now define a per-stream `fileno' function to convert the + stream's cookie into an integral file descriptor. + +* ``malloc (0)'' no longer returns a null pointer. Instead, it + allocates zero bytes of storage, and returns a unique pointer which + you can pass to `realloc' or `free'. The behavior is undefined if + you dereference this pointer. + +* The C library now runs on Sony NEWS m68k machines running either + NewsOS 3 or NewsOS 4. + +* The new `syscall' function is a system-dependent primitive function + for invoking system calls. It has the canonical behavior on Unix + systems, including unreliable return values for some calls (such as + `pipe', `fork' and `getppid'). + +* The error code `EWOULDBLOCK' is now obsolete; it is always defined + to `EAGAIN', which is the preferred name. On systems whose kernels + use two distinct codes, the C library now translates EWOULDBLOCK to + EAGAIN in every system call function. + +Version 1.06 + +* The GNU C Library Reference Manual is now distributed with the library. + `make dvi' will produce a DVI file of the printed manual. + `make info' will produce Info files that you can read on line using C-h i + in Emacs or the `info' program. + Please send comments on the manual to bug-glibc-manual@gnu.org. + +* The library now supports SVR4 on i386s (i386-unknown-sysv4). + +* Brendan Kehoe has contributed a port to Sun SPARCs running Solaris 2. + +* Jason Merrill has contributed a port to the Sequent Symmetry running + Dynix version 3 (i386-sequent-dynix). + +* The library has been ported to i386s running SCO 3.2.4 (also known as SCO + ODT 2.0; i386-unknown-sco3.2.4) or SCO 3.2 (i386-unknown-sco3.2). + +* New function `memory_warnings' lets you arrange to get warnings when + malloc is running out of memory to allocate, like Emacs gives you. + +* The C library now contains the relocating allocator used in Emacs 19 for + its editing buffers. This allocator (ralloc) minimizes allocation + overhead and fragmentation by moving allocated regions around whenever it + needs to. You always refer to a ralloc'd region with a "handle" (a + pointer to a pointer--an object of type `void **'). + +* There is a new `printf' format: `%m' gives you the string corresponding + to the error code in `errno'. + +* In `scanf' formats, you can now use `%as' or `%a[' to do the normal `%s' + or `%[' conversion, but instead of filling in a fixed-sized buffer you + pass, the `a' modifier says to fill in a `char **' you pass with a + malloc'd string. + +* The `fnmatch' function supports the new flag bits `FNM_LEADING_DIR' and + `FNM_CASEFOLD'. `FNM_LEADING_DIR' lets a pattern like `foo*' match a + name like `foo/bar'. `FNM_CASEFOLD' says to ignore case in matching. + +* `mkstemp' is a traditional Unix function to atomically create and open a + uniquely-named temporary file. + +Version 1.05 + +* The standard location for the file that says what the local timezone is + has changed again. It is now `/usr/local/etc/localtime' (or more + precisely, `${prefix}/etc/localtime') rather than `/etc/localtime'. + +* The distribution no longer contains any files with names longer than 14 + characters. + +* `struct ttyent' has two new flag bits: TTY_TRUSTED and TTY_CONSOLE. + These are set by the new `trusted' and `console' keywords in `/etc/ttys'. + +* New functions `ttyslot' and `syslog' from 4.4 BSD. + +Version 1.04 + +* The configuration process has changed quite a bit. The `configure' + script is now used just like the configuration scripts for other GNU + packages. The `sysdeps' directory hierarchy is much rearranged. + The file `INSTALL' explains the new scheme in detail. + +* The header files no longer need to be processed into ANSI C and + traditional C versions. There is just one set of files to install, and + it will work with ANSI or old C compilers (including `gcc -traditional'). + +* Brendan Kehoe and Ian Lance Taylor have ported the library to the + MIPS DECStation running Ultrix 4. + +* The Sun 4 startup code (crt0) can now properly load SunOS 4 shared libraries. + Tom Quinn contributed the initial code. The GNU C library can NOT yet be + made itself into a shared library. + +* Yet further improved support for the i386, running 4.3 BSD-like systems + (such as Mach 3 with the Unix single-server), or System V. + +* New function `strncasecmp' to do case-insensitive string comparison + with limited length. + +* New function `strsep' is a reentrant alternative to `strtok'. + +* New functions `scandir' and `alphasort' for searching directories. + +* New function `setenv' is a better interface to `putenv'. + +* Ian Lance Taylor has contributed an implementation of the SVID `ftw' + function for traversing a directory tree. + +* The GNU obstack package is now also part of the C library. + The new function `open_obstack_stream' creates a stdio stream that + writes onto an obstack; `obstack_printf' and `obstack_vprintf' do + formatted output directly to an obstack. + +* Miscellaneous new functions: reboot, nice, sigaltstack (4.4 BSD only), + cfmakeraw, getusershell, getpass, swab, getttyent, seteuid, setegid. + +* `FNM_FILE_NAME' is another name for `FNM_PATHNAME', used with `fnmatch'. + +* The new functions `strfry' and `memfrob' do mysterious and wonderful + things to your strings. + +* There are some new test programs: test-fseek, testmb, and testrand. + +* Some work has been done to begin porting the library to 4.4 BSD and Linux. + These ports are not finished, but are a good starting place for really + supporting those systems. + +* `/etc/localtime' is now the standard location for the file that says what + the local timezone is, rather than `/usr/local/lib/zoneinfo/localtime'. + This follows the general principle that `/etc' is the place for all local + configuration files. + +* The C library header files now use `extern "C"' when used by the C++ + compiler, so the C library should now work with C++ code. + +* The header file is gone. now declares bcopy, + bcmp, bzero, and ffs. (Update: nowadays these functions are declared + in .) + +* Mike Haertel (of GNU e?grep and malloc fame) has written a new sorting + function which uses the `merge sort' algorithm, and is said to be + significantly faster than the old GNU `qsort' function. Merge sort is + now the standard `qsort' function. The new algorithm can require a lot + of temporary storage; so, the old sorting function is called when the + required storage is not available. + +* The C library now includes Michael Glad's Ultra Fast Crypt, which + provides the Unix `crypt' function, plus some other entry points. + +* The code and header files taken from 4.4 BSD have been updated with the + latest files released from Berkeley. + +---------------------------------------------------------------------- +Copyright information: + +Copyright (C) 1992-2009, 2010, 2011 Free Software Foundation, Inc. + + Permission is granted to anyone to make or distribute verbatim copies + of this document as received, in any medium, provided that the + copyright notice and this permission notice are preserved, + thus giving the recipient permission to redistribute in turn. + + Permission is granted to distribute modified versions + of this document, or of portions of it, + under the above conditions, provided also that they + carry prominent notices stating who last changed them. + +Local variables: +version-control: never +fill-column: 76 +End: Common subdirectories: a/abilist and b/abilist Common subdirectories: a/aout and b/aout Common subdirectories: a/argp and b/argp Common subdirectories: a/assert and b/assert Common subdirectories: a/bits and b/bits Common subdirectories: a/c_stubs and b/c_stubs Common subdirectories: a/catgets and b/catgets Common subdirectories: a/conf and b/conf diff -Nup a/config.h.in b/config.h.in --- a/config.h.in 2012-01-01 05:16:32.000000000 -0700 +++ b/config.h.in 2012-01-01 13:08:53.292715874 -0700 @@ -187,6 +187,9 @@ /* Define if `.ctors' and `.dtors' sections shouldn't be used. */ #undef NO_CTORS_DTORS_SECTIONS +/* Define if Systemtap probes should be defined. */ +#undef USE_STAP_PROBE + /* */ diff -Nup a/configure b/configure --- a/configure 2012-01-01 13:08:19.157713463 -0700 +++ b/configure 2012-01-01 13:08:53.294715875 -0700 @@ -791,6 +791,7 @@ enable_kernel enable_all_warnings enable_multi_arch enable_nss_crypt +enable_systemtap with_cpu ' ac_precious_vars='build_alias @@ -1450,6 +1451,7 @@ Optional Features: --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] @@ -3804,6 +3806,51 @@ else fi +# Check whether --enable-systemtap was given. +if test "${enable_systemtap+set}" = set; then : + enableval=$enable_systemtap; systemtap=$enableval +else + systemtap=no +fi + +if test x$systemtap != xno; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for systemtap static probe support" >&5 +$as_echo_n "checking for systemtap static probe support... " >&6; } +if test "${libc_cv_sdt+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + old_CFLAGS="$CFLAGS" + CFLAGS="-std=gnu99 $CFLAGS" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +void foo (int i, void *p) +{ + asm ("" STAP_PROBE_ASM (foo, bar, STAP_PROBE_ASM_TEMPLATE (2)) "" + :: STAP_PROBE_ASM_OPERANDS (2, i, p)); +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + libc_cv_sdt=yes +else + libc_cv_sdt=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CFLAGS="$old_CFLAGS" +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_sdt" >&5 +$as_echo "$libc_cv_sdt" >&6; } + if test $libc_cv_sdt = yes; then + $as_echo "#define USE_STAP_PROBE 1" >>confdefs.h + + else + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "systemtap support needs sys/sdt.h with asm support +See \`config.log' for more details" "$LINENO" 5; } + fi +fi + # 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 diff -Nup a/configure.in b/configure.in --- a/configure.in 2012-01-01 05:16:32.000000000 -0700 +++ b/configure.in 2012-01-01 13:08:53.295715875 -0700 @@ -290,6 +290,29 @@ else fi AC_SUBST(libc_cv_nss_crypt) +AC_ARG_ENABLE([systemtap], + [AS_HELP_STRING([--enable-systemtap], + [enable systemtap static probe points @<:@default=no@:>@])], + [systemtap=$enableval], + [systemtap=no]) +if test x$systemtap != xno; then + AC_CACHE_CHECK([for systemtap static probe support], libc_cv_sdt, [dnl + old_CFLAGS="$CFLAGS" + CFLAGS="-std=gnu99 $CFLAGS" + AC_COMPILE_IFELSE([#include +void foo (int i, void *p) +{ + asm ("" STAP_PROBE_ASM (foo, bar, STAP_PROBE_ASM_TEMPLATE (2)) "" + :: STAP_PROBE_ASM_OPERANDS (2, i, p)); +}], [libc_cv_sdt=yes], [libc_cv_sdt=no]) + CFLAGS="$old_CFLAGS"]) + if test $libc_cv_sdt = yes; then + AC_DEFINE([USE_STAP_PROBE]) + else + AC_MSG_FAILURE([systemtap support needs sys/sdt.h with asm support]) + fi +fi + # 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 Common subdirectories: a/conform and b/conform Common subdirectories: a/crypt and b/crypt Common subdirectories: a/csu and b/csu Common subdirectories: a/ctype and b/ctype Common subdirectories: a/debug and b/debug Common subdirectories: a/dirent and b/dirent Common subdirectories: a/dlfcn and b/dlfcn Common subdirectories: a/elf and b/elf diff -Nup a/extra-lib.mk b/extra-lib.mk --- a/extra-lib.mk 2012-01-01 05:16:32.000000000 -0700 +++ b/extra-lib.mk 2012-01-01 13:08:53.304715875 -0700 @@ -101,4 +101,4 @@ ifneq (,$(cpp-srcs-left)) 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) Common subdirectories: a/fedora and b/fedora Common subdirectories: a/gmon and b/gmon Common subdirectories: a/gnulib and b/gnulib Common subdirectories: a/grp and b/grp Common subdirectories: a/gshadow and b/gshadow Common subdirectories: a/hesiod and b/hesiod Common subdirectories: a/hurd and b/hurd Common subdirectories: a/iconv and b/iconv Common subdirectories: a/iconvdata and b/iconvdata Common subdirectories: a/include and b/include Common subdirectories: a/inet and b/inet Common subdirectories: a/intl and b/intl Common subdirectories: a/io and b/io Common subdirectories: a/libidn and b/libidn Common subdirectories: a/libio and b/libio Common subdirectories: a/locale and b/locale Common subdirectories: a/localedata and b/localedata Common subdirectories: a/login and b/login Common subdirectories: a/mach and b/mach Common subdirectories: a/malloc and b/malloc Common subdirectories: a/manual and b/manual Common subdirectories: a/math and b/math Common subdirectories: a/misc and b/misc Common subdirectories: a/nis and b/nis Common subdirectories: a/nptl and b/nptl Common subdirectories: a/nptl_db and b/nptl_db Common subdirectories: a/nscd and b/nscd Common subdirectories: a/nss and b/nss Common subdirectories: a/po and b/po Common subdirectories: a/posix and b/posix Common subdirectories: a/pwd and b/pwd Common subdirectories: a/resolv and b/resolv Common subdirectories: a/resource and b/resource Common subdirectories: a/rt and b/rt Common subdirectories: a/rtkaio and b/rtkaio Common subdirectories: a/scripts and b/scripts Common subdirectories: a/setjmp and b/setjmp Common subdirectories: a/shadow and b/shadow Common subdirectories: a/signal and b/signal Common subdirectories: a/socket and b/socket Common subdirectories: a/soft-fp and b/soft-fp Common subdirectories: a/stdio-common and b/stdio-common Common subdirectories: a/stdlib and b/stdlib Common subdirectories: a/streams and b/streams Common subdirectories: a/string and b/string Common subdirectories: a/sunrpc and b/sunrpc Common subdirectories: a/sysdeps and b/sysdeps Common subdirectories: a/sysvipc and b/sysvipc Common subdirectories: a/termios and b/termios Common subdirectories: a/time and b/time Common subdirectories: a/timezone and b/timezone Common subdirectories: a/wcsmbs and b/wcsmbs Common subdirectories: a/wctype and b/wctype