Ulrich Drepper
b52bbc1bdf
USE_TLS support is now default.
...
* tls.make.c: USE_TLS support is now default.
* csu/Versions: Likewise.
* csu/libc-start.c: Likewise.
* csu/libc-tls.c: Likewise.
* csu/version.c: Likewise.
* dlfcn/dlinfo.c: Likewise.
* elf/dl-addr.c: Likewise.
* elf/dl-cache.c: Likewise.
* elf/dl-close.c: Likewise.
* elf/dl-iteratephdr.c: Likewise.
* elf/dl-load.c: Likewise.
* elf/dl-lookup.c: Likewise.
* elf/dl-object.c: Likewise.
* elf/dl-open.c: Likewise.
* elf/dl-reloc.c: Likewise.
* elf/dl-support.c: Likewise.
* elf/dl-sym.c: Likewise.
* elf/dl-sysdep.c: Likewise.
* elf/dl-tls.c: Likewise.
* elf/ldconfig.c: Likewise.
* elf/rtld.c: Likewise.
* elf/tst-tls-dlinfo.c: Likewise.
* elf/tst-tls1.c: Likewise.
* elf/tst-tls10.h: Likewise.
* elf/tst-tls14.c: Likewise.
* elf/tst-tls2.c: Likewise.
* elf/tst-tls3.c: Likewise.
* elf/tst-tls4.c: Likewise.
* elf/tst-tls5.c: Likewise.
* elf/tst-tls6.c: Likewise.
* elf/tst-tls7.c: Likewise.
* elf/tst-tls8.c: Likewise.
* elf/tst-tls9.c: Likewise.
* elf/tst-tlsmod1.c: Likewise.
* elf/tst-tlsmod13.c: Likewise.
* elf/tst-tlsmod13a.c: Likewise.
* elf/tst-tlsmod14a.c: Likewise.
* elf/tst-tlsmod2.c: Likewise.
* elf/tst-tlsmod3.c: Likewise.
* elf/tst-tlsmod4.c: Likewise.
* elf/tst-tlsmod5.c: Likewise.
* elf/tst-tlsmod6.c: Likewise.
* include/errno.h: Likewise.
* include/link.h: Likewise.
* include/tls.h: Likewise.
* locale/global-locale.c: Likewise.
* locale/localeinfo.h: Likewise.
* malloc/arena.c: Likewise.
* malloc/hooks.c: Likewise.
* malloc/malloc.c: Likewise.
* resolv/Versions: Likewise.
* sysdeps/alpha/dl-machine.h: Likewise.
* sysdeps/alpha/libc-tls.c: Likewise.
* sysdeps/generic/ldsodefs.h: Likewise.
* sysdeps/generic/tls.h: Likewise.
* sysdeps/i386/dl-machine.h: Likewise.
* sysdeps/ia64/dl-machine.h: Likewise.
* sysdeps/ia64/libc-tls.c: Likewise.
* sysdeps/mach/hurd/fork.c: Likewise.
* sysdeps/mach/hurd/i386/tls.h: Likewise.
* sysdeps/powerpc/powerpc32/dl-machine.c: Likwise.
* sysdeps/powerpc/powerpc32/dl-machine.h: Likewise.
* sysdeps/powerpc/powerpc64/dl-machine.h: Likewise.
* sysdeps/s390/libc-tls.c: 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/x86_64/dl-machine.h: Likewise.
2006-10-27 23:11:47 +00:00
Roland McGrath
de59a29179
* sysdeps/alpha/jmpbuf-unwind.h: New file, moved from nptl/.
...
* sysdeps/i386/jmpbuf-unwind.h: New file, moved from nptl/.
* sysdeps/mips/jmpbuf-unwind.h: New file, moved from nptl/.
* sysdeps/powerpc/jmpbuf-unwind.h: New file, moved from nptl/.
* sysdeps/s390/jmpbuf-unwind.h: New file, moved from nptl/.
* sysdeps/sh/jmpbuf-unwind.h: New file, moved from nptl/.
* sysdeps/sparc/sparc32/jmpbuf-unwind.h: New file, moved from nptl/.
* sysdeps/sparc/sparc64/jmpbuf-unwind.h: New file, moved from nptl/.
* sysdeps/x86_64/jmpbuf-unwind.h: New file, moved from nptl/.
2006-01-10 08:23:51 +00:00
Roland McGrath
db169ed561
* sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
...
(PTR_MANGLE): Fix cast.
* sysdeps/alpha/bits/setjmp.h (_JMPBUF_UNWINDS): Take third argument
DEMANGLE, and pass SP value through it.
* sysdeps/hppa/bits/setjmp.h (_JMPBUF_UNWINDS): Likewise.
* sysdeps/i386/bits/setjmp.h (_JMPBUF_UNWINDS): Likewise.
* sysdeps/m68k/bits/setjmp.h (_JMPBUF_UNWINDS): Likewise.
* sysdeps/mips/bits/setjmp.h (_JMPBUF_UNWINDS): Likewise.
* sysdeps/powerpc/bits/setjmp.h (_JMPBUF_UNWINDS): Likewise.
* sysdeps/s390/bits/setjmp.h (_JMPBUF_UNWINDS): Likewise.
* sysdeps/sh/bits/setjmp.h (_JMPBUF_UNWINDS): Likewise.
* sysdeps/sparc/sparc32/bits/setjmp.h (_JMPBUF_UNWINDS): Likewise.
* sysdeps/unix/sysv/linux/ia64/bits/setjmp.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/setjmp.h: Likewise.
* sysdeps/x86_64/bits/setjmp.h (_JMPBUF_UNWINDS): Likewise.
* hurd/sigunwind.c (_hurdsig_longjmp_from_handler): Pass inline
demangler function to _JMPBUF_UNWINDS.
* sysdeps/mach/hurd/jmp-unwind.c (demangle_ptr): New function.
(_longjmp_unwind): Pass it to _JMPBUF_UNWINDS.
2005-12-28 05:42:30 +00:00
Ulrich Drepper
827b70873b
* elf/Versions [GLIBC_PRIVATE]: Export __pointer_chk_guard if defined.
...
* elf/rtld.c: Define __pointer_chk_guard_local and if necessary
__pointer_chk_guard.
(_rtld_global_ro): Initialize _dl_pointer_guard.
(dl_main): Initialize __pointer_chk_guard_local and either
__pointer_chk_guard or TLS value if necessary.
(process_envvars): Recognize and handle LD_POINTER_GUARD.
* sysdeps/generic/ldsodefs.h (rtld_global_ro): Add _dl_pointer_guard.
* sysdeps/i386/__longjmp.S: Use PTR_DEMANGLE for PC if defined.
* sysdeps/x86_64/__longjmp.S: Likewise.
* sysdeps/i386/bsd-_setjmp.S: Use PTR_MANGLE for PC if defined.
* sysdeps/i386/bsd-_setjmp.S: Likewise.
* sysdeps/i386/setjmp.S: Likewise.
[IS_IN_rtld]: Avoid call to __sigjmp_save.
* sysdeps/i386/setjmp.S: Likewise.
* sysdeps/unix/sysv/linux/i386/sysdep.h: Define PTR_MANGLE and
PTR_DEMANGLE.
* sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
* sysdeps/i386/elf/setjmp.S: Removed.
* sysdeps/i386/elf/bsd-setjmp.S: Removed.
2005-12-18 06:58:22 +00:00
Ulrich Drepper
35f1e82763
* Versions.def (ld): Add GLIBC_2.4.
...
* configure.in: Add --enable-stackguard-randomization option.
(ENABLE_STACKGUARD_RANDOMIZE): New define.
* config.h.in (ENABLE_STACKGUARD_RANDOMIZE): Add.
* sysdeps/unix/sysv/linux/dl-osinfo.h: Include stdint.h.
(_dl_setup_stack_chk_guard): New inline function.
* sysdeps/generic/dl-osinfo.h: Include stdint.h.
(_dl_setup_stack_chk_guard): New inline function.
* elf/rtld.c (__stack_chk_guard): New variable.
(dl_main): Remove all traces of TLS_INIT_TP_EXPENSIVE.
Set __stack_chk_guard to _dl_setup_stack_chk_guard (),
use THREAD_SET_STACK_GUARD if defined.
* elf/Versions (ld): Export __stack_chk_guard@@GLIBC_2.4.
* sysdeps/generic/libc-start.c (__stack_chk_guard): New variable.
(__libc_start_main): Set __stack_chk_guard to
_dl_setup_stack_chk_guard (), use THREAD_SET_STACK_GUARD if defined.
* sysdeps/generic/libc-tls.c (__libc_setup_tls): Remove all
traces of TLS_INIT_TP_EXPENSIVE.
* debug/Versions (libc): Export __stack_chk_fail@@GLIBC_2.4.
* debug/Makefile (routines): Add stack_chk_fail.
(static-only-routines): Add stack_chk_fail_local.
* debug/stack_chk_fail_local.c: New file.
* debug/stack_chk_fail.c: New file.
* elf/Makefile: Add rules to build and run tst-stackguard1{,-static}
tests.
* elf/tst-stackguard1.c: New file.
* elf/tst-stackguard1-static.c: New file.
* elf/stackguard-macros.h: New file.
2005-06-26 18:14:26 +00:00
Ulrich Drepper
f7d78e18aa
* sysdeps/powerpc/powerpc32/fpu/s_ceil.S (TWO52.0): Delete.
...
* sysdeps/powerpc/powerpc32/fpu/s_ceilf.S (TWO23.0): Delete.
* sysdeps/powerpc/powerpc32/fpu/s_floor.S (TWO52.0): Delete.
* sysdeps/powerpc/powerpc32/fpu/s_floorf.S (TWO23.0): Delete.
* sysdeps/powerpc/powerpc32/fpu/s_lround.S: Comment typo.
(NEGZERO.0, POINTFIVE.0): Delete.
* sysdeps/powerpc/powerpc32/fpu/s_rint.S (TWO52.0): Delete.
* sysdeps/powerpc/powerpc32/fpu/s_rintf.S (TWO23.0): Delete.
* sysdeps/powerpc/powerpc32/fpu/s_round.S (__round): Code in .text.
(TWO52.0, POINTFIVE.0): Delete.
* sysdeps/powerpc/powerpc32/fpu/s_roundf.S (__roundf): Code in .text.
(TWO23.0, POINTFIVE.0): Delete.
* sysdeps/powerpc/powerpc32/fpu/s_trunc.S (__trunc): Code in .text.
(TWO52.0): Delete.
* sysdeps/powerpc/powerpc32/fpu/s_truncf.S (__truncf): Code in .text.
(TWO23.0): Delete.
* sysdeps/powerpc/powerpc32/memset.S (memset): Formatting.
2005-05-21 19:01:22 +00:00
Ulrich Drepper
8cf3e47119
Fix typo.
2005-04-26 16:11:10 +00:00
Ulrich Drepper
9dcafc5597
* csu/elf-init.c (__libc_csu_fini): Don't do anything here.
...
* sysdeps/generic/libc-start.c: Don't register program destructor here.
* dlfcn/Makefile: Add rules to build dlfcn.c.
(LDFLAGS-dl.so): Removed.
* dlfcn/dlclose.c: _dl_close is now in ld.so, use function pointer
table.
* dlfcn/dlmopen.c: Likewise for _dl_open.
* dlfcn/dlopen.c: Likewise.
* dlfcn/dlopenold.c: Likewise.
* elf/dl-libc.c: Likewise for _dl_open and _dl_close.
* elf/Makefile (routines): Remove dl-open and dl-close.
(dl-routines): Add dl-open, dl-close, and dl-trampoline.
Add rules to build and run tst-audit1.
* elf/tst-audit1.c: New file.
* elf/tst-auditmod1.c: New file.
* elf/Versions [libc]: Remove _dl_open and _dl_close.
* elf/dl-close.c: Change for use inside ld.so instead of libc.so.
* elf/dl-open.c: Likewise.
* elf/dl-debug.c (_dl_debug_initialize): Allow reinitialization,
signaled by nonzero parameter.
* elf/dl-init.c: Fix use of r_state.
* elf/dl-load.c: Likewise.
* elf/dl-close.c: Add auditing checkpoints.
* elf/dl-open.c: Likewise.
* elf/dl-fini.c: Likewise.
* elf/dl-load.c: Likewise.
* elf/dl-sym.c: Likewise.
* sysdeps/generic/libc-start.c: Likewise.
* elf/dl-object.c: Allocate memory for auditing information.
* elf/dl-reloc.c: Remove RESOLV. We now always need the map.
Correctly initialize slotinfo.
* elf/dynamic-link.h: Adjust after removal of RESOLV.
* sysdeps/hppa/dl-lookupcfg.h: Likewise.
* sysdeps/ia64/dl-lookupcfg.h: Likewise.
* sysdeps/powerpc/powerpc64/dl-lookupcfg.h: Removed.
* elf/dl-runtime.c (_dl_fixup): Little cleanup.
(_dl_profile_fixup): New parameters to point to register struct and
variable for frame size.
Add auditing checkpoints.
(_dl_call_pltexit): New function.
Don't define trampoline code here.
* elf/rtld.c: Recognize LD_AUDIT. Load modules on startup.
Remove all the functions from _rtld_global_ro which only _dl_open
and _dl_close needed.
Add auditing checkpoints.
* elf/link.h: Define symbols for auditing interfaces.
* include/link.h: Likewise.
* include/dlfcn.h: Define __RTLD_AUDIT.
Remove prototypes for _dl_open and _dl_close.
Adjust access to argc and argv in libdl.
* dlfcn/dlfcn.c: New file.
* sysdeps/generic/dl-lookupcfg.h: Remove all content now that RESOLVE
is gone.
* sysdeps/generic/ldsodefs.h: Add definitions for auditing interfaces.
* sysdeps/generic/unsecvars.h: Add LD_AUDIT.
* sysdeps/i386/dl-machine.h: Remove trampoline code here.
Adjust for removal of RESOLVE.
* sysdeps/x86_64/dl-machine.h: Likewise.
* sysdeps/generic/dl-trampoline.c: New file.
* sysdeps/i386/dl-trampoline.c: New file.
* sysdeps/x86_64/dl-trampoline.c: New file.
* sysdeps/generic/dl-tls.c: Cleanups. Fixup for dtv_t change.
Fix updating of DTV.
* sysdeps/generic/libc-tls.c: Likewise.
* sysdeps/arm/bits/link.h: Renamed to ...
* sysdeps/arm/buts/linkmap.h: ...this.
* sysdeps/generic/bits/link.h: Renamed to...
* sysdeps/generic/bits/linkmap.h: ...this.
* sysdeps/hppa/bits/link.h: Renamed to...
* sysdeps/hppa/bits/linkmap.h: ...this.
* sysdeps/hppa/i386/link.h: Renamed to...
* sysdeps/hppa/i386/linkmap.h: ...this.
* sysdeps/hppa/ia64/link.h: Renamed to...
* sysdeps/hppa/ia64/linkmap.h: ...this.
* sysdeps/hppa/s390/link.h: Renamed to...
* sysdeps/hppa/s390/linkmap.h: ...this.
* sysdeps/hppa/sh/link.h: Renamed to...
* sysdeps/hppa/sh/linkmap.h: ...this.
* sysdeps/hppa/x86_64/link.h: Renamed to...
* sysdeps/hppa/x86_64/linkmap.h: ...this.
2005-01-06 Ulrich Drepper <drepper@redhat.com>
* allocatestack.c (init_one_static_tls): Adjust initialization of DTV
entry for static tls deallocation fix.
* sysdeps/alpha/tls.h (dtv_t): Change pointer type to be struct which
also contains information whether the memory pointed to is static
TLS or not.
* sysdeps/i386/tls.h: Likewise.
* sysdeps/ia64/tls.h: Likewise.
* sysdeps/powerpc/tls.h: Likewise.
* sysdeps/s390/tls.h: Likewise.
* sysdeps/sh/tls.h: Likewise.
* sysdeps/sparc/tls.h: Likewise.
* sysdeps/x86_64/tls.h: Likewise.
2005-01-06 22:40:27 +00:00
Ulrich Drepper
a334319f65
(CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4.
2004-12-22 20:10:10 +00:00
Jakub Jelinek
0ecb606cb6
2.5-18.1
2007-07-12 18:26:36 +00:00
Ulrich Drepper
7d58530341
Test for stack alignment.
2004-12-22 20:09:42 +00:00
Ulrich Drepper
f76c849910
Update.
...
* sysdeps/alpha/jmpbuf-unwind.h: Define __libc_unwind_longjmp.
* sysdeps/i386/jmpbuf-unwind.h: Likewise
* sysdeps/powerpc/jmpbuf-unwind.h: Likewise.
* sysdeps/s390/jmpbuf-unwind.h: Likewise.
* sysdeps/sh/jmpbuf-unwind.h: Likewise.
* sysdeps/sparc/sparc32/jmpbuf-unwind.h: Likewise.
* sysdeps/unix/sysv/linux/ia64/jmpbuf-unwind.h: Likewise.
* sysdeps/x86_64/jmpbuf-unwind.h: Likewise.
* unwind.c: Use it.
2004-09-02 22:47:23 +00:00
Roland McGrath
db2f05ba83
* Makerules ($(common-objpfx)shlib.lds): Don't use \n in rhs of sed
...
substitutions; the semicolon terminators are enough for ld anyway.
* elf/dl-deps.c (_dl_map_object_deps): Use alloca instead of
dynamically sized auto array in function already using alloca.
* locale/programs/ld-ctype.c (ctype_output): Likewise.
* locale/programs/ld-time.c (time_output): Likewise.
* elf/dl-misc.c (_dl_debug_vdprintf): Use macro instead of const for
IOV array size.
* locale/programs/charmap.c (charmap_read): Avoid alloca (or strdupa)
when also using dynamically-sized auto array.
* locale/programs/locfile.c (locfile_read): Likewise.
* locale/programs/repertoire.c (repertoire_read): Likewise.
* nis/nis_print_group_entry.c (nis_print_group_entry): Likewise.
* locale/programs/locarchive.c (enlarge_archive): Likewise.
* posix/annexc.c (check_header): Likewise.
* iconv/gconv_int.h (norm_add_slashes): Don't handle null SUFFIX.
strlen ("") gets optimized away just as well.
* intl/loadmsgcat.c (_nl_init_domain_conv): Update caller.
* wcsmbs/wcsmbsload.c (__wcsmbs_load_conv): Likewise.
2004-03-25 03:54:03 +00:00
Ulrich Drepper
6fadea9f1d
Update.
...
* sysdeps/unix/sysv/linux/i386/vfork.S: If SAVE_PID and
RESTORE_PID are defined, use it.
* sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
2004-03-09 06:32:58 +00:00
Ulrich Drepper
afdca0f2a3
Update.
...
* sysdeps/sparc/sparc64/dl-machine.h: Likewise.
* sysdeps/sparc/sparc32/dl-machine.h: Likewise.
* sysdeps/s390/s390-64/dl-machine.h: Likewise.
* sysdeps/s390/s390-32/dl-machine.h: Likewise.
* sysdeps/powerpc/powerpc64/dl-machine.h: Likewise.
* sysdeps/powerpc/powerpc32/dl-machine.c: Likewise.
* sysdeps/m68k/dl-machine.h: Likewise.
* sysdeps/ia64/dl-machine.h: Likewise.
* sysdeps/arm/dl-machine.h: Likewise.
* sysdeps/alpha/dl-machine.h: Likewise.
2004-03-05 10:29:47 +00:00
Ulrich Drepper
675620f74c
Update.
...
2003-12-18 Ulrich Drepper <drepper@redhat.com>
* tst-eintr1.c: Better error messages.
* Makefile (tests): Add tst-eintr2.
* tst-eintr2.c: New file.
2003-12-18 Jakub Jelinek <jakub@redhat.com>
* Makefile (tests): Add tst-cancel21 and tst-cancelx21.
(CFLAGS-tst-cancelx21.c): Set.
* tst-cancel21.c: New test.
* tst-cancelx21.c: New test.
* unwind.c (FRAME_LEFT): Add adj argument. Subtract it from each
comparison operand.
(unwind_stop): Use _JMPBUF_CFA_UNWINDS_ADJ macro instead of
_JMPBUF_CFA_UNWINDS. Adjust FRAME_LEFT invocations.
* pt-longjmp.c: Include jmpbuf-unwind.h.
(__pthread_cleanup_upto): Use _JMPBUF_UNWINDS_ADJ macro instead of
_JMPBUF_UNWINDS. Adjust compared pointers.
* init.c (__pthread_initialize_minimal_internal): Initialize
pd->stackblock_size.
* sysdeps/pthread/jmpbuf-unwind.h: Removed.
* sysdeps/alpha/jmpbuf-unwind.h: New file.
* sysdeps/i386/jmpbuf-unwind.h: New file.
* sysdeps/powerpc/jmpbuf-unwind.h: New file.
* sysdeps/s390/jmpbuf-unwind.h: New file.
* sysdeps/sh/jmpbuf-unwind.h: New file.
* sysdeps/sparc/sparc32/jmpbuf-unwind.h: New file.
* sysdeps/x86_64/jmpbuf-unwind.h: New file.
* sysdeps/ia64/jmpbuf-unwind.h: Include stdint.h.
(_JMPBUF_CFA_UNWINDS): Remove.
(_JMPBUF_CFA_UNWINDS_ADJ, _JMPBUF_UNWINDS_ADJ): Define.
2003-12-12 Jakub Jelinek <jakub@redhat.com>
* Makefile (tests): Add tst-cancel20 and tst-cancelx20.
(CFLAGS-tst-cancelx20.c): Set.
* tst-cancel20.c: New test.
* tst-cancelx20.c: New test.
2003-12-19 01:37:13 +00:00
Ulrich Drepper
c776b3d717
Update.
...
2003-12-02 David Mosberger <davidm@hpl.hp.com>
* sysdeps/ia64/elf/initfini.c: Add unwind info.
* sysdeps/ia64/dl-machine.h (elf_machine_matches_host): Mark with
attribute "unused".
(elf_machine_dynamic): Mark with attributes "unused" and "const".
(elf_machine_runtime_setup): Likewise.
* sysdeps/generic/dl-fptr.c (make_fptr_table): Mark with
attribute "always_inline".
* sysdeps/ia64/dl-machine.h (__ia64_init_bootstrap_fdesc_table):
Likewise.
* configure.in: Check whether compiler has libunwind support.
* config.make.in (have-cc-with-libunwind): New variable.
* config.h.in (HAVE_CC_WITH_LIBUNWIND): New macro.
* Makeconfig (gnulib): If have-cc-withh-libunwind is "yes", also
mention -lunwind.
003-11-12 David Mosberger <davidm@hpl.hp.com>
* sysdeps/unix/sysv/linux/ia64/sysdep.h: Define DO_CALL_VIA_BREAK.
Redefine DO_CALL to use vdso if supported, otherwise DO_CALL_VIA_BREAK.
Likewise for DO_INLINE_SYSCALL. Make INTERNAL_SYSCALL use
DO_INLINE_SYSCALL.
* sysdeps/unix/sysv/linux/ia64/vfork.S: Use DO_CALL_VIA_BREAK()
instead of DO_CALL().
* sysdeps/unix/sysv/linux/ia64/clone2.S: Use break directly instead
of DO_CALL().
* sysdeps/unix/sysv/linux/ia64/brk.S (__curbrk): Restructure it
to take advantage of DO_CALL() macro.
* sysdeps/unix/sysv/linux/ia64/setcontext.S: Likewise.
* sysdeps/unix/sysv/linux/ia64/getcontext.S: Likewise.
* elf/rtld.c (dl_main): Restrict dl_sysinfo_dso check to first
program header. On ia64, the check failed previously because
there are two program headers.
* sysdeps/generic/s_nexttowardf.c: Likewise.
* math/bug-nexttoward.c: New file.
2003-12-10 23:02:33 +00:00
Ulrich Drepper
65af7e6142
Update.
...
2003-09-17 Jakub Jelinek <jakub@redhat.com>
* sysdeps/i386/Makefile (stack-align-test-flags): Add
-malign-double -mpreferred-stack-boundary=4.
2003-09-17 09:39:59 +00:00
Ulrich Drepper
3402852c2c
Update.
...
2003-09-17 Ulrich Drepper <drepper@redhat.com>
* sysdeps/posix/utimes.c (__utimes): Truncate instead of round.
* sysdeps/unix/sysv/linux/utimes.c (__utimes): Likewise.
2003-09-17 09:18:37 +00:00
Roland McGrath
7f08f55a9f
* sysdeps/unix/sysv/linux/speed.c
...
(cfsetospeed): Only set c_ospeed under [_HAVE_STRUCT_TERMIOS_C_OSPEED].
(cfsetispeed): Only set c_ispeed under [_HAVE_STRUCT_TERMIOS_C_ISPEED].
* sysdeps/unix/sysv/linux/bits/termios.h
(_HAVE_STRUCT_TERMIOS_C_ISPEED, _HAVE_STRUCT_TERMIOS_C_OSPEED): Define.
* sysdeps/unix/sysv/linux/alpha/bits/termios.h: Likewise.
* sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise.
2003-09-09 07:01:01 +00:00
Ulrich Drepper
6162364368
Update.
...
2003-06-22 Ulrich Drepper <drepper@redhat.com>
* pthreadP.h (__pthread_mutex_init_internal): Mark hidden.
(__pthread_mutex_lock_internal): Likewise.
(__pthread_mutex_unlock_internal): Likewise.
(__pthread_mutex_unlock_usercnt): Declare.
* pthread_mutex_destroy.c: Always fail if used in any way.
* pthread_mutex_init.c: Update comment.
* pthread_mutex_lock.c: If NO_INCR is not defined adjust __nusers.
* pthread_mutex_timedlock.c: Adjust __nusers.
* pthread_mutex_trylock.c: Adjust __nusers.
* pthread_mutex_unlock.c: Old code is in __pthread_mutex_unlock_usercnt
and public interfaces are wrapper with pass additional parameter.
__pthread_mutex_unlock_usercnt does not adjust __nusers if second
parameter zero.
* tst-mutex8.c: New file.
* Makefile (tests): Add tst-mutex8.
* sysdeps/pthread/pthread_cond_timedwait.c: Call
__pthread_mutex_unlock_usercnt.
* sysdeps/pthread/pthread_cond_wait.c: 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.
* sysdeps/unix/sysv/linux/pthread_mutex_cond_lock.c: Define NO_INCR.
* sysdeps/unix/sysv/linux/i386/bits/pthreadtypes.h (pthread_mutex_t):
Add __nusers.
* sysdeps/unix/sysv/linux/ia64/bits/pthreadtypes.h: Likewise.
* sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h: Likewise.
* sysdeps/unix/sysv/linux/s390/bits/pthreadtypes.h: Likewise.
* sysdeps/unix/sysv/linux/sh/bits/pthreadtypes.h: Likewise.
* sysdeps/unix/sysv/linux/x86_64/bits/pthreadtypes.h: Likewise.
* pthread_mutex_lock.c: Don't store THREAD_ID in __owner, use TID.
* pthread_mutex_timedlock.c: Likewise.
* pthread_mutex_trylock.c: Adjust __nusers.
* pthread_mutex_unlock.c: Compare with TID not THREAD_ID.
* tst-mutex9.c: New file.
* Makefile (tests): Add tst-mutex9.
* sysdeps/i386/tls.h: Remove THREAD_ID definition.
* sysdeps/ia64/tls.h: Likewise.
* sysdeps/powerpc/tls.h: Likewise.
* sysdeps/s390/tls.h: Likewise.
* sysdeps/sh/tls.h: Likewise.
* sysdeps/x86_64/tls.h: Likewise.
* sysdeps/unix/sysv/linux/i386/bits/pthreadtypes.h (pthread_mutex_t):
Change type of __owner.
* sysdeps/unix/sysv/linux/ia64/bits/pthreadtypes.h: Likewise.
* sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h: Likewise.
* sysdeps/unix/sysv/linux/s390/bits/pthreadtypes.h: Likewise.
* sysdeps/unix/sysv/linux/sh/bits/pthreadtypes.h: Likewise.
* sysdeps/unix/sysv/linux/x86_64/bits/pthreadtypes.h: Likewise.
2003-06-22 23:55:27 +00:00
Ulrich Drepper
7726edc273
Update.
...
2003-06-07 Ulrich Drepper <drepper@redhat.com>
* cleanup_routine.c: New file.
* Versions (libpthread) [GLIBC_2.3.3]: Add __pthread_cleanup_routine.
* sysdeps/pthread/pthread.h: Add support for fully exception-based
cleanup handling.
* Makefile (libpthread-routines): Add cleanup_routine.
Add more CFLAGS variables to compile with exceptions. Add comments
why which file needs unwind tables.
(tests) [have-forced-unwind==yes]: Add tst-cancelx* and tst-cleanupx*
tests.
* tst-cancelx1.c: New file.
* tst-cancelx2.c: New file.
* tst-cancelx3.c: New file.
* tst-cancelx4.c: New file.
* tst-cancelx5.c: New file.
* tst-cancelx6.c: New file.
* tst-cancelx7.c: New file.
* tst-cancelx8.c: New file.
* tst-cancelx9.c: New file.
* tst-cancelx10.c: New file.
* tst-cancelx11.c: New file.
* tst-cancelx12.c: New file.
* tst-cancelx13.c: New file.
* tst-cancelx14.c: New file.
* tst-cancelx15.c: New file.
* tst-cleanupx0.c: New file.
* tst-cleanupx0.expect: New file.
* tst-cleanupx1.c: New file.
* tst-cleanupx2.c: New file.
* tst-cleanupx3.c: New file.
* tst-cleanup0.c: Make standard compliant.
* tst-cleanup1.c: Likewise.
* sysdeps/unix/sysv/linux/sem_timedwait.c: Add cancellation support.
* sysdeps/unix/sysv/linux/sem_wait.c: Likewise.
* 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_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sem_wait.S: Likewise.
* sysdeps/i386/tcb-offsets.sym: Add RESULT, CANCELHANDLING, and
CLEANUP_JMP_BUF.
* sysdeps/x86_64/tcb-offsets.sym: Likewise.
* tst-cancel12.c: New file.
* tst-cancel13.c: New file.
* tst-cancel14.c: New file.
* tst-cancel15.c: New file.
* Makefile (tests): Add tst-cancel12, tst-cancel13, tst-cancel14,
and tst-cancel15.
* tst-cancel1.c: Add some comments.
* sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S: Compute relative
timeout correctly.
2003-06-08 05:28:14 +00:00
Ulrich Drepper
4ad0bbf4fa
Update.
...
2003-06-05 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/i386/bits/pthreadtypes.h (pthread_rwlock_t):
Change type of __writer element to int.
* sysdeps/unix/sysv/linux/ia64/bits/pthreadtypes.h: Likewise.
* sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h: Likewise.
* sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h: Likewise.
* sysdeps/unix/sysv/linux/s390/bits/pthreadtypes.h: Likewise.
* sysdeps/unix/sysv/linux/x86_64/bits/pthreadtypes.h: Likewise.
* sysdeps/i386/tcb-offsets.sym: Replace SELF entry with TID entry.
* sysdeps/x86_64/tcb-offsets.sym: Likewise.
* pthread_rwlock_trywrlock.c: Store TID not self pointer in __writer.
Compare with TID to determine deadlocks.
* sysdeps/pthread/pthread_rwlock_rdlock.c: Likewise.
* sysdeps/pthread/pthread_rwlock_timedrdlock.c: Likewise.
* sysdeps/pthread/pthread_rwlock_timedwrlock.: Likewise.
* sysdeps/pthread/pthread_rwlock_wrlock.c: Likewise.
* 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_wrlock.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S: Likewise.
* 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_wrlock.S: Likewise.
* Makefile (tests): Add tst-rwlock12.
* tst-rwlock12.c: New file.
2003-06-05 19:31:57 +00:00
Ulrich Drepper
69431c9a21
Update.
...
2003-05-25 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/kernel-features.h: Define
__ASSUME_FUTEX_REQUEUE for >= 2.5.70.
* math/test-fenv.c (feexcp_nomask_test): Fix comment.
2003-05-26 02:47:39 +00:00
Ulrich Drepper
e55674c65e
(TLS_INIT_TP): Include \n in error message.
2003-05-06 05:40:11 +00:00
Ulrich Drepper
9a7178d611
Update.
...
2003-05-01 Ulrich Drepper <drepper@redhat.com>
* sysdeps/i386/tls.h: Define THREAD_ID.
* sysdeps/ia64/tls.h: Likewise.
* sysdeps/powerpc/tls.h: Likewise.
* sysdeps/s390/tls.h: Likewise.
* sysdeps/sh/tls.h: Likewise.
* sysdeps/x86_64/tls.h: Likewise.
* pthread_mutex_lock.c: Use THREAD_ID instead of THREAD_SELF to
record ownership.
* pthread_mutex_timedlock.c: Likewise.
* pthread_mutex_trylock.c: Likewise.
* pthread_mutex_unlock.c: Likewise.
* pthread_rwlock_trywrlock.c: Likewise.
* sysdeps/pthread/pthread_rwlocklock_rdlock.c: Likewise.
* sysdeps/pthread/pthread_rwlock_timedrdlock.c: Likewise.
* sysdeps/pthread/pthread_rwlock_timedwrlock.c: Likewise.
* sysdeps/pthread/pthread_rwlock_wrlock.c: Likewise.
* sysdeps/pthread/createthread.c (create_thread): Use CLONE_SYSVSEM
flag.
2003-05-01 23:19:51 +00:00
Ulrich Drepper
bd4f43b462
Update.
...
2003-04-14 Jakub Jelinek <jakub@redhat.com>
* sysdeps/i386/i486/bits/atomic.h: Rename LOCK to LOCK_PREFIX.
* sysdeps/x86_64/bits/atomic.h: Likewise.
2003-04-14 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/i386/sysdep.h: Change PUSHARGS_1 and
POPARGS_1 to emit labels for the mov instructions.
2003-04-14 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (ret_NOERRNO): Define.
2003-04-14 17:30:34 +00:00
Ulrich Drepper
b22d701bb7
Update.
...
2003-04-04 Ulrich Drepper <drepper@redhat.com>
* sysdeps/pthread/createthread.c (create_thread): Add some more
comments explaining when to set multiple_threads and when not.
* pthreadP.h: Define THREAD_ATOMIC_CMPXCHG_VAL and
THREAD_ATOMIC_BIT_SET if not already defined.
* sysdeps/i386/tls.h: Define THREAD_ATOMIC_CMPXCHG_VAL and
THREAD_ATOMIC_BIT_SET:
* sysdeps/x86_64/tls.h: Likewise.
* cleanup_defer.c (_pthread_cleanup_push_defer): Rewrite to use
THREAD_ATOMIC_CMPXCHG_VAL.
(_pthread_cleanup_pop_restore): Likewise.
* cancellation.c (__pthread_enable_asynccancel): Likewise.
(__pthread_enable_asynccancel_2): Likewise.
(__pthread_disable_asynccancel): Likewise.
* libc-cancellation.c (__libc_enable_asynccancel): Likewise.
(__libc_disable_asynccancel): Likewise.
* init.c (sigcancel_handler): Likewise.
* pthread_setcancelstate.c (__pthread_setcancelstate): Likewise.
* pthread_setcanceltype.c (__pthread_setcanceltype): Likewise.
2003-04-05 05:21:15 +00:00
Ulrich Drepper
211d90c524
Update.
...
* sysdeps/unix/sysv/linux/ia64/lowlevellock.h (__lll_mutex_lock):
Use atomic_exchange_and_add instead of __lll_add.
(__lll_mutex_timedlock): Likewise.
Patch by Ian Wienand.
2003-03-24 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h
(SINGLE_THREAD_P): Fix typo.
* tst-cancel-wrappers.sh: Handle '.'ed symbols.
2003-03-31 Ulrich Drepper <drepper@redhat.com>
* Makefile (tests): Add tst-align.
* tst-align.c: New file.
* sysdeps/i386/Makefile: Define CFLAGS-tst-align.
* sysdeps/x86_64/Makefile: Likewise.
* tst-tsd2.c: Add casts to avoid warnings.
2003-04-01 01:24:00 +00:00
Ulrich Drepper
f877b33831
(CALL_THREAD_FCT): Align stack of called function correctly.
2003-04-01 00:53:02 +00:00
Ulrich Drepper
09402f5bc1
Update.
...
2003-03-25 Ulrich Drepper <drepper@redhat.com>
* csu/tst-atomic.c: Adjust tests to what atomic_add_negative and
atomic_add_zero were supposed to do.
* include/atomic.h: Adjust atomic_add_negative and atomic_add_zero
to x86 behavior.
* sysdeps/generic/bits/typesizes.h (__TIMER_T_TYPE): Define as void*.
This matches the new timer implementation.
* sysdeps/unix/sysv/linux/bits/siginfo.h (struct siginfo): Adjust
timer info for what the kernel provides these days.
(struct sigevent): Add _tid field.
Define SIGEV_THREAD_ID.
* Versions.def (librt): Add GLIBC_2.3.3.
* abilist/libpthread.abilist: Update for nptl.
2003-03-25 20:41:26 +00:00
Ulrich Drepper
4009bf4044
Update.
...
2003-03-19 Ulrich Drepper <drepper@redhat.com>
* Makefile (distribute): Add include/atomic.h and bits/atomic.h.
* include/atomic.h: New file.
* sysdeps/i386/i486/bits/atomic.h: New file.
* sysdeps/x86_64/bits/atomic.h: New file.
* sysdeps/s390/bits/atomic.h: New file.
* sysdeps/sh/bits/atomic.h: New file.
* sysdeps/ia64/bits/atomic.h: New file.
* sysdeps/powerpc/bits/atomic.h: New file.
* sysdeps/generic/bits/atomic.h: New file.
* sysdeps/i386/i486/atomicity.h: Removed.
* sysdeps/x86_64/atomicity.h: Removed.
* sysdeps/s390/s390-32/atomicity.h: Removed.
* sysdeps/s390/s390-64/atomicity.h: Removed.
* sysdeps/ia64/atomicity.h: Removed.
* sysdeps/powerpc/powerpc32/atomicity.h: Removed.
* sysdeps/powerpc/powerpc64/atomicity.h: Removed.
* elf/dl-profile.c: Use atomic.h instead of atomicity.h. Adjust
use of macros from atomicity.h to new names and semantics.
* gmon_mcount.c: Likewise.
* malloc/set-freeres.c: Likewise.
* nscd/cache.c: Likewise.
* stdlib/cxa_finalize.c: Likewise.
* sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
* sysdeps/mips/ieee754.h: New file, suitable to replace both
* stdlib/strtod.c (INTERNAL): While eating trailing zeros handle
2003-03-20 07:19:17 +00:00
Ulrich Drepper
e22a221d6b
Update.
...
2003-03-14 Ulrich Drepper <drepper@redhat.com>
* tst-fork4.c: Use test-skeleton.c.
* pthread_create.c (start_thread): Use CALL_THREAD_FCT if defined.
* sysdeps/i386/tls.h: Define CALL_THREAD_FCT.
2003-03-14 23:28:23 +00:00
Roland McGrath
55c11fbdb0
2003-03-14 Roland McGrath <roland@redhat.com>
...
* descr.h (struct pthread): Move the union out of [!TLS_DTV_AT_TP], so
we always define the padding space.
[!TLS_DTV_AT_TP]: Give tcbhead_t field a name, `header', since GCC
stopped supporting its own extensions fully.
[TLS_MULTIPLE_THREADS_IN_TCB]: Put `multiple_threads' inside a wrapper
struct also called `header', so `header.multiple_threads' is the field
name to use on all machines.
* allocatestack.c (allocate_stack): Use `header.' prefix.
* sysdeps/pthread/createthread.c (create_thread): Likewise.
* pthread_create.c (__pthread_create_2_1): Likewise.
* sysdeps/i386/tls.h (INSTALL_NEW_DTV, THREAD_DTV): Likewise.
(THREAD_SELF): Likewise.
* sysdeps/x86_64/tls.h: Likewise.
* sysdeps/unix/sysv/linux/i386/sysdep-cancel.h
(SINGLE_THREAD_P): Likewise.
* sysdeps/unix/sysv/linux/sh/sysdep-cancel.h
(SINGLE_THREAD_P): Likewise.
* sysdeps/unix/sysv/linux/s390/s390-64/sysdep-cancel.h
(SINGLE_THREAD_P): Likewise.
2003-03-14 22:34:02 +00:00
Ulrich Drepper
564cd8b67e
Update.
...
2003-03-13 Ulrich Drepper <drepper@redhat.com>
* posix/getconf.c: Recognize POSIX2_SYMLINKS.
* sysdeps/generic/bits/confname.h: Define _PC_2_SYMLINKS.
* sysdeps/posix/fpathconf.c: Handle _PC_2_SYMLINKS.
* sysdeps/posix/pathconf.c: Likewise.
* sysdeps/unix/sysv/linux/fpathconf.c: Likewise.
* sysdeps/unix/sysv/linux/pathconf.c: Likewise.
* sysdeps/unix/sysv/linux/pathconf.h: Define statfs_symlinks.
* sysdeps/unix/sysv/linux/linux_fsinfo.h: Define some more magic
words.
2003-03-14 06:28:45 +00:00
Ulrich Drepper
d0369fb8a9
Update.
...
2003-03-12 Ulrich Drepper <drepper@redhat.com>
* sysdeps/x86_64/tls.h [__ASSEMBLER__]: Include tcb-offsets.h.
* sysdeps/x86_64/tcb-offsets.sym: New file.
* sysdeps/x86_64/Makefile: New file.
* sysdeps/i386/tcb-offsets.sym: Add SELF.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S: Use SELF
to access own pthread_t in TCB.
* 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_wrlock.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedrdlock.S: New
file.
* sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedwrlock.S: New
file.
* sysdeps/unix/sysv/linux/x86_64/bits/pthreadtypes.h
(pthread_cond_t): Add padding.
2003-03-12 20:03:07 +00:00
Roland McGrath
326132dbdb
2003-03-12 Roland McGrath <roland@redhat.com>
...
* pthread-errnos.sym: New file.
* Makefile (gen-as-const-headers): New variable, list that file.
* sysdeps/unix/sysv/linux/i386/i486/sem_wait.S: Include generated
header <pthread-errnos.h> instead of defining errno values here.
* sysdeps/unix/sysv/linux/i386/i486/sem_trywait.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/sem_post.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedwrlock.S:
Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedrdlock.S:
Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/lowlevelmutex.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sem_wait.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sem_trywait.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sem_post.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/lowlevelmutex.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/lowlevellock.S: Likewise.
* sysdeps/unix/sysv/linux/sh/sem_trywait.S: Likewise.
* sysdeps/unix/sysv/linux/sh/sem_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/sh/sem_post.S: Likewise.
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_wrlock.S: Likewise.
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_timedwrlock.S: Likewise.
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_timedrdlock.S: Likewise.
* sysdeps/unix/sysv/linux/sh/pthread_cond_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/sh/pthread_rwlock_rdlock.S: Likewise.
* sysdeps/unix/sysv/linux/sh/lowlevellock.S: Likewise.
* sysdeps/i386/i486/pthread_spin_trylock.S: Likewise.
* sysdeps/x86_64/pthread_spin_trylock.S: Likewise.
* sysdeps/sh/pthread_spin_trylock.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S: Likewise.
2003-03-12 10:28:07 +00:00
Ulrich Drepper
5a03acfe37
Update.
...
* sysdeps/unix/sysv/linux/x86_64/lowlevellock.S: Fix asm syntax.
* sysdeps/unix/sysv/linux/x86_64/lowlevellock.h: Likewise.
* sysdeps/unix/sysv/linux/x86_64/lowlevelmutex.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/pthread_once.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_trywait.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sem_wait.S: Likewise.
* sysdeps/x86_64/tls.h (THREAD_SELF, THREAD_GETMEM, THREAD_GETMEM_NC,
THREAD_SETMEM, THREAD_SETMEM_NC): Correct asm syntax.
* allocatestack.c [! TLS_MULTIPLE_THREADS_IN_TCB] (allocate_stack):
Initialize *__libc_multiple_threads_ptr not __libc_multiple_threads.
* sysdeps/pthread/createthread.c [! TLS_MULTIPLE_THREADS_IN_TCB]
(create_thread): Likewise.
Define __pthread_multiple_threads and __libc_multiple_threads_ptr.
* init.c (__pthread_initialize_minimal_internal): Initialize
__libc_multiple_threads_ptr if necessary.
* pthreadP.h: Adjust prototype for __libc_pthread_init. Declare
__pthread_multiple_threads and __libc_multiple_threads_ptr.
* sysdeps/unix/sysv/linux/libc_pthread_init.c: Define
__libc_multiple_threads.
(__libc_pthread_init): Return pointer to __libc_pthread_init if
necessary.
* sysdeps/i386/tls.h (THREAD_SETMEM): Fix one-byte variant.
(THREAD_SETMEM_NC): Likewise.
* sysdeps/x86_64/pthread_spin_trylock.c: Removed.
* sysdeps/x86_64/pthread_spin_trylock.S: New file.
* sysdeps/x86_64/pthread_spin_unlock.c: Removed.
* sysdeps/x86_64/pthread_spin_unlock.S: New file.
* sysdeps/i386/i486/pthread_spin_trylock.S (pthread_spin_trylock):
Eliminate one entire instruction.
2003-03-12 05:45:00 +00:00
Roland McGrath
d4f64e1ad7
2003-03-10 Roland McGrath <roland@redhat.com>
...
* allocatestack.c (allocate_stack) [!TLS_MULTIPLE_THREADS_IN_TCB]:
Instead of setting PD->multiple_threads, set globals
__pthread_multiple_threads and __libc_multiple_threads.
* sysdeps/pthread/createthread.c (create_thread): Likewise.
* sysdeps/i386/tls.h (TLS_MULTIPLE_THREADS_IN_TCB): Define it.
* sysdeps/s390/tls.h (TLS_MULTIPLE_THREADS_IN_TCB): Likewise.
* descr.h (struct pthread): Conditionalize first member on
[!TLS_DTV_AT_TP]. Replace the `header' member with an anonymous union
containing an anonymous tcbhead_t. Move `list' member out.
[TLS_MULTIPLE_THREADS_IN_TCB]: Define a `multiple_threads' member.
* allocatestack.c: Remove use of `header.data.' prefix.
* pthread_create.c: Likewise.
* init.c (__pthread_initialize_minimal_internal): Likewise.
* sysdeps/pthread/createthread.c (create_thread): Likewise.
* sysdeps/i386/tls.h (INSTALL_DTV): Add parens.
(THREAD_SELF, THREAD_DTV, INSTALL_NEW_DTV): No `header.data.' prefix.
* sysdeps/x86_64/tls.h: Likewise.
* sysdeps/unix/sysv/linux/i386/sysdep-cancel.h
(SINGLE_THREAD_P): Likewise.
* sysdeps/unix/sysv/linux/sh/sysdep-cancel.h
(SINGLE_THREAD_P): Likewise.
* sysdeps/i386/tls.h (tcbhead_t): Remove `list' member.
* sysdeps/s390/tls.h (tcbhead_t): Likewise.
2003-03-10 08:50:36 +00:00
Ulrich Drepper
0a0ee8be8f
Fix a few unused definitions.
2003-03-07 18:34:43 +00:00
Ulrich Drepper
78429f1231
Add CLEANUP and CLEANUP_PREV.
2003-03-02 07:49:51 +00:00
Ulrich Drepper
fd1a0d0c7c
Update.
...
2003-02-23 Ulrich Drepper <drepper@redhat.com>
* resolv/res_libc.c [USE___THREAD] (_res): Initialize _vcsock
element to -1.
2003-02-23 09:16:11 +00:00
Ulrich Drepper
e3ec8904db
Update.
...
* atomic.h: Add missing atomic_ prefixes.
2003-02-05 06:56:56 +00:00
Ulrich Drepper
3e4fc359f4
Update.
...
2003-01-31 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c:
Include kernel-features.h
* sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
2003-02-03 21:57:42 +00:00
Ulrich Drepper
a1f8ec97fd
Update.
...
2003-01-15 Dmitry V. Levin <ldv@altlinux.org>
* sysdeps/unix/sysv/linux/ptsname.c: Fix typo in comment.
2003-01-16 18:14:10 +00:00
Ulrich Drepper
a73ab6df85
Update.
...
* tst-cancel-wrappers.sh: Invoke gawk not awk since we use GNU awk
features. Reported by Marijn Ros <marijn@mad.scientist.com>.
2003-01-05 20:10:01 +00:00
Ulrich Drepper
3b7ed87125
Update.
...
2002-12-28 Ulrich Drepper <drepper@redhat.com>
* misc/sys/cdefs.h (__attribute_deprecated__): New #define.
2002-12-28 22:19:04 +00:00
Ulrich Drepper
131fd126cd
Update.
...
2002-12-28 Ulrich Drepper <drepper@redhat.com>
* descr.h (struct pthread): Move header.data.list to the back of the
struct.
* sysdeps/i386/tls.h (tcbhead_t): Move list to the back of the struct.
(MULTIPLE_THREADS_OFFSET): Adjust offset.
(SYSINFO_OFFSEET): Likewise.
2002-12-27 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/i386/i686/dl-sysdep.h (USE_DL_SYSINFO):
Define.
(DL_SYSINFO_DEFAULT): Cast to uintptr_t to avoid warnings.
* sysdeps/unix/sysv/linux/i386/dl-sysdep.h (NEED_DL_SYSINFO,
DL_SYSINFO_DEFAULT, DL_SYSINFO_IMPLEMENTATION): Define.
(USE_DL_SYSINFO): Undef.
2002-12-22 Jakub Jelinek <jakub@redhat.com>
* Makefile (tests-reverse): Use $(objpfx)../libc.so instead of
$(common-objpfx)libc.so.
* tst-cancel4.c (tf_write, tf_writev): Increase buf sizes so that
it is bigger than pipe buffer size even on arches with bigger
page size.
(tf_usleep): Cast usleep argument to useconds_t to avoid warnings.
2002-12-28 09:27:26 +00:00
Ulrich Drepper
097eca29e8
Update.
...
* sysdeps/unix/sysv/linux/i386/pthread_once.S: Use ENTER_KERNEL instead
of int $0x80.
* sysdeps/unix/sysv/linux/i386/i486/libc-lowlevellock.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/libc-lowlevelmutex.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/lowlevelcond.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/lowlevelmutex.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/lowlevelrwlock.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/lowlevelsem.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_barrier_wait.S: Likewise.
* sysdeps/unix/sysv/linux/i386/lowlevellock.h: Add support for using
sysenter.
* sysdeps/unix/sysv/linux/i386/lowlevelsem.h: Likewise.
* sysdeps/i386/tls.h: Unconditionally include <dl-sysdep.h>.
2002-12-20 07:12:24 +00:00
Ulrich Drepper
df45b31e81
Update.
...
2002-12-18 Ulrich Drepper <drepper@redhat.com>
* descr.h (struct pthread) [NEED_DL_SYSINFO]: Add sysinfo member.
* sysdeps/i386/tls.h (tcbhead_t): Add sysinfo member.
Define SYSINFO_OFFSEET if NEED_DL_SYSINFO is defined.
(INIT_SYSINFO): New #define.
(TLS_TP_INIT): Use INIT_SYSINFO.
* sysdeps/unix/sysv/linux/libc_pthread_init.c (__libc_pthread_init):
At test to make sure SYSINFO_OFFSET value is correct.
* sysdeps/unix/sysv/linux/i386/dl-sysdep.h: New file.
2002-12-19 07:09:42 +00:00