2001-08-24 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/sh/dl-machine.h (elf_machine_rela): Fix typo.
* elf/do-rel.h (elf_dynamic_do_rel): RELATIVE relocations comes
first if RELCOUNT is set.
sysdeps/mach version. Implement counting ("recursive") mutexes
on top of cthreads mutexes.
* sysdeps/mach/hurd/bits/stdio-lock.h: File removed; generic now works.
* sysdeps/generic/bits/stdio-lock.h (_IO_lock_initializer): Define to
_LIBC_LOCK_RECURSIVE_INITIALIZER if defined, else do an #error.
(__libc_cleanup_region_start, __libc_cleanup_region_end,
__libc_clean_end): Define these to call the cleanup function after
normal exit when they're supposed to.
* sysdeps/mach/bits/libc-lock.h (__libc_cleanup_region_start):
Take new first arg DOIT, a boolean saying whether to really install
any cleanup handler.
(__libc_cleanup_region_end): Do nothing if start's DOIT arg was zero.
(__libc_cleanup_end): Likewise.
* stdio-common/vfscanf.c (LOCK_STREAM): Pass new arg.
* stdio-common/vfprintf.c (buffered_vfprintf, vfprintf): Likewise.
* sysdeps/mach/hurd/bits/stdio-lock.h (_IO_cleanup_region_start):
Likewise.
* misc/syslog.c (vsyslog, openlog, closelog): Likewise.
* sysdeps/generic/bits/stdio-lock.h
(_IO_cleanup_region_start, _IO_cleanup_region_start_noarg): Likewise.
* sysdeps/generic/bits/stdio-lock.h (_IO_lock_initializer): Define to
_LIBC_LOCK_RECURSIVE_INITIALIZER if defined, else do an #error.
(__libc_cleanup_region_start, __libc_cleanup_region_end,
__libc_clean_end): Define these to call the cleanup function after
normal exit when they're supposed to.
* sysdeps/mach/bits/libc-lock.h (__libc_cleanup_region_start):
Take new first arg DOIT, a boolean saying whether to really install
any cleanup handler.
(__libc_cleanup_region_end): Do nothing if start's DOIT arg was zero.
(__libc_cleanup_end): Likewise.
* stdio-common/vfscanf.c (LOCK_STREAM): Pass new arg.
* stdio-common/vfprintf.c (buffered_vfprintf, vfprintf): Likewise.
* sysdeps/mach/hurd/bits/stdio-lock.h (_IO_cleanup_region_start):
Likewise.
* misc/syslog.c (vsyslog, openlog, closelog): Likewise.
* sysdeps/generic/bits/stdio-lock.h
(_IO_cleanup_region_start, _IO_cleanup_region_start_noarg): Likewise.
__libc_lock_define_recursive.
* elf/dl-open.c: Don't declare it here any more.
* elf/dl-close.c: Likewise.
* elf/dl-lookup.c: Likewise.
* elf/dl-iteratephdr.c: Likewise.
* elf/dl-lookup.c (add_dependency): Use __libc_lock_lock_recursive and
__libc_lock_unlock_recursive.
* elf/dl-close.c (_dl_close): Likewise
* elf/dl-iteratephdr.c (__dl_iterate_phdr): Likewise
* elf/dl-open.c (_dl_open): Likewise
* sysdeps/generic/bits/libc-lock.h
(__libc_lock_define_recursive): New macro.
* sysdeps/generic/bits/stdio-lock.h (_IO_lock_t): Use it.
(_IO_lock_lock): Use __libc_lock_lock_recursive.
(_IO_lock_unlock): Use __libc_lock_unlock_recursive.
* sysdeps/generic/bits/poll.h (POLLWRBAND): New alias for POLLOUT.
(POLLRDNORM, POLLRDBAND, POLLWRNORM, POLLWRBAND): Make these
definitions conditional on [__USE_XOPEN].
* sysdeps/mach/hurd/bits/fcntl.h (O_ASYNC, O_FSYNC, O_SYNC): Define
these unconditionally, not only use [__USE_BSD], so as to match
the sysdeps/unix/sysv/linux files.
* sysdeps/generic/bits/sigaction.h (struct sigaction): Fix up
conditionalization of sa_handler/sa_sigaction member types to
match the sysdeps/unix/sysv/linux file.
* sysdeps/generic/dl-environ.c: Include <stdlib.h> and <unistd.h>,
and don't declare unsetenv or _environ directly.
(unsetenv): Return int, not void. Use __environ instead of _environ.
2001-08-01 Mark Kettenis <kettenis@gnu.org>
* sysdeps/unix/bsd/bsd4.4/Makefile: New file.
* sysdeps/unix/bsd/bsd4.4/Versions: New file.
* sysdeps/unix/bsd/bsd4.4/cmsg_nxthdr.c: New file.
* sysdeps/unix/bsd/bsd4.4/bits/socket.h (__cmsg_nxthdr): Correct
test for cmsg struct size.
as a macro, not an extern inline function.
* hurd/Versions (GLIBC_2.2.5): New set, define __hurd_fail here.
* Versions.def (libc): Add GLIBC_2.2.5 set.
* hurd/hurd.h (_HURD_H_EXTERN_INLINE): New macro.
(__hurd_fail): Use that instead of _EXTERN_INLINE in decl.
2001-08-20 Roland McGrath <roland@frob.com>
* hurd/hurdlookup.c (__hurd_file_name_lookup): Fail with ENOENT for "".
(__hurd_file_name_split, __hurd_directory_name_split): Likewise.
2001-08-20 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/unix/sysv/linux/s390/s390-32/sys/ucontext.h: Revert the
change of the gregset_t type.
* sysdeps/unix/sysv/linux/s390/s390-64/sys/ucontext.h: Likewise.
2001-08-20 kaz Kojima <kkojima@rr.iij4u.or.jp>
* sysdeps/unix/sysv/linux/sh/sysdep.S: Align errno.
* posix/regex.c (truncate_wchar): Use wcrtomb not wctomb.
2001-08-18 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/hurd/i386/init-first.c (init): Initialize __environ
before calling the cthreads initialization code.
* time/time.h (struct timespec): Use __time_t for tv_sec element.
* sysdeps/generic/inttypes.h: Define __wchar_t. Use it instead of
wchar_t for function declarations and defintions.
* misc/sys/select.h: Define __need_time_t before including <time.h>.
Define suseconds_t if it hasn't happened yet.
* iconv/gconv.h: Define __need_wchar_t before including <stddef.h>.
* conform/data/sys/uio.h-data: Allow UIO_MAXIOV to be defined.
* sysdeps/generic/stdint.h: Don't get definition of wchar_t from
<stddef.h>.
* conform/data/stddef.h-data: Remove wint_t.
2001-08-14 Tom Rix <trix@redhat.com>
* iconv/gconv_cache.c (find_module): Add #ifndef STATIC_GCONV.
* iconv/Makefile: Fix gconv_cache.c CFLAGS.
2001-08-13 Tom Rix <trix@redhat.com>
* sysdeps/unix/sysv/aix/Makefile: Add rule to import kernel symbols.
* sysdeps/unix/sysv/aix/bits/types.h: Fix type of __id_t, __useconds_t
and __intptr_t.
2001-08-15 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/unix/sysv/linux/s390/s390-32/getcontext.S (__getcontext):
Store the access registers to the ucontext structure.
* sysdeps/unix/sysv/linux/s390/s390-64/getcontext.S (__getcontext):
Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/setcontext.S (__setcontext):
Load the access registers from the ucontext structure.
* sysdeps/unix/sysv/linux/s390/s390-64/setcontext.S (__setcontext):
Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/ucontext_i.h: Adjust the SC_xxx
offsets to the new ucontext layout.
* sysdeps/unix/sysv/linux/s390/s390-64/ucontext_i.h: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/sys/ucontext.h: Fix the layout
of the ucontext structure.
* sysdeps/unix/sysv/linux/s390/s390-64/sys/ucontext.h: Likewise.
2001-08-11 Ulrich Drepper <drepper@redhat.com>
* malloc/malloc.c (ptmalloc_init): Don't call getenv five times.
Instead use new function next_env_entry which iterates over the
environment once.
* sysdeps/arm/dl-machine.h (elf_machine_runtime_setup): Only set
_dl_profile_map for the right object.
* elf/dl-reloc.c (_dl_relocate_object): Allocate l_reloc_result
only if consider_profiling is != 0, not if _dl_profile != NULL.
* sysdeps/generic/dl-environ.c (_dl_next_ld_env_entry): Optimize a bit.
Now returns pointer to first character set "LD_".
* elf/rtld.c (process_envvars): Adjust for change above.
* sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Likewise.
* sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS):
Likewise.
2001-08-10 Wolfram Gloger <wg@malloc.de>
* malloc/malloc.c (grow_heap): Use mmap() rather than mprotect()
to allocate new memory, for better performance with Linux-2.4.x.
2001-08-07 Ulrich Drepper <drepper@redhat.com>
* sysdeps/ia64/memusage.h (GETTIME): Define using hp-timing.h
funcationality.
* sysdeps/ia64/hp-timing.h (HP_TIMING_NOW): Fix comment.
2001-08-07 Jakub Jelinek <jakub@redhat.com>
* malloc/memusage.c (initialized): New variable.
(init): If not yet initialized, call me().
(me): Do all dlsym calls here.
(malloc, realloc, calloc, free): If not yet initialized,
call me(). If in the middle of initializing, return NULL or
do nothing.
2001-08-07 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/seekdir.c (seekdir): Set dirp->filepos.
* dirent/tst-seekdir.c (main): Check whether telldir right after
seekdir returns 2nd argument given to seekdir.
2001-08-07 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
* dlfcn/Makefile (tststatic-ENV): Add $(common-objpfx) to
LD_LIBRARY_PATH.
* sysdeps/unix/sysv/linux/i386/getcontext.S: Don't touch the %gs
register so that contexts can be used in different threads.
* sysdeps/unix/sysv/linux/i386/setcontext.S: Likewise.
* sysdeps/unix/sysv/linux/i386/swapcontext.S: Likewise.
2001-07-27 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/s390/s390-32/ucontext_i.h (SC_GPRS): Fix
value following change from 2001-05-30.
* sysdeps/s390/s390-64/bits/setjmp.h (_JMPBUF_UNWINDS): Follow
rename change from 2001-07-12 for __jmp_buf.
Patches by Ulrich Weigand <Ulrich.Weigand@de.ibm.com>.