2003-07-04 Jakub Jelinek <jakub@redhat.com>
* sysdeps/s390/s390-32/elf/start.S: Emit position independent code
if PIC.
* sysdeps/s390/s390-64/elf/start.S: Likewise.
2003-07-07 Jakub Jelinek <jakub@redhat.com>
* sysdeps/powerpc/powerpc64/elf/start.S: Put L(start_address)
into .data.rel.ro.local section if PIC to avoid DT_TEXTREL.
* sysdeps/posix/getaddrinfo.c (gaih_inet): Set no_inet6_date alse
if only PF_INET address is needed.
* nss/getXXbyYY_r.c: Make sure we always return a nonzero value in
case of an error.
* nscd/cache.c (cache_search): Keep track of how many chain links
we searched and update table statistics.
(cache_add): Keep track of how many values are in the table.
(prune_cache): Likewise. Keep track of locking success.
Print messages about removed entries in separate pass.
* nscd/connections.c (handle_request): Don't print debug message here.
The caller will do it. Keep track of locking success.
(nscd_run): Print debug message. Also print PID of the client process.
* nscd/nscd.c (start_time): New variable.
(main): Remember start time.
* nscd/nscd.h: Declare start_time.
(struct database): Add more members for new statistics.
* nscd/nscd_stat.c: Add support for sending, receiving, and printing
of new statistics.
* pthread.c (__pthread_initialize_manager): Subtract
TLS_PRE_TCB_SIZE bytes from tcbp to get to descr.
* manager.c (pthread_handle_create): Subtract or add TLS_PRE_TCB_SIZE
instead of sizeof (pthread_descr).
(pthread_free): Add TLS_PRE_TCB_SIZE instead of sizeof (pthread_descr).
* sysdeps/powerpc/tls.h (TLS_INIT_TCB_SIZE, TLS_TCB_SIZE): Define to 0.
* Makefile ($(objpfx)multidir.mk): New target, generated makefile that
sets variable `multidir'; include that.
(generated): Add it.
($(objpfx)$(multidir)/crti.o): New target.
[$(multidir) != .] (generated-dirs, extra-objs, omit-deps): Add it.
2003-04-03 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/getsysstats.c (get_proc_path): Reverse test
for atomic_compare_and_exchange_bool_acq failure.
constraint to permit non-constant BIT argument.
(atomic_bit_test_set): Likewise.
* sysdeps/x86_64/bits/atomic.h (atomic_bit_test_set): Likewise.
(atomic_bit_set): Likewise. Use 1UL in case that BIT might be >= 32.
For quadword case, use "i" constraint if __builtin_constant_p and < 32
or "r" constraint otherwise.
* configure.in: Move AC_PROG_CC and other program-finding before all
the version checks.
* configure: Regenerated.
Don't use weak_extern for dl_rtld_map. Instead check only if [SHARED].
(elf_machine_rela): Clean up.
* sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Clean up.
PowerPC TLS support contributed by Paul Mackerras <paulus@samba.org>.
* sysdeps/powerpc/powerpc32/elf/configure.in: New file.
* sysdeps/powerpc/powerpc32/elf/configure: New generated file.
* elf/tls-macros.h [__powerpc__ && !__powerpc64__]
(TLS_LE, TLS_IE, TLS_LD, TLS_GD): Define them.
* sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Support
new relocs for TLS.
* sysdeps/powerpc/dl-tls.h (TLS_TP_OFFSET, TLS_DTV_OFFSET): Move these
macros out of [SHARED].
(TLS_TPREL_VALUE, TLS_DTPREL_VALUE): New macros.
* elf/elf.h: Define R_PPC_* relocs for TLS support.
Clean up R_PPC64_* macro definition comments.
2003-02-25 Roland McGrath <roland@redhat.com>
* sysdeps/powerpc/powerpc64/dl-machine.h: Support new TLS relocs.
* sysdeps/powerpc/powerpc64/dl-tls.h: New file.
2003-02-10 Ulrich Drepper <drepper@redhat.com>
* elf/Makefile (check-textrel-CFLAGS): Pass _XOPEN_SOURCE and
_BSD_SOURCE to compiler.
* elf/check-textrel.c (SWAP): Add parenthesis to avoid warnings.
Patches by Alan Modra.
temporary, align stack correctly, fix parameter for CDISABLE.
2003-02-09 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/x86_64/sysdep-cancel.h:
Rework: %r9 is destroyed by functions so don't use it as
temporary, align stack correctly, fix parameter for CDISABLE.
2003-02-07 Jim Meyering <jim@meyering.net>
* io/ftw.c: Add autoconf-recommended block of alloca-related code.
Include autoconf-recommended block of dirent/NAMELEN-related
definitions and includes. Use NAMELEN throughout, rather than
_D_EXACT_NAMLEN.
[_LIBC]: Define NAMELEN to _D_EXACT_NAMLEN.
[!_LIBC] (__getcwd): Define to xgetcwd and declare xgetcwd.
(stpcpy): Declare, if necessary.
(mempcpy): Define, if necessary.
[!_LIBC] (__stpcpy, __mempcpy): Define.
[!_LIBC] (LXSTAT, XSTAT): Define.
(lstat) [!LIBC && !LSTAT_FOLLOWS_SLASHED_SYMLINK]: Define to rpl_lstat.
(find_object): Don't use c99-style struct initializer.
Tweak wording in a couple comments.
2003-02-07 Jakub Jelinek <jakub@redhat.com>
* resolv/res_libc.c (_res): Ensure _res is not common symbol,
so that it can have aliases.
* inet/herrno.c (h_errno): Put it into .bss not .data section.
Patch by Lance Larsh <Lance.Larsh@oracle.com>.
2003-01-17 Richard Henderson <rth@redhat.com>
* sysdeps/alpha/dl-machine.h (elf_machine_type_class): Add TLS
relocs for class PLT.
* sysdeps/alpha/libc-tls.c: New file.
* sysdeps/unix/alpha/sysdep.S (EPILOGUE, GPSAVEREG): New.
(LOADGP) [!PIC]: Rewrite to preserve caller's gp.
2003-01-17 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init): Use
__libc_lock_{,un}lock_recursive instead of __libc_lock_{,un}lock
on _dl_static_lock.
2003-01-14 Guido Guenther <agx@sigxcpu.org>
* sysdeps/unix/sysv/linux/mips/sysdep.h (INTERNAL_SYSCALL,
INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
INTERNAL_SYSCALL_ERROR_P, INLINE_SYSCALL): Define.
2003-01-14 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
(INTERNAL_SYSCALL): Make use of ERR parameter.
(INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
(INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S: New file.
Patch by Denis Zaitsev <zzz@cd-club.ru>.
that %eax is modified. Reported by Denis Zaitsev <zzz@cd-club.ru>.
2002-01-12 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
* sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
Define for powerpc.
* sysdeps/unix/sysv/linux/powerpc/syscall.S: Take register alignment
into account.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
(INTERNAL_SYSCALL): Make use of ERR parameter.
(INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
(INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: New file.
2002-01-09 Richard Henderson <rth@redhat.com>
* sysdeps/alpha/dl-machine.h (elf_machine_rela): Compute
DTPREL64 and TPREL64 without loadbase applied.
2002-01-09 Richard Henderson <rth@redhat.com>
* sysdeps/unix/alpha/sysdep.S: Use correct definition of errno
for NOT_IN_libc.
* sysdeps/unix/sysv/linux/alpha/sysdep.h: Move inline syscall bits...
* sysdeps/unix/alpha/sysdep.h: ... here.
(PSEUDO_LOADGP): Remove.
(PSEUDO_PROLOGUE): Load GP in non-pic case.
(SYSCALL_ERROR_LABEL): New.
(PSEUDO): Use it in error branch.
(PSEUDO_END): Add $syscall_error label.
2002-01-09 Richard Henderson <rth@redhat.com>
* sysdeps/unix/sysv/linux/alpha/sysdep-cancel.h: Assume only
ret follows pseudo, and thus avoid branch-to-branch in cancel
case. Use SYSCALL_ERROR_LABEL.