Roland McGrath [Fri, 13 Jul 2007 21:52:52 +0000 (21:52 +0000)]
* configure: Regenerated.
Roland McGrath [Fri, 13 Jul 2007 21:52:28 +0000 (21:52 +0000)]
2007-07-13 Roland McGrath <roland@redhat.com>
* configure: Regenerated.
Ulrich Drepper [Thu, 12 Jul 2007 18:38:01 +0000 (18:38 +0000)]
* sysdeps/powerpc/powerpc32/power6/memset.S: Update comments.
Specify .machine power6 to get ISA-V2.0 branch hints. Unroll loops
and avoid branch misspredicts for > 31 bytes memset case.
* sysdeps/powerpc/powerpc64/power6/memset.S: Likewise.
Remove toc ref to __cache_line_size.
* sysdeps/powerpc/powerpc32/power4/memcmp.S: Specify .machine power4
to get ISA-V2.0 branch hints.
* sysdeps/powerpc/powerpc32/power4/memcpy.S: Likewise
* sysdeps/powerpc/powerpc32/power4/memset.S: Likewise
* sysdeps/powerpc/powerpc32/power6/memcpy.S: Likewise.
* sysdeps/powerpc/powerpc64/power4/memcmp.S: Likewise.
* sysdeps/powerpc/powerpc64/power4/memcpy.S: Likewise.
* sysdeps/powerpc/powerpc64/power4/memset.S: Likewise.
Remove toc ref to __cache_line_size.
* sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S:
Include math_ldbl_opt.h.
Ulrich Drepper [Thu, 12 Jul 2007 18:17:11 +0000 (18:17 +0000)]
[BZ #4775, BZ #4776]
2007-07-12 Jakub Jelinek <jakub@redhat.com>
[BZ #4775]
* math/tgmath.h (__tgmath_real_type_sub): Formatting.
(__tgmath_real_type): Fix if expr is const int or other const
qualified integral type.
(__TGMATH_UNARY_REAL_ONLY): Rewritten to avoid using statement
expressions and handle const qualified arguments.
(__TGMATH_BINARY_FIRST_REAL_ONLY, __TGMATH_UNARY_REAL_IMAG,
__TGMATH_UNARY_REAL_IMAG_RET_REAL): Likewise.
(__TGMATH_UNARY_REAL_RET_ONLY): Rewritten to avoid using
statement expressions.
(__TGMATH_BINARY_REAL_ONLY, __TGMATH_TERNARY_FIRST_SECOND_REAL_ONLY,
__TGMATH_TERNARY_REAL_ONLY, __TGMATH_BINARY_REAL_IMAG): Likewise.
(__TGMATH_UNARY_IMAG): Define.
(conj, cproj): Use __TGMATH_UNARY_IMAG macro.
* math/Makefile (tests): Add test-tgmath2.
(CFLAGS-test-tgmath2.c): Add.
* math/test-tgmath.c (fy, dy, ly, fz, dz, lz, count_cdouble,
count_cfloat, count_cldouble): New variables.
(NCCALLS): Define.
(main): Check number of complex calls as well.
(F(compile_test)): Add complex tests and tests with const qualified
arguments.
(y, z, ccount): Define.
(F(cacos), F(casin), F(catan), F(ccos), F(csin), F(ctan), F(cacosh),
F(casinh), F(catanh), F(ccosh), F(csinh), F(ctanh), F(cexp), F(clog),
F(csqrt), F(cpow), F(cabs), F(carg), F(creal), F(cimag), F(conj),
F(cproj)): New functions.
* math/test-tgmath2.c: New test.
2007-07-11 Jakub Jelinek <jakub@redhat.com>
[BZ #4776]
* elf/dl-load.c (_dl_rtld_di_serinfo): Output / in LD_LIBRARY_PATH,
RPATH etc. as "/" rather than "", don't segfault on empty paths,
instead output ".".
* dlfcn/Makefile (distribute): Add glreflib3.c.
(module-names): Add glreflib3.
($(objpfx)tst-dlinfo.out): Depend on glreflib3.so rather than
glreflib1.so.
(LDFLAGS_glreflib3.so): New.
* dlfcn/tst-dlinfo.c (do_test): Load glreflib3.so instead of
glreflib1.so.
* dlfcn/glreflib3.c: New file.
* intl/finddomain.c (_nl_find_domain): If _nl_explode_name
returned -1, return NULL.
* intl/explodename.c (_nl_explode_name): Return -1 if
_nl_normalize_codeset failed.
Ulrich Drepper [Tue, 10 Jul 2007 22:14:12 +0000 (22:14 +0000)]
[BZ #4773]
2007-07-10 Ulrich Drepper <drepper@redhat.com>
[BZ #4773]
* time/strptime_l.c (__strptime_internal): Implement greedy
matching of weekday and month names.
Ulrich Drepper [Tue, 10 Jul 2007 22:12:28 +0000 (22:12 +0000)]
Test of greedy matching in strptime.
Roland McGrath [Tue, 10 Jul 2007 00:39:31 +0000 (00:39 +0000)]
* elf/elf.h (NT_GNU_ABI_TAG): New macro.
(ELF_NOTE_ABI): Use it.
(NT_GNU_HWCAP, NT_GNU_BUILD_ID): New macros.
Roland McGrath [Tue, 10 Jul 2007 00:39:26 +0000 (00:39 +0000)]
2007-07-09 Roland McGrath <roland@redhat.com>
* elf/elf.h (NT_GNU_ABI_TAG): New macro.
(ELF_NOTE_ABI): Use it.
(NT_GNU_HWCAP, NT_GNU_BUILD_ID): New macros.
Ulrich Drepper [Mon, 9 Jul 2007 16:12:05 +0000 (16:12 +0000)]
* sysdeps/x86_64/cacheinfo.c (intel_02_known): Add new entries.
* sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Likewise.
Ulrich Drepper [Sun, 8 Jul 2007 04:41:34 +0000 (04:41 +0000)]
* stdio-common/vfscanf.c (_IO_vfscanf): Add additional test for EOF
in loop to look for conversion specifier to avoid testing of
wrong errno value.
* stdio-common/Makefile (tests): Add bug18, bug18a, bug19, bug19a.
* stdio-common/bug18a.c: New file.
* stdio-common/bug19.c: New file.
* stdio-common/bug19a.c: New file.
Ulrich Drepper [Sat, 7 Jul 2007 21:38:43 +0000 (21:38 +0000)]
* libio/wstrops.c (_IO_wstr_underflow): Clear errno before
returning WEOF.
* stdio-common/Makefile (tests): Add bug18a.
* stdio-common/bug18a.c: New file.
Ulrich Drepper [Sat, 7 Jul 2007 18:29:30 +0000 (18:29 +0000)]
[BZ #4745]
2007-07-07 Ulrich Drepper <drepper@redhat.com>
[BZ #4745]
* libio/strops.c (_IO_str_underflow): Clear errno before returning
EOF.
* stdio-common/Makefile (tests): Add bug18.
* stdio-common/bug18.c: New file.
Ulrich Drepper [Sat, 7 Jul 2007 01:54:07 +0000 (01:54 +0000)]
* sysdeps/sh/tls.h: Include stdlib.h, list.h, sysdep.h and
kernel-features.h.
Ulrich Drepper [Sat, 7 Jul 2007 01:53:19 +0000 (01:53 +0000)]
Include stdlib.h, list.h, sysdep.h and kernel-features.h.
Roland McGrath [Thu, 5 Jul 2007 22:03:57 +0000 (22:03 +0000)]
* Makeconfig ($(common-objpfx)gnu/lib-names.stmp): Use LC_ALL=C when
running awk script.
Roland McGrath [Wed, 4 Jul 2007 22:08:03 +0000 (22:08 +0000)]
whitespace
Ulrich Drepper [Wed, 4 Jul 2007 21:17:34 +0000 (21:17 +0000)]
Fix typo.
Ulrich Drepper [Wed, 4 Jul 2007 18:06:39 +0000 (18:06 +0000)]
* elf/dl-sysdep.c (_dl_important_hwcaps): Add integer overflow check.
* elf/dl-minimal.c (__libc_memalign): Likewise. Handle malloc (0).
Return NULL if mmap failed instead of asserting it does not.
(calloc): Check for integer overflow.
* elf/dl-minimal.c (__strtoul_internal): Fix parsing of numbers bigger
than LONG_MAX / 10.
Ulrich Drepper [Tue, 3 Jul 2007 14:49:53 +0000 (14:49 +0000)]
[BZ #4702]
2007-07-03 Jakub Jelinek <jakub@redhat.com>
[BZ #4702]
* nis/nss-default.c: Include errno.h.
(init): Preserve errno.
Ulrich Drepper [Mon, 2 Jul 2007 18:34:39 +0000 (18:34 +0000)]
* sysdeps/unix/sysv/linux/bits/socket.h (PF_UNIX): Update comment.
Ulrich Drepper [Sat, 30 Jun 2007 17:07:48 +0000 (17:07 +0000)]
* sysdeps/unix/sysv/linux/bits/socket.h: Add PF_RXRPC and AF_RXRPC.
2007-06-29 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/unix/sysv/linux/bits/socket.h: Add PF_IUCV and AF_IUCV.
2007-06-29 Martin Schwidefsky <schwidefsky@de.ibm.com>
Ulrich Drepper [Sat, 30 Jun 2007 17:03:55 +0000 (17:03 +0000)]
007-06-29 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/s390/dl-procinfo.c: New file.
* sysdeps/s390/dl-procinfo.h: New file.
* sysdeps/unix/sysv/linux/s390/dl-procinfo.h: New file.
Ulrich Drepper [Sat, 30 Jun 2007 17:01:43 +0000 (17:01 +0000)]
* elf/dl-load.c (open_verify): Find .note.ABI-tag notes even
in PT_NOTE segments with multiple notes.
* elf/readelflib.c (process_elf_file): Likewise.
Ulrich Drepper [Sat, 30 Jun 2007 17:01:07 +0000 (17:01 +0000)]
(open_verify): Find .note.ABI-tag notes even in PT_NOTE segments with multiple notes.
Roland McGrath [Tue, 26 Jun 2007 06:47:56 +0000 (06:47 +0000)]
* init.c (__nptl_initial_report_events): New variable.
(__pthread_initialize_minimal_internal): Initialize pd->report_events
to that.
Roland McGrath [Tue, 26 Jun 2007 06:47:07 +0000 (06:47 +0000)]
2007-05-16 Roland McGrath <roland@redhat.com>
* init.c (__nptl_initial_report_events): New variable.
(__pthread_initialize_minimal_internal): Initialize pd->report_events
to that.
Ulrich Drepper [Fri, 22 Jun 2007 22:13:52 +0000 (22:13 +0000)]
(pthread_getattr_np): Clear cpuset and cpusetsize if pthread_getaffinity_np failed with ENOSYS.
Ulrich Drepper [Fri, 22 Jun 2007 22:13:38 +0000 (22:13 +0000)]
* pthread_getattr_np.c (pthread_getattr_np): Clear cpuset and
cpusetsize if pthread_getaffinity_np failed with ENOSYS.
Ulrich Drepper [Fri, 22 Jun 2007 17:01:29 +0000 (17:01 +0000)]
* nis/nis_domain_of.c (__nis_domain_of): Make the code a bit more
ISO C compliant.
Ulrich Drepper [Wed, 20 Jun 2007 03:19:13 +0000 (03:19 +0000)]
* elf/dl-close.c (free_mem): Free _dl_scope_free_list.
2007-06-13 Jakub Jelinek <jakub@redhat.com>
* include/link.h: Don't include rtld-lowlevel.h.
(struct link_map): Remove l_scope_lock.
* sysdeps/generic/ldsodefs.h: Don't include rtld-lowlevel.h.
(_dl_scope_free_list): New field (variable) in _rtld_global.
(DL_LOOKUP_SCOPE_LOCK): Remove.
(_dl_scope_free): New prototype.
* elf/dl-runtime.c (_dl_fixup): Don't use __rtld_mrlock_*lock.
Don't pass DL_LOOKUP_SCOPE_LOCK to _dl_lookup_symbol_x.
(_dl_profile_fixup): Likewise.
* elf/dl-sym.c (do_sym): Likewise. Use wrapped _dl_lookup_symbol_x
whenever !RTLD_SINGLE_THREAD_P, use THREAD_GSCOPE_SET_FLAG and
THREAD_GSCOPE_RESET_FLAG around it.
* elf/dl-close.c (_dl_close_worker): Don't use
__rtld_mrlock_{change,done}. Call _dl_scope_free on the old
scope. Make sure THREAD_GSCOPE_WAIT () happens if any old
scopes were queued or if l_scope_mem has been abandoned.
* elf/dl-open.c (_dl_scope_free): New function.
(dl_open_worker): Use it. Don't use __rtld_mrlock_{change,done}.
* elf/dl-support.c (_dl_scope_free_list): New variable.
* elf/dl-lookup.c (add_dependency): Remove flags argument.
Remove DL_LOOKUP_SCOPE_LOCK handling.
(_dl_lookup_symbol_x): Adjust caller. Remove DL_LOOKUP_SCOPE_LOCK
handling.
* elf/dl-object.c (_dl_new_object): Don't use
__rtld_mrlock_initialize.
2007-06-19 Ulrich Drepper <drepper@redhat.com>
Ulrich Drepper [Tue, 19 Jun 2007 22:59:48 +0000 (22:59 +0000)]
* sysdeps/generic/ldsodefs.h (rtld_global): Reorder some elements
to fill in holes
(rtld_global_ro): Likewise.
2007-06-18 Jakub Jelinek <jakub@redhat.com>
* elf/dl-addr.c (_dl_addr): Skip PT_LOAD checking if l_contiguous.
Move PT_LOAD checking to...
(_dl_addr_inside_object): ... here, new function.
* elf/dl-sym.c (do_sym): If not l_contiguous,
call _dl_addr_inside_object.
* elf/dl-iteratephdr.c (__dl_iterate_phdr): Likewise.
* dlfcn/dlinfo.c (dlinfo_doit): Likewise.
* elf/dl-open.c (dl_open_worker): Likewise.
(_dl_addr_inside_object): New function if IS_IN_rtld.
* elf/dl-load.c (_dl_map_object_from_fd): Set l_contiguous if no
holes are present or are PROT_NONE protected.
* include/link.h (struct link_map): Add l_contiguous field.
* sysdeps/generic/ldsodefs.h (_dl_addr_inside_object): New prototype.
Ulrich Drepper [Mon, 18 Jun 2007 22:22:57 +0000 (22:22 +0000)]
[BZ #4647]
Tomas Janousek <tjanouse@redhat.com>
Ulrich Drepper <drepper@redhat.com>
[BZ #4647]
* resolv/res_send.c (send_dg): Remove socket_pf. Use ipv6_unavail
member in __res_state, only convaddr4to6 if nssocks[ns] is a PF_INET6
socket.
* resolv/resolv.h (__res_state): Add ipv6_unavail member. Make
unused member a bitmap.
* resolv/res_init.c (__res_vinit): Reset ipv6_unavail if IPv6
servers are configured.
2007-06-18 Jakub Jelinek <jakub@redhat.com>
Ulrich Drepper [Mon, 18 Jun 2007 20:50:49 +0000 (20:50 +0000)]
* elf/rtld.c (dl_main): Don't call init_tls more than once.
Ulrich Drepper [Sun, 17 Jun 2007 18:03:08 +0000 (18:03 +0000)]
* sysdeps/generic/initfini.c: Tell gcc about the nonstandard sections.
PTRACE_O_TRACEVFORKDONE, PTRACE_O_TRACEEXIT, PTRACE_O_MASK,
Ulrich Drepper [Sun, 17 Jun 2007 18:02:40 +0000 (18:02 +0000)]
Tell gcc about the nonstandard sections.
Andreas Jaeger [Sun, 17 Jun 2007 17:29:48 +0000 (17:29 +0000)]
[BZ #4125]
* sysdeps/unix/sysv/linux/sys/ptrace.h
(PTRACE_O_TRACESYSGOOD, PTRACE_O_TRACEFORK,
PTRACE_O_TRACEVFORK, PTRACE_O_TRACECLONE, PTRACE_O_TRACEEXEC,
PTRACE_O_TRACEVFORKDONE, PTRACE_O_TRACEEXIT, PTRACE_O_MASK,
PTRACE_EVENT_FORK, PTRACE_EVENT_VFORK, PTRACE_EVENT_CLONE,
PTRACE_EVENT_EXEC, PTRACE_EVENT_VFORK_DONE, PTRACE_EVENT_EXIT):
Define.
* sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h: Likewise.
* sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/sys/ptrace.h: Likewise.
* sysdeps/unix/sysv/linux/s390/sys/ptrace.h: Likewise.
2007-06-16 Andreas Jaeger <aj@suse.de>
[BZ #4125]
* sysdeps/unix/sysv/linux/sys/ptrace.h
(PTRACE_O_TRACESYSGOOD, PTRACE_O_TRACEFORK,
PTRACE_O_TRACEVFORK, PTRACE_O_TRACECLONE, PTRACE_O_TRACEEXEC,
PTRACE_O_TRACEVFORKDONE, PTRACE_O_TRACEEXIT, PTRACE_O_MASK,
PTRACE_EVENT_FORK, PTRACE_EVENT_VFORK, PTRACE_EVENT_CLONE,
PTRACE_EVENT_EXEC, PTRACE_EVENT_VFORK_DONE, PTRACE_EVENT_EXIT):
Define.
* sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h: Likewise.
* sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/sys/ptrace.h: Likewise.
* sysdeps/unix/sysv/linux/s390/sys/ptrace.h: Likewise.
Ulrich Drepper [Sun, 17 Jun 2007 16:43:57 +0000 (16:43 +0000)]
* allocatestack.c (allocate_stack): Make code compile if
__ASSUME_PRIVATE_FUTEX is set.
Ulrich Drepper [Sun, 17 Jun 2007 16:42:55 +0000 (16:42 +0000)]
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_rdlock.S:
(__pthread_rwlock_rdlock): Don't use non SH-3/4 instruction.
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_wrlock.S:
(__pthread_rwlock_wrlock): Likewise.
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_timedrdlock.S:
(pthread_rwlock_timedrdlock): Likewise.
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_timedwrlock.S:
(pthread_rwlock_timedwrlock): Likewise.
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_unlock.S:
(__pthread_rwlock_unlock): Likewise.
2007-06-10 Kaz Kojima <kkojima@rr.iij4u.or.jp>
* sysdeps/sh/tcb-offsets.sym: Add PRIVATE_FUTEX.
* sysdeps/unix/sysv/linux/sh/bits/pthreadtypes.h: Include endian.h.
Split __flags into __flags, __shared, __pad1 and __pad2.
* sysdeps/unix/sysv/linux/sh/libc-lowlevellock.S: Use private
futexes if they are available.
* sysdeps/unix/sysv/linux/sh/lowlevellock.S: Adjust so that change
in libc-lowlevellock.S allow using private futexes.
* sysdeps/unix/sysv/linux/sh/lowlevellock.h: Define
FUTEX_PRIVATE_FLAG. Add additional parameter to lll_futex_wait,
lll_futex_timed_wait and lll_futex_wake. Change lll_futex_wait
to call lll_futex_timed_wait. Add lll_private_futex_wait,
lll_private_futex_timed_wait and lll_private_futex_wake.
(lll_robust_mutex_unlock): Fix typo.
* sysdeps/unix/sysv/linux/sh/pthread_barrier_wait.S: Use private
field in futex command setup.
* sysdeps/unix/sysv/linux/sh/pthread_cond_timedwait.S: Use
COND_NWAITERS_SHIFT instead of COND_CLOCK_BITS.
* sysdeps/unix/sysv/linux/sh/pthread_cond_wait.S: Likewise.
* sysdeps/unix/sysv/linux/sh/pthread_once.S: Use private futexes
if they are available. Remove clear_once_control.
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_rdlock.S: Use private
futexes if they are available.
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_timedrdlock.S: Likewise.
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_timedwrlock.S: Likewise.
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_unlock.S: Likewise.
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_wrlock.S: Likewise.
* sysdeps/unix/sysv/linux/sh/sem_post.S: Add private futex support.
Wake only when there are waiters.
* sysdeps/unix/sysv/linux/sh/sem_wait.S: Add private futex
support. Indicate that there are waiters. Remove unnecessary
extra cancellation test.
* sysdeps/unix/sysv/linux/sh/sem_timedwait.S: Likewise. Removed
left-over duplication of __sem_wait_cleanup.
Ulrich Drepper [Sat, 16 Jun 2007 16:55:38 +0000 (16:55 +0000)]
[BZ #4599]
2007-06-16 Ulrich Drepper <drepper@redhat.com>
[BZ #4599]
* sysdeps/unix/sysv/linux/check_pf.c (make_request): When
determining whether there are IPv4/IPv6 addresses, ignore loopback
addresses.
Ulrich Drepper [Sat, 16 Jun 2007 16:54:40 +0000 (16:54 +0000)]
(make_request): When determining whether there are IPv4/IPv6 addresses, ignore loopback addresses.
Jakub Jelinek [Thu, 14 Jun 2007 19:21:34 +0000 (19:21 +0000)]
* soft-fp/soft-fp.h (CMPtype): Define to "int" if undefined.
* soft-fp/eqdf2.c (__eqdf2): Use CMPtype instead of int
as the return type. Change type of "r" variable to CMPtype.
* soft-fp/eqsf2.c (__eqsf2): Likewise.
* soft-fp/eqtf2.c (__eqtf2): Likewise.
* soft-fp/gedf2.c (__gedf2): Likewise.
* soft-fp/gesf2.c (__gesf2): Likewise.
* soft-fp/getf2.c (__getf2): Likewise.
* soft-fp/ledf2.c (__ledf2): Likewise.
* soft-fp/lesf2.c (__lesf2): Likewise.
* soft-fp/letf2.c (__letf2): Likewise.
* soft-fp/unorddf2 (__unorddf2): Likewise.
* soft-fp/unordsf2 (__unordsf2): Likewise.
* soft-fp/unordtf2 (__unordtf2): Likewise.
2007-06-14 Uros Bizjak <ubizjak@gmail.com>
* soft-fp/soft-fp.h (CMPtype): Define to "int" if undefined.
* soft-fp/eqdf2.c (__eqdf2): Use CMPtype instead of int
as the return type. Change type of "r" variable to CMPtype.
* soft-fp/eqsf2.c (__eqsf2): Likewise.
* soft-fp/eqtf2.c (__eqtf2): Likewise.
* soft-fp/gedf2.c (__gedf2): Likewise.
* soft-fp/gesf2.c (__gesf2): Likewise.
* soft-fp/getf2.c (__getf2): Likewise.
* soft-fp/ledf2.c (__ledf2): Likewise.
* soft-fp/lesf2.c (__lesf2): Likewise.
* soft-fp/letf2.c (__letf2): Likewise.
* soft-fp/unorddf2 (__unorddf2): Likewise.
* soft-fp/unordsf2 (__unordsf2): Likewise.
* soft-fp/unordtf2 (__unordtf2): Likewise.
Ulrich Drepper [Sat, 9 Jun 2007 19:45:57 +0000 (19:45 +0000)]
* elf/do-lookup.h (do_lookup_x): Read r_nlist before r_list and
make sure gcc doesn't mess around with this.
Ulrich Drepper [Sat, 9 Jun 2007 02:19:12 +0000 (02:19 +0000)]
* elf/dl-lookup.c (_dl_lookup_symbol_x): Remove use of r_nlist.
Ulrich Drepper [Sat, 9 Jun 2007 02:13:06 +0000 (02:13 +0000)]
* elf/dl-close.c (_dl_close_worker): Remove all to be removed
libraries from the global scope at once and call THREAD_GSCOPE_WAIT
at most once per _dl_close_worker.
Ulrich Drepper [Fri, 8 Jun 2007 19:25:07 +0000 (19:25 +0000)]
* sysdeps/unix/sysv/linux/bits/sched.h: Make second parameter of
__sched_cpucount as const.
* posix/sched_cpucount.c: Adjust.
Ulrich Drepper [Fri, 8 Jun 2007 19:23:19 +0000 (19:23 +0000)]
* posix/sched_cpucount.c (__sched_cpucount): Allow using special
instruction for counting bits.
* sysdeps/x86_64/sched_cpucount.c: New file.
Ulrich Drepper [Fri, 8 Jun 2007 18:29:24 +0000 (18:29 +0000)]
(__sched_cpucount): Allow using special instruction for counting bits.
Jakub Jelinek [Fri, 8 Jun 2007 07:36:00 +0000 (07:36 +0000)]
[BZ #4586]
[BZ #4586]
Ulrich Drepper [Fri, 8 Jun 2007 05:28:54 +0000 (05:28 +0000)]
* config.make.in: Likewise.
Ulrich Drepper [Fri, 8 Jun 2007 03:17:15 +0000 (03:17 +0000)]
* configure.in: Avoid variable named BASH.
Patch in part by Mike Frysinger.
2007-06-06 Jakub Jelinek <jakub@redhat.com>
Ulrich Drepper [Fri, 8 Jun 2007 03:08:45 +0000 (03:08 +0000)]
* sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (nextafterl): Remove
unused ily variable. Fix nextafterl on +-__LDBL_MAX__ and +-Inf.
Remove unreachable code at the end.
2007-06-01 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c: Correct description of
ldbl-128ibm in comment.
(fpclassifyl): Correct classification of denormals.
* sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (nextafterl): Correct
return value for MIN denormal. Rewrite using long double math too
correctly handle denormals and canonicalize the results.
2007-06-05 Jakub Jelinek <jakub@redhat.com>
* sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c
(__mpn_construct_long_double): Fix conversion where result ought
to be smaller than __LDBL_MIN__, or the low double should be
denormal. Fix decision where to negate low double - honor round
to even rules.
* stdio-common/tst-sprintf2.c: Include string.h.
(COMPARE_LDBL): Define.
(TEST): Also test whether a string hexadecimal float representation
can be parsed back to the number.
(main): Add a couple of further tests.
2007-06-04 Jakub Jelinek <jakub@redhat.com>
Ulrich Drepper [Fri, 8 Jun 2007 02:50:59 +0000 (02:50 +0000)]
[BZ #4586]
2007-06-06 Jakub Jelinek <jakub@redhat.com>
BZ #4586
* sysdeps/i386/ldbl2mpn.c (__mpn_extract_long_double): Treat
pseudo-zeros as zero.
* sysdeps/x86_64/ldbl2mpn.c: New file.
* sysdeps/ia64/ldbl2mpn.c: New file.
Ulrich Drepper [Mon, 4 Jun 2007 14:38:22 +0000 (14:38 +0000)]
* sysdeps/ieee754/ldbl-128ibm/printf_fphex.c
(PRINT_FPHEX_LONG_DOUBLE): Fix printing numbers where lower double
is non-zero, but smaller than 2 * __DBL_MIN__.
* stdio-common/tst-sprintf2.c: New test.
* stdio-common/Makefile (tests): Add tst-sprintf2.
* math/test-misc.c (main): Don't run last batch of tests with
IBM long double format.
Ulrich Drepper [Sun, 3 Jun 2007 21:20:06 +0000 (21:20 +0000)]
* sysdeps/powerpc/powerpc32/970/fpu/Implies: New file.
* sysdeps/powerpc/powerpc32/power5/fpu/Implies: New file.
* sysdeps/powerpc/powerpc32/power5+/fpu/Implies: New file.
* sysdeps/powerpc/powerpc32/power6/fpu/Implies: New file.
* sysdeps/powerpc/powerpc32/power6x/fpu/Implies: New file.
* sysdeps/powerpc/powerpc64/970/fpu/Implies: New file.
* sysdeps/powerpc/powerpc64/power5/fpu/Implies: New file.
* sysdeps/powerpc/powerpc64/power5+/fpu/Implies: New file.
* sysdeps/powerpc/powerpc64/power6/fpu/Implies: New file.
* sysdeps/powerpc/powerpc64/power6x/fpu/Implies: New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/970/fpu/Implies: New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/power4/fpu/Implies:
New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/power5/fpu/Implies:
New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/power5+/fpu/Implies:
New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/fpu/Implies:
New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/power6x/fpu/Implies:
New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/970/fpu/Implies: New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/power4/fpu/Implies:
New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/power5/fpu/Implies:
New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/power5+/fpu/Implies:
New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/fpu/Implies:
New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/power6x/fpu/Implies:
New file.
2007-05-31 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S: Move.
* sysdeps/powerpc/powerpc32/power4/fpu/s_llrint.S: To here.
* sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrintf.S: Move.
* sysdeps/powerpc/powerpc32/power4/fpu/s_llrintf.S: To here.
* sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llround.S: Move.
* sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S: To here.
* sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llroundf.S: Move.
* sysdeps/powerpc/powerpc32/power4/fpu/s_llroundf.S: To here.
2007-05-22 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/power5+/fpu/s_round.S
(LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
* sysdeps/powerpc/powerpc32/power5+/fpu/s_trunc.S
(LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
* sysdeps/powerpc/powerpc64/power5+/fpu/s_round.S
(LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
* sysdeps/powerpc/powerpc64/power5+/fpu/s_trunc.S
(LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
2007-05-21 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/power4/fpu/slowexp.c: New file.
* sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.c: New file.
* sysdeps/powerpc/powerpc64/power4/fpu/slowexp.c: New file.
* sysdeps/powerpc/powerpc64/power4/fpu/w_sqrt.c: New file.
2007-03-15 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S
[LONG_DOUBLE_COMPAT]: Add compat_symbol for llrintl@@GLIBC_2_1.
2006-02-13 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S: New File
* sysdeps/powerpc/powerpc32/power6/fpu/s_llrintf.S: New File
* sysdeps/powerpc/powerpc32/power6/fpu/s_llround.S: New File
* sysdeps/powerpc/powerpc32/power6/fpu/s_llroundf.S: New File
2006-10-20 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/power4/fpu/slowpow.c: New file.
* sysdeps/powerpc/powerpc64/power4/fpu/slowpow.c: New file.
2006-10-03 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llround.S: New file.
* sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llroundf.S: New file.
* sysdeps/powerpc/powerpc32/powerpc64/fpu/Makefile: Moved.
* sysdeps/powerpc/powerpc32/powerpc64/fpu/mpa.c: Likewise.
* sysdeps/powerpc/powerpc32/power4/fpu/Makefile: To here.
* sysdeps/powerpc/powerpc32/power4/fpu/mpa.c: Likewise.
2006-09-29 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/power6x/fpu/s_lrint.S: New file.
* sysdeps/powerpc/powerpc32/power6x/fpu/s_lround.S: New file.
* sysdeps/powerpc/powerpc64/power6x/fpu/s_llrint.S: New file.
* sysdeps/powerpc/powerpc64/power6x/fpu/s_llround.S: New file.
2006-09-28 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/power5+/fpu/s_llround.S: New file.
* sysdeps/powerpc/powerpc32/power5+/fpu/s_llroundf.S: New file.
* sysdeps/powerpc/powerpc32/power5+/fpu/s_lround.S: New file.
* sysdeps/powerpc/powerpc32/power6x/fpu/Implies: New file.
* sysdeps/powerpc/powerpc64/power5+/fpu/s_llround.S: New file.
* sysdeps/powerpc/powerpc64/power6x/fpu/Implies: New file.
2006-08-31 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/powerpc64/fpu/Makefile: New file.
* sysdeps/powerpc/powerpc32/powerpc64/fpu/mpa.c: New file.
* sysdeps/powerpc/powerpc64/power4/fpu/Makefile: New file.
* sysdeps/powerpc/powerpc64/power4/fpu/mpa.c: New file.
2006-06-15 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/power5+/fpu/s_ceil.S: New file.
* sysdeps/powerpc/powerpc32/power5+/fpu/s_ceilf.S: New file.
* sysdeps/powerpc/powerpc32/power5+/fpu/s_floor.S: New file.
* sysdeps/powerpc/powerpc32/power5+/fpu/s_floorf.S: New file.
* sysdeps/powerpc/powerpc32/power5+/fpu/s_round.S: New file.
* sysdeps/powerpc/powerpc32/power5+/fpu/s_roundf.S: New file.
* sysdeps/powerpc/powerpc32/power5+/fpu/s_trunc.S: New file.
* sysdeps/powerpc/powerpc32/power5+/fpu/s_truncf.S: New file.
* sysdeps/powerpc/powerpc64/power5+/fpu/s_ceil.S: New file.
* sysdeps/powerpc/powerpc64/power5+/fpu/s_ceilf.S: New file.
* sysdeps/powerpc/powerpc64/power5+/fpu/s_floor.S: New file.
* sysdeps/powerpc/powerpc64/power5+/fpu/s_floorf.S: New file.
* sysdeps/powerpc/powerpc64/power5+/fpu/s_round.S: New file.
* sysdeps/powerpc/powerpc64/power5+/fpu/s_roundf.S: New file.
* sysdeps/powerpc/powerpc64/power5+/fpu/s_trunc.S: New file.
* sysdeps/powerpc/powerpc64/power5+/fpu/s_truncf.S: New file.
2006-03-20 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S: New file.
* sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrintf.S: New file.
2007-06-01 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/power6/memset.S: New file.
* sysdeps/powerpc/powerpc64/power6/memset.S: New file.
2007-05-31 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/970/Implies: New file.
* sysdeps/powerpc/powerpc32/power5/Implies: New file.
* sysdeps/powerpc/powerpc32/power5+/Implies: New file.
* sysdeps/powerpc/powerpc32/power6/Implies: New file.
* sysdeps/powerpc/powerpc32/power6x/Implies: New file.
* sysdeps/powerpc/powerpc64/970/Implies: New file.
* sysdeps/powerpc/powerpc64/power5/Implies: New file.
* sysdeps/powerpc/powerpc64/power5+/Implies: New file.
* sysdeps/powerpc/powerpc64/power6/Implies: New file.
* sysdeps/powerpc/powerpc64/power6x/Implies: New file.
2007-05-21 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/power4/memset.S: New file
2007-03-13 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc64/memcpy.S: Improve aligned loop to minimize
branch miss-predicts. Ensure that cache line crossing does not impact
dispatch grouping.
2006-12-13 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc64/power4/memcopy.h: Replace with include
"../../powerpc32/power4/memcopy.h".
* sysdeps/powerpc/powerpc64/power4/wordcopy.c: Replace with include
"../../powerpc32/power4/wordcopy.c".
2006-10-03 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/powerpc64/Makefile: Moved.
* sysdeps/powerpc/powerpc32/powerpc64/memcopy.h: Likewise.
* sysdeps/powerpc/powerpc32/powerpc64/wordcopy.c: Likewise.
* sysdeps/powerpc/powerpc32/power4/Makefile: To here.
* sysdeps/powerpc/powerpc32/power4/memcopy.h: Likewise.
* sysdeps/powerpc/powerpc32/power4/wordcopy.c: Likewise.
2006-09-10 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/power6/memcpy.S: New file.
2006-08-31 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/power6/wordcopy.c: New file.
* sysdeps/powerpc/powerpc32/powerpc64/Makefile: New file.
* sysdeps/powerpc/powerpc32/powerpc64/memcopy.h: New file.
* sysdeps/powerpc/powerpc32/powerpc64/wordcopy.c: New file.
* sysdeps/powerpc/powerpc64/power4/Makefile: New file.
* sysdeps/powerpc/powerpc64/power4/memcopy.h: New file.
* sysdeps/powerpc/powerpc64/power4/wordcopy.c: New file.
* sysdeps/powerpc/powerpc64/power6/wordcopy.c: New file.
2006-07-06 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc64/power6/memcpy.S: New file.
2006-03-20 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc32/power4/memcmp.S: New file.
* sysdeps/powerpc/powerpc32/power4/memcpy.S: New file.
* sysdeps/powerpc/powerpc32/power4/memset.S: New file.
* sysdeps/powerpc/powerpc32/power4/strncmp.S: New file.
* sysdeps/powerpc/powerpc64/power4/memcmp.S: New file.
* sysdeps/powerpc/powerpc64/power4/memcpy.S: New file.
* sysdeps/powerpc/powerpc64/power4/strncmp.S: New file.
Ulrich Drepper [Wed, 30 May 2007 04:45:03 +0000 (04:45 +0000)]
* pthread_getattr_np.c: No need to install a cancellation handler,
this is no cancellation point.
* pthread_getschedparam.c: Likewise.
* pthread_setschedparam.c: Likewise.
* pthread_setschedprio.c: Likewise.
* sysdeps/unix/sysv/linux/lowlevellock.c: Remove all traces of
lll_unlock_wake_cb.
* sysdeps/unix/sysv/linux/alpha/lowlevellock.h: Likewise.
* sysdeps/unix/sysv/linux/i386/lowlevellock.h: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S: Likewise.
* sysdeps/unix/sysv/linux/ia64/lowlevellock.h: Likewise.
* sysdeps/unix/sysv/linux/powerpc/lowlevellock.h: Likewise.
* sysdeps/unix/sysv/linux/s390/lowlevellock.h: Likewise.
* sysdeps/unix/sysv/linux/sh/lowlevellock.S: Likewise.
* sysdeps/unix/sysv/linux/sh/lowlevellock.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/lowlevellock.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc32/lowlevellock.c: Likewise.
* sysdeps/unix/sysv/linux/x86_64/lowlevellock.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/lowlevellock.h: Likewise.
Ulrich Drepper [Wed, 30 May 2007 04:22:24 +0000 (04:22 +0000)]
* sysdeps/unix/sysv/linux/x86_64/lowlevellock.S
(__lll_mutex_unlock_wake): Add back label '1' which went AWOL quite
some time ago.
Ulrich Drepper [Wed, 30 May 2007 04:08:13 +0000 (04:08 +0000)]
* sysdeps/unix/sysv/linux/i386/i486/libc-lowlevellock.S: Checking
whether there are more than one thread makes no sense here since
we only call the slow path if the locks are taken.
* sysdeps/unix/sysv/linux/x86_64/libc-lowlevellock.S: Likewise.
Ulrich Drepper [Tue, 29 May 2007 20:57:36 +0000 (20:57 +0000)]
* crypt/md5-crypt.c: Fix comment.
Ulrich Drepper [Tue, 29 May 2007 19:22:56 +0000 (19:22 +0000)]
Fix comment.
Roland McGrath [Tue, 29 May 2007 18:08:45 +0000 (18:08 +0000)]
* po/Makefile (po-sed-cmd): New variable.
(libc.pot.files): Move sed command text in there, avoid \ inside ''.
Roland McGrath [Tue, 29 May 2007 18:08:41 +0000 (18:08 +0000)]
2007-05-29 Roland McGrath <roland@redhat.com>
* po/Makefile (po-sed-cmd): New variable.
(libc.pot.files): Move sed command text in there, avoid \ inside ''.
Ulrich Drepper [Tue, 29 May 2007 16:15:48 +0000 (16:15 +0000)]
* sysdeps/unix/sysv/linux/internaltypes.h: Introduce
COND_NWAITERS_SHIFT.
* pthread_cond_destroy.c: Use COND_NWAITERS_SHIFT instead of
COND_CLOCK_BITS.
* pthread_cond_init.c: Likewise.
* pthread_cond_timedwait.c: Likewise.
* pthread_cond_wait.c: Likewise.
* pthread_condattr_getclock.c: Likewise.
* pthread_condattr_setclock.c: Likewise.
* sysdeps/unix/sysv/linux/lowlevelcond.sym: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S: Likewise.
Ulrich Drepper [Tue, 29 May 2007 14:45:49 +0000 (14:45 +0000)]
* nscd/nscd_helper.c (get_mapping): Handle short replies instead
of crashing. When this is the case or if the reply is malformed,
don't try to close the new file descriptor since it does not
exist.
Patch in part by Guillaume Chazarain <guichaz@yahoo.fr>.
Ulrich Drepper [Mon, 28 May 2007 16:43:59 +0000 (16:43 +0000)]
* sysdeps/unix/sysv/linux/futimes.c (miss_utimensat): Don't define
if __NR_utimensat is not defined.
Ulrich Drepper [Mon, 28 May 2007 16:42:08 +0000 (16:42 +0000)]
* sysdeps/i386/tls.h (THREAD_GSCOPE_RESET_FLAG): Use explicit
insn suffix.
(THREAD_GSCOPE_GET_FLAG): Remove.
* sysdeps/x86_64/tls.h (THREAD_GSCOPE_GET_FLAG): Remove.
* allocatestack.c (__wait_lookup_done): Revert 2007-05-24
changes.
* sysdeps/powerpc/tls.h (tcbhead_t): Remove gscope_flag.
(THREAD_GSCOPE_GET_FLAG): Remove.
(THREAD_GSCOPE_RESET_FLAG): Use THREAD_SELF->header.gscope_flag
instead of THREAD_GSCOPE_GET_FLAG.
(THREAD_GSCOPE_SET_FLAG): Likewise. Add atomic_write_barrier after
it.
* sysdeps/s390/tls.h (THREAD_GSCOPE_FLAG_UNUSED,
THREAD_GSCOPE_FLAG_USED, THREAD_GSCOPE_FLAG_WAIT,
THREAD_GSCOPE_RESET_FLAG, THREAD_GSCOPE_SET_FLAG,
THREAD_GSCOPE_WAIT): Define.
* sysdeps/sparc/tls.h (THREAD_GSCOPE_FLAG_UNUSED,
THREAD_GSCOPE_FLAG_USED, THREAD_GSCOPE_FLAG_WAIT,
THREAD_GSCOPE_RESET_FLAG, THREAD_GSCOPE_SET_FLAG,
THREAD_GSCOPE_WAIT): Define.
* sysdeps/sh/tls.h (THREAD_GSCOPE_FLAG_UNUSED,
THREAD_GSCOPE_FLAG_USED, THREAD_GSCOPE_FLAG_WAIT,
THREAD_GSCOPE_RESET_FLAG, THREAD_GSCOPE_SET_FLAG,
THREAD_GSCOPE_WAIT): Define.
* sysdeps/ia64/tls.h (THREAD_GSCOPE_FLAG_UNUSED,
THREAD_GSCOPE_FLAG_USED, THREAD_GSCOPE_FLAG_WAIT,
THREAD_GSCOPE_RESET_FLAG, THREAD_GSCOPE_SET_FLAG,
THREAD_GSCOPE_WAIT): Define.
2007-05-24 Richard Henderson <rth@redhat.com>
* descr.h (struct pthread): Add header.gscope_flag.
* sysdeps/alpha/tls.h (THREAD_GSCOPE_FLAG_UNUSED,
THREAD_GSCOPE_FLAG_USED, THREAD_GSCOPE_FLAG_WAIT,
THREAD_GSCOPE_RESET_FLAG, THREAD_GSCOPE_SET_FLAG,
THREAD_GSCOPE_WAIT): Define.
Ulrich Drepper [Sun, 27 May 2007 18:56:40 +0000 (18:56 +0000)]
[__WORDSIZE=64]: Renamed __pad1 element int rwlock structure to
Ulrich Drepper [Sun, 27 May 2007 18:56:02 +0000 (18:56 +0000)]
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedrdlock.S:
Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedwrlock.S:
Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_unlock.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S: Likewise.
Ulrich Drepper [Sun, 27 May 2007 18:06:18 +0000 (18:06 +0000)]
* init.c: Make it compile with older kernel headers.
* tst-initializers1.c: Show through exit code which test failed.
* pthread_rwlock_init.c: Also initialize __shared field.
* sysdeps/unix/sysv/linux/i386/bits/pthreadtypes.h: Split __flags
element in rwlock structure into four byte elements. One of them is
the new __shared element.
* sysdeps/unix/sysv/linux/x86_64/bits/pthreadtypes.h [__WORDSIZE=32]:
Likewise.
[__WORDSIZE=64]: Renamed __pad1 element int rwlock structire to
__shared, adjust names of other padding elements.
* sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h: Likewise.
* sysdeps/pthread/pthread.h: Adjust rwlock initializers.
* sysdeps/unix/sysv/linux/lowlevelrwlock.sym: Add PSHARED.
* sysdeps/unix/sysv/linux/powerpc/lowlevellock.h: Define
FUTEX_PRIVATE_FLAG.
* sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S: Change main
futex to use private operations if possible.
* sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedrdlock.S:
Likewise.
* sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedwrlock.S:
Likewise.
* sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_unlock.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S: Likewise.
Ulrich Drepper [Sat, 26 May 2007 22:11:42 +0000 (22:11 +0000)]
* pthreadP.h (PTHREAD_RWLOCK_PREFER_READER_P): Define.
* pthread_rwlock_rdlock.c: Use PTHREAD_RWLOCK_PREFER_READER_P.
* pthread_rwlock_timedrdlock.c: Likewise.
* pthread_rwlock_tryrdlock.c: Likewise.
Ulrich Drepper [Sat, 26 May 2007 21:47:28 +0000 (21:47 +0000)]
* sysdeps/unix/sysv/linux/x86_64/sem_trywait.S (sem_trywait): Tiny
optimization.
Ulrich Drepper [Sat, 26 May 2007 20:13:27 +0000 (20:13 +0000)]
* sysdeps/unix/sysv/linux/powerpc/libc-start.c: Include <sysdep.h>.
Ulrich Drepper [Sat, 26 May 2007 16:19:15 +0000 (16:19 +0000)]
* sysdeps/unix/sysv/linux/internaltypes.h (struct pthread_barrier):
Add private field.
* sysdeps/unix/sysv/linux/lowlevelbarrier.sym: Add PRIVATE definition.
* pthread_barrier_init.c: Set private flag if pshared and private
futexes are supported.
* sysdeps/unix/sysv/linux/i386/i486/pthread_barrier_wait.S: Use
private field in futex command setup.
* sysdeps/unix/sysv/linux/x86_64/pthread_barrier_wait.S: Likewise.
Ulrich Drepper [Sat, 26 May 2007 04:49:06 +0000 (04:49 +0000)]
* sysdeps/unix/sysv/linux/i386/i486/sem_post.S: Add private futex
support.
* sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/sem_wait.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sem_post.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sem_wait.S: Likewise.
Ulrich Drepper [Sat, 26 May 2007 01:31:40 +0000 (01:31 +0000)]
* semaphoreP.h: Declare __old_sem_init and __old_sem_wait.
* sem_init.c (__new_sem_init): Rewrite to initialize all three
fields in the structure.
(__old_sem_init): New function.
* sem_open.c: Initialize all fields of the structure.
* sem_getvalue.c: Adjust for renamed element.
* sysdeps/unix/sysv/linux/Makefile [subdir=nptl]
(gen-as-const-headers): Add structsem.sym.
* sysdeps/unix/sysv/linux/structsem.sym: New file.
* sysdeps/unix/sysv/linux/internaltypes.h: Rename struct sem to
struct new_sem. Add struct old_sem.
* sysdeps/unix/sysv/linux/sem_post.c: Wake only when there are waiters.
* sysdeps/unix/sysv/linux/i386/i486/sem_post.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sem_post.S: Likewise.
* sysdeps/unix/sysv/linux/sem_wait.c: Indicate that there are waiters.
* sysdeps/unix/sysv/linux/i386/i486/sem_wait.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sem_wait.S: Likewise.
* sysdeps/unix/sysv/linux/sem_timedwait.c: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S: Likewise.
* Makefile (tests): Add tst-sem10, tst-sem11, tst-sem12.
* tst-sem10.c: New file.
* tst-sem11.c: New file.
* tst-sem12.c: New file.
* tst-typesizes.c: Test struct new_sem and struct old_sem instead
of struct sem.
2007-05-25 Ulrich Drepper <drepper@redhat.com>
Ulrich Drepper [Sat, 26 May 2007 01:23:04 +0000 (01:23 +0000)]
Test of semaphores.
Jakub Jelinek [Fri, 25 May 2007 19:27:03 +0000 (19:27 +0000)]
* sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S (sem_timedwait):
Move __pthread_enable_asynccancel right before futex syscall.
* sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S (sem_timedwait):
Likewise.
2007-05-25 Ulrich Drepper <drepper@redhat.com>
Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S (sem_timedwait):
Move __pthread_enable_asynccancel right before futex syscall.
* sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S (sem_timedwait):
Likewise.
2007-05-24 Jakub Jelinek <jakub@redhat.com>
Ulrich Drepper [Fri, 25 May 2007 14:41:55 +0000 (14:41 +0000)]
* io/bits/fcntl2.h (__open_2): Add nonnull attribute.
(open): Fix comment typos. Don't call __open_2 if flags
is a compile time constant without O_CREAT.
(__open64_2): Add nonnull attribute.
(open64): Fix comment typos. Don't call __open64_2 if flags
is a compile time constant without O_CREAT.
(__openat_2): Add nonnull attribute, fix nonnull attribute
on redirect.
(openat): Fix comment typos. Don't call __openat_2 if flags
is a compile time constant without O_CREAT.
(__openat64_2): Add nonnull attribute, fix nonnull attribute
on redirect.
(openat64): Fix comment typos. Don't call __openat64_2 if flags
is a compile time constant without O_CREAT.
Ulrich Drepper [Fri, 25 May 2007 05:24:16 +0000 (05:24 +0000)]
* sysdeps/i386/tls.h (THREAD_SET_PRIVATE_FUTEX,
THREAD_COPY_PRIVATE_FUTEX): Define.
* sysdeps/x86_64/tls.h (THREAD_SET_PRIVATE_FUTEX,
THREAD_COPY_PRIVATE_FUTEX): Define.
* allocatestack.c (allocate_stack): Use THREAD_COPY_PRIVATE_FUTEX.
* init.c (__pthread_initialize_minimal_internal): Use
THREAD_SET_PRIVATE_FUTEX.
Ulrich Drepper [Fri, 25 May 2007 05:21:07 +0000 (05:21 +0000)]
* sysdeps/powerpc/tls.h (tcbhead_t): Add gscope_flag.
(THREAD_GSCOPE_FLAG_UNUSED, THREAD_GSCOPE_FLAG_USED,
THREAD_GSCOPE_FLAG_WAIT): Define.
(THREAD_GSCOPE_GET_FLAG, THREAD_GSCOPE_SET_FLAG,
THREAD_GSCOPE_RESET_FLAG, THREAD_GSCOPE_WAIT): Define.
* sysdeps/i386/tls.h (THREAD_GSCOPE_WAIT): Don't use
PTR_DEMANGLE.
(THREAD_GSCOPE_GET_FLAG): Define.
* sysdeps/x86_64/tls.h (THREAD_GSCOPE_GET_FLAG): Define.
* allocatestack.c (__wait_lookup_done): Use THREAD_GSCOPE_GET_FLAG
instead of ->header.gscope_flag directly.
Ulrich Drepper [Thu, 24 May 2007 23:55:28 +0000 (23:55 +0000)]
* Makerules (sysd-rules): Define PTW for ptw-* files.
* Versions: Define GLIBC_2.7 for libc.
* include/stdio.h: Declare __fortify_fail.
* debug/fortify_fail.c: New file.
* debug/Makefile (routines): Add fortify_fail.
* debug/chk_fail.c: Use __fortify_fail.
* debug/stack_chk_fail.c: Likewise.
* io/Versions: Export __open_2, __open64_2, __openat_2, and
__openat64_2 for GLIBC_2.7.
* io/fcntl.h: When compiling with fortification, include bits/fcntl2.h.
* io/open.c: Define *_2 variant of function which checks for O_CREAT
and fails if necessary.
* io/open64.c: Likewise.
* io/openat.c: Likewise.
* io/openat64.c: Likewise.
* sysdeps/unix/sysv/linux/open64.c: Likewise.
* sysdeps/unix/sysv/linux/openat.c: Likewise.
* sysdeps/unix/sysv/linux/openat64.c: Likewise.
* io/bits/fcntl2.h: New file.
* include/fcntl.h: Declare __open_2, __open64_2, __openat_2, and
__openat64_2.
* include/bits/fcntl2.h: New file.
* sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
Add open_2.
* sysdeps/unix/sysv/linux/open_2.c: New file.
Ulrich Drepper [Wed, 23 May 2007 20:51:45 +0000 (20:51 +0000)]
* init.c (__pthread_initialize_minimal_internal): Check whether
private futexes are available.
* allocatestack.c (allocate_stack): Copy private_futex field from
current thread into the new stack.
* sysdeps/unix/sysv/linux/x86_64/libc-lowlevellock.S: Use private
futexes if they are available.
* sysdeps/unix/sysv/linux/i386/i486/libc-lowlevellock.S: Likewise
* sysdeps/unix/sysv/linux/x86_64/lowlevellock.S: Adjust so that change
in libc-lowlevellock.S allow using private futexes.
* sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/lowlevellock.h: Define
FUTEX_PRIVATE_FLAG.
* sysdeps/unix/sysv/linux/i386/lowlevellock.h: Likewise.
* sysdeps/unix/sysv/linux/x86_64/pthread_once.S: Use private futexes
if they are available.
* sysdeps/unix/sysv/linux/i386/pthread_once.S: Likewise.
* sysdeps/x86_64/tcb-offsets.sym: Add PRIVATE_FUTEX.
* sysdeps/i386/tcb-offsets.sym: Likewise.
* sysdeps/x86_64/tls.h (tcbhead_t): Add private_futex field.
* sysdeps/i386/tls.h (tcbhead_t): Likewise.
Ulrich Drepper [Mon, 21 May 2007 22:38:06 +0000 (22:38 +0000)]
* sysdeps/x86_64/cacheinfo.c (init_cacheinfo): Pass correct value
as second parameter to handle_intel.
Ulrich Drepper [Mon, 21 May 2007 22:29:51 +0000 (22:29 +0000)]
(pthread_functions): Don't add .ptr_wait_lookup_done here. (__pthread_initialize_minimal_internal): Initialize _dl_wait_lookup_done pointer in _rtld_global directly.
Jakub Jelinek [Mon, 21 May 2007 22:12:40 +0000 (22:12 +0000)]
* tst-robust9.c (do_test): Don't fail if ENABLE_PI and
pthread_mutex_init failed with ENOTSUP.
2007-05-21 Jakub Jelinek <jakub@redhat.com>
* tst-robust9.c (do_test): Don't fail if ENABLE_PI and
pthread_mutex_init failed with ENOTSUP.
Ulrich Drepper [Mon, 21 May 2007 21:23:18 +0000 (21:23 +0000)]
* nscd/aicache.c (addhstaiX): If reported TTL is zero don't cache
the entry.
Ulrich Drepper [Mon, 21 May 2007 19:21:48 +0000 (19:21 +0000)]
* sysdeps/unix/sysv/linux/x86_64/sysconf.c: Move cache information
handling to ...
* sysdeps/x86_64/cacheinfo.c: ... here. New file.
* sysdeps/x86_64/Makefile [subdir=string] (sysdep_routines): Add
cacheinfo.
* sysdeps/x86_64/memcpy.S: Complete rewrite.
* sysdeps/x86_64/mempcpy.S: Adjust appropriately.
Patch by Evandro Menezes <evandro.menezes@amd.com>.
* sysdeps/unix/sysv/linux/i386/epoll_pwait.S: New file.
Ulrich Drepper [Mon, 21 May 2007 18:25:03 +0000 (18:25 +0000)]
[BZ #4525]
* sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add epoll_pwait.
* sysdeps/unix/sysv/linux/epoll_pwait.c: New file.
* sysdeps/unix/sysv/linux/syscalls.list (epoll_pwait): Remove.
* sysdeps/unix/sysv/linux/x86_64/sys/epoll.h (epoll_pwait): Declare.
Ulrich Drepper [Mon, 21 May 2007 18:23:50 +0000 (18:23 +0000)]
[BZ #4514]
* stdio-common/vfprintf.c (vfprintf): Don't shadow workstart variable,
reinitialize workend at the start of each do_positional format spec
loop, free workstart before do_positional loops.
(printf_unknown): Fix size of work_buffer.
* stdio-common/tst-sprintf.c (main): Add 3 new testcases.
Ulrich Drepper [Mon, 21 May 2007 16:13:18 +0000 (16:13 +0000)]
* malloc/hooks.c (MALLOC_STATE_VERSION): Bump.
(public_sET_STATe): If ms->version < 3, put all chunks into
unsorted chunks and clear {fd,bk}_nextsize fields of largebin
chunks.
* malloc/malloc.c [MALLOC_DEBUG]: Revert 2007-05-13 changes.
* malloc/hooks.c: Likewise.
* malloc/arena.c: Likewise.
* malloc/malloc.c (do_check_malloc_state): Don't assert
n_mmaps is not greater than n_mmaps_max. This removes the need
for the previous change.
* malloc/Makefile (CFLAGS-malloc.c): Revert accidental
2007-05-07 commit.
Ulrich Drepper [Sat, 19 May 2007 19:08:24 +0000 (19:08 +0000)]
* sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_PRIVATE_FUTEX):
Define for kernel >= 2.6.22.
2007-05-18 Ulrich Drepper <drepper@redhat.com>
Ulrich Drepper [Sat, 19 May 2007 19:07:59 +0000 (19:07 +0000)]
(__ASSUME_PRIVATE_FUTEX): Define for kernel >= 2.6.22.
Roland McGrath [Sat, 19 May 2007 08:21:27 +0000 (08:21 +0000)]
Commit missing test case wrapper file.
Ulrich Drepper [Sat, 19 May 2007 07:08:23 +0000 (07:08 +0000)]
* elf/dl-close.c (_dl_close_worker): When removing object from
global scope, wait for all lookups to finish afterwards.
* elf/dl-open.c (add_to_global): When global scope array must
grow, allocate a new one and free old array only after all
lookups finish.
* elf/dl-runtime.c (_dl_fixup): Protect using global scope.
(_dl_lookup_symbol_x): Likewise.
* elf/dl-support.c: Define _dl_wait_lookup_done.
* sysdeps/generic/ldsodefs.h (struct rtld_global): Add
_dl_wait_lookup_done.
Ulrich Drepper [Sat, 19 May 2007 04:42:52 +0000 (04:42 +0000)]
* malloc/malloc.c (do_check_chunk): Correct check for mmaped block
not overlapping with arena.
Ulrich Drepper [Sat, 19 May 2007 04:26:03 +0000 (04:26 +0000)]
* malloc/mcheck.c (reallochook): If size==0, free the block.
Ulrich Drepper [Sat, 19 May 2007 03:30:44 +0000 (03:30 +0000)]
* rt/tst-shm.c: Use fstat64 instead of fstat.
Ulrich Drepper [Fri, 18 May 2007 19:05:37 +0000 (19:05 +0000)]
* sysdeps/unix/sysv/linux/i386/sync_file_range.S: Fix case where
__NR_sync_file_range is not defined.
Ulrich Drepper [Fri, 18 May 2007 00:55:10 +0000 (00:55 +0000)]
[BZ #4512]
* pthread_mutex_lock.c: Preserve FUTEX_WAITERS bit when dead owner
is detected.
* pthread_mutex_timedlock.c: Likewise.
* pthread_mutex_trylock.c: Likewise.
Patch in part by Atsushi Nemoto <anemo@mba.ocn.ne.jp>.
* Makefile (tests): Add tst-robust9 and tst-robustpi9.
* tst-robust9.c: New file.
* tst-robustpi9.c: New file.
Ulrich Drepper [Thu, 17 May 2007 18:39:55 +0000 (18:39 +0000)]
Dummy files to prevent stub versions from being used.
* sysdeps/x86_64/fpu/k_cosl.c: New file.
* sysdeps/x86_64/fpu/k_rem_pio2l.c: New file.
* sysdeps/x86_64/fpu/k_sinl.c: New file.
* sysdeps/x86_64/fpu/k_tanl.c: New file.
Ulrich Drepper [Thu, 17 May 2007 17:01:03 +0000 (17:01 +0000)]
* version.h (VERSION): Set to 2.6.90.
* version.h (VERSION): Define to 2.6.
* include/features.h (__GLIBC_MINOR__): Define to 6.