aboutsummaryrefslogtreecommitdiff
path: root/sysdeps
AgeCommit message (Collapse)Author
2007-10-28[BZ #5208]Ulrich Drepper
2007-10-23 Andreas Jaeger <aj@suse.de> [BZ #5208] * sysdeps/unix/sysv/linux/readahead.c (__readahead): Use __LONG_LONG_PAIR to handle little endian byte order. Suggested by abhishekrai@google.com
2007-10-192007-10-06 David S. Miller <davem@davemloft.net>Jakub Jelinek
* configure.in: Add sparcv9v2 and sparc64v2. * scripts/config.sub: Likewise. * configure: Regenerate. * elf/elf.h (HWCAP_SPARC_N2): New. * sysdeps/sparc/dl-procinfo.h (_DL_HWCAP_COUNT): Bump to 8. * sysdeps/sparc/dl-procinfo.c (_dl_sparc_cap_flags): Add 'v9v2'. (HWCAP_IMPORTANT): Add HWCAP_SPARC_N2. * sysdeps/sparc/sparc32/sparcv9/sparcv9v2/memcpy.S: New file. * sysdeps/sparc/sparc32/sparcv9/sparcv9v2/memset.S: New file. * sysdeps/sparc/sparc64/sparcv9v2/memcpy.S: New file. * sysdeps/sparc/sparc64/sparcv9v2/memset.S: New file. 2007-10-06 David S. Miller <davem@davemloft.net> * configure.in: Add sparcv9v2 and sparc64v2. * scripts/config.sub: Likewise. * configure: Regenerate. * elf/elf.h (HWCAP_SPARC_N2): New. * sysdeps/sparc/dl-procinfo.h (_DL_HWCAP_COUNT): Bump to 8. * sysdeps/sparc/dl-procinfo.c (_dl_sparc_cap_flags): Add 'v9v2'. (HWCAP_IMPORTANT): Add HWCAP_SPARC_N2. * sysdeps/sparc/sparc32/sparcv9/sparcv9v2/memcpy.S: New file. * sysdeps/sparc/sparc32/sparcv9/sparcv9v2/memset.S: New file. * sysdeps/sparc/sparc64/sparcv9v2/memcpy.S: New file. * sysdeps/sparc/sparc64/sparcv9v2/memset.S: New file.
2007-10-18* sysdeps/x86_64/memset.S (bzero): Renamed to __bzero. Add glibc-2.7cvs/glibc-2_7-basecvs/glibc-2_7Jakub Jelinek
weak_alias. 2007-10-17 Jakub Jelinek <jakub@redhat.com> * sysdeps/x86_64/memset.S (bzero): Renamed to __bzero. Add weak_alias.
2007-10-172007-10-17 Roland McGrath <roland@frob.com>Roland McGrath
* sysdeps/mach/hurd/bits/fcntl.h [__USE_GNU__] (F_DUPFD_CLOEXEC): New. * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Implement it.
2007-10-17* sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Define F_DUPFD_CLOEXEC.cvs/fedora-glibc-20071017T2007Ulrich Drepper
* 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. * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
2007-10-17* sysdeps/posix/getaddrinfo.c (getaddrinfo): When sorting addressesUlrich Drepper
and admin selects to be able to replace the gai.conf file, lock data structures around the qsort call.
2007-10-17* sysdeps/x86_64/cacheinfo.c: Comment out code added in support ofUlrich Drepper
new memset. too high for the improvements. Implement bzero unconditionally for use in libc.
2007-10-17* sysdeps/x86_64/memset.S: Revert to old version for now. The cost isUlrich Drepper
too high for the improvements. 2007-10-17 Ulrich Drepper <drepper@redhat.com> Jakub Jelinek <jakub@redhat.com>
2007-10-16Help the compiler recognize unreachable code on 32-bit machines.Ulrich Drepper
2007-10-16 Ulrich Drepper <drepper@redhat.com> * time/tzfile.c (__tzfile_read): Help the compiler recognize unreachable code on 32-bit machines.
2007-10-16(__tzfile_read): Take extra memory requested by caller into account when ↵Ulrich Drepper
copying TZ string. 2007-10-16 Ulrich Drepper <drepper@redhat.com> * time/tzfile.c (__tzfile_read): Take extra memory requested by caller into account when copying TZ string.
2007-10-16* sysdeps/x86_64/memset.S (memset): Fix sse2_nt_move Jakub Jelinek
PIC indirect jump. * sysdeps/x86_64/memset.S (memset): Fix sse2_nt_move PIC indirect jump.
2007-10-16* sysdeps/x86_64/memset.S: Jump from bzero to memset using Jakub Jelinek
a local label rather than HIDDEN_JUMPTARGET. 2007-10-16 Jakub Jelinek <jakub@redhat.com> * sysdeps/x86_64/memset.S: Jump from bzero to memset using a local label rather than HIDDEN_JUMPTARGET.
2007-10-16* sysdeps/x86_64/cacheinfo.c (__x86_64_shared_cache_size): Define.Ulrich Drepper
(init_cacheinfo): Initialize it. * sysdeps/x86_64/memset.S: Use __x86_64_shared_cache_size. Always define bzero. Remove non-glibc code. * sysdeps/x86_64/bzero.S: Make an empty file. 2007-10-15 H.J. Lu <hongjiu.lu@intel.com> * sysdeps/x86_64/cacheinfo.c (__x86_64_preferred_memory_instruction): New. (init_cacheinfo): Initialize __x86_64_preferred_memory_instruction. * sysdeps/x86_64/memset.S: Rewrite. * nss/getXXbyYY_r.c (REENTRANT_NAME): Mangle startp and start_fct
2007-10-16Make an empty file.Ulrich Drepper
2007-10-14* sysdeps/posix/getaddrinfo.c (struct sort_result): Addcvs/fedora-glibc-20071014T1847Ulrich Drepper
service_order. (rfc3484_sort): Make sure that even of qsort doesn't support stable sorting it is stable by comparing service_order. (getaddrinfo): Initialize service_order.
2007-10-11* sysdeps/gnu/netinet/tcp.h: Include sys/socket.h if __USE_MISC. cvs/fedora-glibc-20071011T1636Jakub Jelinek
(struct tcp_md5sig): Change tcpm_addr type to struct sockaddr_storage. * inet/netinet/in.h: Don't include bits/socket.h. * sysdeps/unix/sysv/linux/bits/socket.h: Only check _SYS_SOCKET_H macro. * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Likewise. 2007-10-11 Jakub Jelinek <jakub@redhat.com> * sysdeps/gnu/netinet/tcp.h: Include sys/socket.h if __USE_MISC. (struct tcp_md5sig): Change tcpm_addr type to struct sockaddr_storage. * inet/netinet/in.h: Don't include bits/socket.h. * sysdeps/unix/sysv/linux/bits/socket.h: Only check _SYS_SOCKET_H macro. * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Likewise.
2007-10-10* sysdeps/x86_64/cacheinfo.c (init_cacheinfo): Work around problemUlrich Drepper
with some Pentium Ds.
2007-10-09* sysdeps/unix/sysv/linux/eventfd_read.c (eventfd_read): UseUlrich Drepper
__read not read. * sysdeps/unix/sysv/linux/eventfd_write.c (eventfd_write): Use __write not write.
2007-10-07[BZ #3924]Ulrich Drepper
* sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Fix a few more little bugs in creating the stack frame when pltexit has to be called.
2007-10-06[BZ #4407]Ulrich Drepper
* sysdeps/ieee754/dbl-64/e_lgamma_r.c: Fix *signgamp for -0.0. * sysdeps/ieee754/flt-32/e_lgammaf_r.c: Likewise. * sysdeps/ieee754/ldbl-96/e_lgammal_r.c: Likewise. * math/libm-test.inc: Add test for this case. Half the patch by Christian Iseli <christian.iseli@licr.org>.
2007-10-052007-10-04 Jakub Jelinek <jakub@redhat.com>Ulrich Drepper
2007-10-03 Jakub Jelinek <jakub@redhat.com>
2007-10-05* sysdeps/gnu/netinet/tcp.h: Define TCP_MD5SIG, TCP_MD5SIG_MAXKEYLEN,Ulrich Drepper
struct tcp_md5sig. Extend struct tcp_info according to recent kernels. * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add eventfd, evetnfd_read, eventfd_write. * sysdeps/unix/sysv/linux/eventfd.c: New file. * sysdeps/unix/sysv/linux/eventfd_read.c: New file. * sysdeps/unix/sysv/linux/eventfd_write.c: New file. * sysdeps/unix/sysv/linux/sys/eventfd.h: New file. * sysdeps/unix/sysv/linux/Versions: Export eventfd, evetnfd_read, eventfd_write for GLIBC_2.7.
2007-10-05* sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add signalfd.Ulrich Drepper
* sysdeps/unix/sysv/linux/signalfd.c: New file. * sysdeps/unix/sysv/linux/sys/signalfd.h: New file. * sysdeps/unix/sysv/linux/Versions: Export signalfd for GLIBC_2.7.
2007-09-29* sysdeps/generic/ldsodefs.h (struct dl_scope_free_list): Storecvs/fedora-glibc-20070929T1859Ulrich Drepper
void * pointers instead of struct link_map **. (_dl_scope_free): Change argument type to void *. * include/link.h (struct link_map): Change type of l_reldeps to struct link_map_reldeps, move l_reldepsact into that struct too. * elf/dl-deps.c: Include atomic.h. (_dl_map_object_deps): Only change l->l_initfini when it is fully populated, use _dl_scope_free for freeing it. Optimize removal of libs from reldeps by using l_reserved flag, when some removal is needed, allocate a new list instead of reallocating and free the old with _dl_scope_free. Adjust for l_reldeps and l_reldepsact changes. * elf/dl-lookup.c (add_dependency): Likewise. Reorganize to allow searching in l_initfini and l_reldeps without holding dl_load_lock. * elf/dl-fini.c (_dl_sort_fini): Adjust for l_reldeps and l_reldepsact changes. * elf/dl-close.c (_dl_close_worker): Likewise. * elf/dl-open.c (_dl_scope_free): Change argument type to void *.
2007-09-24* sysdeps/posix/getaddrinfo.c (getaddrinfo): Use Jakub Jelinek
close_not_cancel_no_status instead of close. 2007-09-24 Jakub Jelinek <jakub@redhat.com> * sysdeps/posix/getaddrinfo.c (getaddrinfo): Use close_not_cancel_no_status instead of close.
2007-09-22* sysdeps/x86_64/cacheinfo.c (__x86_64_data_cache_size_half): RenamedUlrich Drepper
from __x86_64_core_cache_size_half. (init_cacheinfo): Compute shared cache size for AMD processors with shared L3 correctly. * sysdeps/x86_64/memcpy.S: Adjust for __x86_64_data_cache_size_half name change. Patch in large parts by Evandro Menezes.
2007-09-19* sysdeps/posix/getaddrinfo.c (getaddrinfo): Avoid unnecessaryUlrich Drepper
open/close when determining source addresses.
2007-09-18* sysdeps/sparc/sparc32/elf/start.S: Remove cfi_* markup. cvs/fedora-glibc-20070918T1931Jakub Jelinek
* sysdeps/sparc/sparc64/elf/start.S: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__thread_start): Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__thread_start): Likewise. * sysdeps/sparc/sparc32/elf/start.S: Remove cfi_* markup. * sysdeps/sparc/sparc64/elf/start.S: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__thread_start): Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__thread_start): Likewise.
2007-09-18* sysdeps/generic/ldsodefs.h (DL_LOOKUP_GSCOPE_LOCK): New definition.Ulrich Drepper
* elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Or in DL_LOOKUP_GSCOPE_LOCK into flags after THREAD_GSCOPE_SET_FLAG (). * elf/dl-sym.c (do_sym): Likewise. * include/link.h (struct link_map): Add l_serial field. * elf/dl-object.c (_dl_new_object): Initialize l_serial. * elf/dl-lookup.c (add_dependency): Add flags argument. Remember map->l_serial, if DL_LOOKUP_GSCOPE_LOCK is among flags, use THREAD_GSCOPE_RESET_FLAG before and THREAD_GSCOPE_SET_FLAG after __rtld_lock_lock_recursive (GL(dl_load_lock)) to avoid deadlock. Don't dereference map until it has been found on some list. If map->l_serial changed, return -1.
2007-09-18* include/stdio.h (__isoc99_fscanf, __isoc99_scanf,Ulrich Drepper
__isoc99_sscanf, __isoc99_vscanf): New prototypes. (__isoc99_vsscanf, __isoc99_vfscanf): New prototypes, add libc_hidden_proto. * include/wchar.h (__isoc99_fwscanf, __isoc99_wscanf, __isoc99_swscanf, __isoc99_vwscanf): New prototypes. (__isoc99_vswscanf, __isoc99_vfwscanf): New prototypes, add libc_hidden_proto. * libio/stdio.h (fscanf, scanf, sscanf, vfscanf, vscanf, vsscanf): Redirect to __isoc99_* if strict ISO C99 or POSIX conformance requested. * wcsmbs/wchar.h (fwscanf, wscanf, swscanf, vfwscanf, vwscanf, vswscanf): Redirect to __isoc99_* if strict ISO C99 or POSIX conformance requested. * libio/bits/stdio-ldbl.h (fscanf, scanf, sscanf, vfscanf, vscanf, vsscanf): Redirect to __nldbl___isoc99_* if strict ISO C99 or POSIX conformance requested. * wcsmbs/bits/wchar-ldbl.h (fwscanf, wscanf, swscanf, vfwscanf, vwscanf, vswscanf): Redirect to __nldbl___isoc99_* if strict ISO C99 or POSIX conformance requested. * stdio-common/Versions (libc): Export __isoc99_scanf@@GLIBC_2.7, __isoc99_vscanf@@GLIBC_2.7, __isoc99_fscanf@@GLIBC_2.7, __isoc99_vfscanf@@GLIBC_2.7, __isoc99_sscanf@@GLIBC_2.7 and __isoc99_vsscanf@@GLIBC_2.7. * stdio-common/Makefile (routines): Add isoc99_scanf, isoc99_vscanf, isoc99_fscanf, isoc99_vfscanf, isoc99_sscanf and isoc99_vsscanf. (tests): Add scanf14. (CFLAGS-vfprintf.c, CFLAGS-fprintf.c, CFLAGS-printf.c, CFLAGS-vfwprintf.c, CFLAGS-vfscanf.c, CFLAGS-vfwscanf.c, CFLAGS-fscanf.c, CFLAGS-scanf.c, CFLAGS-isoc99_vfscanf.c, CFLAGS-isoc99_vscanf.c, CFLAGS-isoc99_fscanf.c, CFLAGS-isoc99_scanf.c): Add $(exceptions). (CFLAGS-scanf15.c): Add various -I paths to prevent the compiler from using internal headers. * wcsmbs/Versions (libc): Export __isoc99_wscanf@@GLIBC_2.7, __isoc99_vwscanf@@GLIBC_2.7, __isoc99_fwscanf@@GLIBC_2.7, __isoc99_vfwscanf@@GLIBC_2.7, __isoc99_swscanf@@GLIBC_2.7 and __isoc99_vswscanf@@GLIBC_2.7. * wcsmbs/Makefile (routines): Add isoc99_wscanf, isoc99_vwscanf, isoc99_fwscanf, isoc99_vfwscanf, isoc99_swscanf and isoc99_vswscanf. (CFLAGS-isoc99_wscanf.c, CFLAGS-isoc99_fwscanf.c, CFLAGS-isoc99_vwscanf.c, CFLAGS-isoc99_vfwscanf.c): Add $(exceptions). (CPPFLAGS): Add -D_IO_MTSAFE_IO if needed. * stdio-common/isoc99_scanf.c: New file. * stdio-common/isoc99_vsscanf.c: New file. * stdio-common/isoc99_vscanf.c: New file. * stdio-common/isoc99_vfscanf.c: New file. * stdio-common/isoc99_fscanf.c: New file. * stdio-common/isoc99_sscanf.c: New file. * wcsmbs/isoc99_fwscanf.c: New file. * wcsmbs/isoc99_vswscanf.c: New file. * wcsmbs/isoc99_swscanf.c: New file. * wcsmbs/isoc99_wscanf.c: New file. * wcsmbs/isoc99_vwscanf.c: New file. * wcsmbs/isoc99_vfwscanf.c: New file. * libio/libio.h (_IO_FLAGS2_SCANF_STD): Define. * libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): Also clear _IO_FLAGS2_SCANF_STD bit from _flags2. * stdio-common/vfscanf.c (_IO_vfscanf_internal): Don't handle %as, %aS and %a[ if _IO_FLAGS2_SCANF_STD is set in _flags2. * stdio-common/scanf14.c: New test. * stdio-common/scanf15.c: New test. * sysdeps/ieee754/ldbl-opt/Makefile (libnldbl-calls): Add isoc99_scanf, isoc99_fscanf, isoc99_sscanf, isoc99_vscanf, isoc99_vfscanf, isoc99_vsscanf, isoc99_wscanf, isoc99_fwscanf, isoc99_swscanf, isoc99_vwscanf, isoc99_vfwscanf and isoc99_vswscanf. * sysdeps/ieee754/ldbl-opt/Versions (libc): Export __nldbl___isoc99_scanf@@GLIBC_2.7, __nldbl___isoc99_fscanf@@GLIBC_2.7, __nldbl___isoc99_sscanf@@GLIBC_2.7, __nldbl___isoc99_vscanf@@GLIBC_2.7, __nldbl___isoc99_vfscanf@@GLIBC_2.7, __nldbl___isoc99_vsscanf@@GLIBC_2.7, __nldbl___isoc99_wscanf@@GLIBC_2.7, __nldbl___isoc99_fwscanf@@GLIBC_2.7, __nldbl___isoc99_swscanf@@GLIBC_2.7, __nldbl___isoc99_vwscanf@@GLIBC_2.7, __nldbl___isoc99_vfwscanf@@GLIBC_2.7 and __nldbl___isoc99_vswscanf@@GLIBC_2.7. * sysdeps/ieee754/ldbl-opt/nldbl-compat.h (__isoc99_scanf, __isoc99_fscanf, __isoc99_sscanf, __isoc99_vscanf, __isoc99_vfscanf, __isoc99_vsscanf, __isoc99_wscanf, __isoc99_fwscanf, __isoc99_swscanf, __isoc99_vwscanf, __isoc99_vfwscanf, __isoc99_vswscanf): Add NLDBL_DECL. * sysdeps/ieee754/ldbl-opt/nldbl-compat.c (__nldbl___isoc99_scanf, __nldbl___isoc99_fscanf, __nldbl___isoc99_sscanf, __nldbl___isoc99_vscanf, __nldbl___isoc99_vfscanf, __nldbl___isoc99_vsscanf, __nldbl___isoc99_wscanf, __nldbl___isoc99_fwscanf, __nldbl___isoc99_swscanf, __nldbl___isoc99_vwscanf, __nldbl___isoc99_vfwscanf, __nldbl___isoc99_vswscanf): New functions. * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vfscanf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_swscanf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vwscanf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_wscanf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_scanf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_sscanf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vsscanf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_fwscanf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vfwscanf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vswscanf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vscanf.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_fscanf.c: New file. * stdio-common/Makefile (tests): Add scanf13. (scanf13-ENV): New. * stdio-common/vfscanf.c (_IO_vfscanf_internal): Handle m modifier followed by l. (STRING_ARG): Add width argument. (_IO_vfscanf_internal) <case L_('c')>: Handle %mc. <case L_('C')>: Handle %mlc and %mC. <case L_('s'), case L_('S'), case L_('[')>: Adjust STRING_ARG arguments. * stdio-common/scanf13.c: New test. * libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): Clear the _IO_FLAGS2_FORTIFY bit from _flags2 rather than _flags. type and __THROW marker of splice, vmsplice, and tee.
2007-09-18* sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Correct return valueUlrich Drepper
type __THROW marker of splice, vmsplice, and tee. * 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. * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Mark splice, vmsplice, and tee as cancellation points.
2007-09-18Correct return value type __THROW marker of splice, vmsplice, and tee.Ulrich Drepper
2007-09-15* sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_discover_osversion): Don'tUlrich Drepper
parse more than three parts of the version number.
2007-09-15* sysdeps/unix/sysv/linux/i386/Makefile (sysdep_routines): AddUlrich Drepper
call_fallocate in misc subdir. * sysdeps/unix/sysv/linux/i386/call_fallocate.S: New file. * sysdeps/unix/sysv/linux/i386/syscalls.list (fallocate64): Remove. * sysdeps/unix/sysv/linux/i386/posix_fallocate.c: Use __call_fallocate instead of __fallocate64. * sysdeps/unix/sysv/linux/i386/posix_fallocate64.c: Likewise.
2007-09-15* rt/Versions (librt): Export __mq_open_2@@GLIBC_2.7.Ulrich Drepper
* rt/Makefile (headers): Add bits/mqueue2.h. * rt/mqueue.h: Include bits/mqueue2.h if -D_FORTIFY_SOURCE=2, optimizing with GCC and __va_arg_pack_len is defined. * rt/bits/mqueue2.h: New file. * rt/mq_open.c (__mq_open): Renamed from mq_open. (mq_open): New strong_alias. (__mq_open_2): New function. * sysdeps/unix/sysv/linux/mq_open.c (__mq_open): Renamed from mq_open. (mq_open): New strong_alias. (__mq_open_2): New function. * debug/Versions (libc): Export __fortify_fail@@GLIBC_PRIVATE. * Versions.def (librt): Add GLIBC_2.7 version. * debug/fortify_fail.c (__fortify_fail): Add libc_hidden_def. * include/stdio.h (__fortify_fail): Add libc_hidden_proto. * misc/sys/cdefs.h (__errordecl, __va_arg_pack_len): Define. * io/fcntl.h: Include bits/fcntl2.h when __va_arg_pack_len is defined rather than when not C++. * io/bits/fcntl2.h (__open_alias, __open64_alias, __openat_alias, __openat64_alias): New redirects. (__open_too_many_args, __open_missing_mode, __open64_too_many_args, __open64_missing_mode, __openat_too_many_args, __openat_missing_mode, __openat64_too_many_args, __openat64_missing_mode): New __errordecls. (open, open64, openat, openat64): Rewrite as __extern_always_inline functions instead of function-like macros.
2007-09-15* sysdeps/i386/i586/memcpy.S (__memcpy_chk): New definition.Ulrich Drepper
* sysdeps/i386/i586/mempcpy.S (__memcpy_chk): New definition. * sysdeps/i386/i586/memset.S (__memset_chk): New definition.
2007-09-15* misc/sys/cdefs.h (__va_arg_pack): Define for GCC 4.3+.Ulrich Drepper
* misc/bits/syslog.h (syslog): When __va_arg_pack is defined, implement as __extern_always_inline function. (vsyslog): Define as __extern_always_inline function unconditionally. * libio/bits/stdio2.h (sprintf, snprintf, printf, fprintf): When __va_arg_pack is defined, implement as __extern_always_inline functions. (vsprintf, vsnprintf, vprintf, vfprintf): Define as __extern_always_inline functions unconditionally. * libio/bits/stdio.h (vprintf): Ifdef out the inline when bits/stdio2.h will be included. * wcsmbs/bits/wchar2.h (__swprintf_alias): New redirect. (swprintf, wprintf, fwprintf): When __va_arg_pack is defined, implement as __extern_always_inline functions. (vswprintf, vwprintf, vfwprintf): Define as __extern_always_inline functions unconditionally. * debug/tst-chk1.c (do_test): Enable remaining tests for C++. 2007-09-03 Jakub Jelinek <jakub@redhat.com> * misc/sys/cdefs.h (__extern_inline, __extern_always_inline): Only define in C++ for GCC 4.3+, in C++ always use __gnu_inline__ attribute. * include/features.h (__USE_EXTERN_INLINES): Define only when __extern_inline is defined. * stdlib/stdlib.h: Include bits/stdlib.h when __extern_always_inline is defined instead of when not __cplusplus. * misc/sys/syslog.h: Include bits/syslog.h when __extern_always_inline is defined instead of when not __cplusplus. * socket/sys/socket.h: Include bits/socket2.h when __extern_always_inline is defined instead of when not __cplusplus. * libio/stdio.h: Include bits/stdio2.h when __extern_always_inline is defined instead of when not __cplusplus. * posix/unistd.h: Include bits/unistd.h when __extern_always_inline is defined instead of when not __cplusplus. * string/string.h: Include bits/string3.h when __extern_always_inline is defined instead of when not __cplusplus. * wcsmbs/wchar.h: Include bits/wchar2.h when __extern_always_inline is defined instead of when not __cplusplus. (btowc, wctob): Don't guard the inlines with ifndef __cplusplus. * io/fcntl.h: Don't include bits/fcntl2.h if __extern_always_inline is not defined. * misc/bits/syslog-ldbl.h: Guard *_chk stuff with defined __extern_always_inline instead of !defined __cplusplus. * libio/bits/stdio-ldbl.h: Likewise. * wcsmbs/bits/wchar-ldbl.h: Likewise. * misc/bits/syslog.h (syslog): Don't define for C++. (vsyslog): Use __extern_always_inline function for C++ instead of a macro. * libio/bits/stdio.h (__STDIO_INLINE): Define to __extern_inline whenever that macro is defined. (vprintf): Don't provide the inline for C++. (fread_unlocked, fwrite_unlocked): Don't define the macros for C++. * libio/bits/stdio2.h (sprintf, snprintf, printf, fprintf): Don't define the macros for C++. (vsprintf, vsnprintf, vprintf, vfprintf): Define as __extern_always_inline functions for C++. * io/sys/stat.h (stat, lstat, fstat, fstatat, mknod, mknodat, stat64, lstat64, fstat64, fstatat64): Don't define if not __USE_EXTERN_INLINES. * wcsmbs/bits/wchar2.h: Fix #error message. (swprintf, wprintf, fwprintf): Don't define the macros for C++. (vswprintf, vwprintf, vfwprintf): Define using __extern_always_inline functions for C++. * string/bits/string3.h: Don't #undef macros if __cplusplus. (memcpy, memmove, mempcpy, memset, bcopy, bzero, strcpy, stpcpy, strncpy, strcat, strncat): Define as __extern_always_inline functions instead of macros for C++. * math/bits/cmathcalls.h: Guard __extern_inline routines with defined __extern_inline. * sysdeps/alpha/fpu/bits/mathinline.h (__MATH_INLINE): Define to __extern_inline whenever that macro is defined. * sysdeps/ia64/fpu/bits/mathinline.h (__MATH_INLINE): Likewise. * sysdeps/i386/fpu/bits/mathinline.h (__MATH_INLINE): Likewise. * sysdeps/i386/i486/bits/string.h (__STRING_INLINE): Likewise. * sysdeps/s390/bits/string.h (__STRING_INLINE): Likewise. * sysdeps/s390/fpu/bits/mathinline.h (__MATH_INLINE): Likewise. * sysdeps/powerpc/fpu/bits/mathinline.h (__MATH_INLINE): Likewise. * sysdeps/x86_64/fpu/bits/mathinline.h (__MATH_INLINE): Likewise. * sysdeps/sparc/fpu/bits/mathinline.h (__MATH_INLINE): Likewise. * sysdeps/unix/sysv/linux/sys/sysmacros.h (gnu_dev_major, gnu_dev_minor, gnu_dev_makedev): Remove __extern_inline from prototypes. Only provide __extern_inline routines if __USE_EXTERN_INLINES. * debug/Makefile: Add rules to build and run tst-{,lfs}chk{4,5,6} tests. * debug/tst-chk1.c (do_prepare, do_test): Allow compilation as C++. For now avoid some *printf tests in C++. Skip all testing if __USE_FORTIFY_LEVEL is defined, but __extern_always_inline macro is not. * debug/tst-chk4.cc: New file. * debug/tst-chk5.cc: New file. * debug/tst-chk6.cc: New file. * debug/tst-lfschk4.cc: New file. * debug/tst-lfschk5.cc: New file. * debug/tst-lfschk6.cc: New file. * include/wchar.h (__vfwprintf_chk, __vswprintf_chk): Avoid prototypes in C++. * include/stdio.h (__sprintf_chk, __snprintf_chk, __vsprintf_chk, __vsnprintf_chk, __printf_chk, __fprintf_chk, __vprintf_chk, __vfprintf_chk, __fgets_unlocked_chk, __fgets_chk): Likewise.
2007-09-07* sysdeps/mach/hurd/bits/ioctls.h (TAB3): New macro.Roland McGrath
2007-08-29* sysdeps/unix/sysv/linux/check_pf.c (IFA_F_OPTIMISTIC): Define toUlrich Drepper
zero if not defined. (make_request): Recognize optimistic addresses and treat them like deprecated addresses. Reported by Neil Horman <nhorman@redhat.com>.
2007-08-272007-08-27 Jakub Jelinek <jakub@redhat.com>Roland McGrath
* sysdeps/unix/sysv/linux/syscalls.list (personality): Change caller to EXTRA.
2007-08-25* sysdeps/x86_64/cacheinfo.c (handle_amd): Fix computation ofcvs/fedora-glibc-20070825T1839Ulrich Drepper
associativity for fully-associative caches.
2007-08-25* sysdeps/x86_64/cacheinfo.c (handle_amd): Handle L3 cacheUlrich Drepper
requests. Fill on more associativity values for L2. Patch mostly by Evandro Menezes.
2007-08-24* sysdeps/unix/sysv/linux/x86_64/init-first.cUlrich Drepper
(_libc_vdso_platform_setup): Avoid using exported variable by using alias.
2007-08-24* sysdeps/unix/sysv/linux/i386/syscalls.list: No reason to markUlrich Drepper
fallocate64 as EXTRA< it is not referenced if the symbol isn't defined.
2007-08-24* sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): CorrectlyUlrich Drepper
align stack for call if pltexit is to be used.
2007-08-24[BZ #3924]Ulrich Drepper
* sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Correctly align for function call in case pltexit has to be called later.
2007-08-24* sysdeps/i386/dl-trampoline.S (_dl_runtime_resolve): AvoidUlrich Drepper
implicit atomic operation when storing function pointer. (_dl_runtime_profile): Likewise.
2007-08-21* sysdeps/unix/sysv/linux/alpha/sysdep.h: Include tls.h.Jakub Jelinek
2007-08-21 Jakub Jelinek <jakub@redhat.com> * sysdeps/unix/sysv/linux/alpha/sysdep.h: Include tls.h.
2007-08-20* csu/libc-start.c: Don't handle VDSO_SETUP here.Ulrich Drepper
* sysdeps/unix/sysv/linux/init-first.c: Handle it here instead. * sysdeps/unix/sysv/linux/x86_64/libc-start.c: Renamed to... * sysdeps/unix/sysv/linux/x86_64/init-first.c: ...this. New file. * sysdeps/unix/sysv/linux/powerpc/libc-start.c: Move VDSO_SETUP code to... * sysdeps/unix/sysv/linux/x86_64/init-first.c: ...here. New file.
2007-08-16* sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone): Jakub Jelinek
If the syscall fails, set errno to the actual returned error number rather than EINVAL. * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone): If arguments are incorrect, set errno to EINVAL, if the syscall fails, set errno to the actual returned error number. * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone): If the syscall fails, set errno to the actual returned error number rather than EINVAL. * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone): If arguments are incorrect, set errno to EINVAL, if the syscall fails, set errno to the actual returned error number.