aboutsummaryrefslogtreecommitdiff
path: root/nptl/Makefile
AgeCommit message (Collapse)Author
2003-10-02Update.Ulrich Drepper
2003-10-02 Jeroen Dekkers <jeroen@dekkers.cx> * sysdeps/mach/hurd/malloc-machine.h: Copy the tsd code from the old thread-m.h header too.
2003-09-24Update.Ulrich Drepper
2003-09-24 Ulrich Drepper <drepper@redhat.com> * configure.in: Check for -fpie and -pie compiler options. * config.make.in (have-fpie): Define. * sysdeps/unix/sysv/linux/alpha/sys/sysmacros.h: Removed. * sysdeps/unix/sysv/linux/sparc/sys/sysmacros.h: Removed.
2003-09-24Update.Ulrich Drepper
2003-09-23 Ulrich Drepper <drepper@redhat.com> * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions [libc] (GLIBC_2.3.3): Add setcontext, getcontext, swapcontext, and makecontext. * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct change for include Altivec support for PPC32. It was not compatible. * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h: Adjust offsets for ucontext_t change. * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Adjust for ucontext_t change. Add compatibility code. * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise. Patch by Paul Mackerras <paulus@samba.org>. 2003-02-25 Randolph Chung <tausq@debian.org> * sysdeps/hppa/Makefile: Include compat code in build. * sysdeps/hppa/libgcc-compat.c: New file. * sysdeps/hppa/Dist: Add libgcc-compat.c. * sysdeps/hppa/Versions [GLIBC_2.2]: Add __clz_tab.
2003-09-22Update.Ulrich Drepper
* sysdeps/unix/sysv/linux/x86_64/lowlevellock.h: Likewise. * sysdeps/unix/sysv/linux/x86_64/lowlevellock.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/lowlevelmutex.S: Removed. * sysdeps/unix/sysv/linux/i386/i486/pthread_barrier_wait.S: Adjust for new mutex implementation. * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S: 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/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. * sysdeps/unix/sysv/linux/x86_64/pthread_barrier_wait.S: Likewise * sysdeps/unix/sysv/linux/x86_64/pthread_cond_broadcast.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/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_unlock.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S: Likewise. Don't use requeue. * sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S: Likewise.
2003-09-17Update.Ulrich Drepper
2003-09-17 Philip Blundell <philb@gnu.org> * sysdeps/unix/sysv/linux/arm/vfork.S: Branch to fork if libpthread is loaded. Elide backwards compatibility code when not required.
2003-09-17Update.Ulrich Drepper
2003-09-15 Jakub Jelinek <jakub@redhat.com> * sysdeps/i386/Makefile (sysdep-CFLAGS): If not in math or csu subdir, add -mpreferred-stack-boundary=4, with few exceptions. 2003-09-17 Jakub Jelinek <jakub@redhat.com> * Makeconfig (stack-align-test-flags): Set. * stdlib/Makefile (CFLAGS-tst-bsearch.c): Add $(stack-align-test-flags). * stdlib/tst-bsearch.c: Include tst-stack-align.h. (align_check): New var. (comp): Use TEST_STACK_ALIGN macro. (do_test): Fail if align_check != 1. * sysdeps/generic/tst-stack-align.h: New file. * sysdeps/i386/i686/Makefile (stack-align-test-flags): Add -msse. * sysdeps/i386/i686/tst-stack-align.h: New file.
2003-09-16Update.Ulrich Drepper
2003-09-15 Jakub Jelinek <jakub@redhat.com> * argp/argp.h (argp_parse, __argp_parse): Remove __THROW. * argp/Makefile (CFLAGS-argp-help.c, CFLAGS-argp-parse.c): Add $(uses-callbacks). * dirent/Makefile (CFLAGS-scandir.c, CFLAGS-scandir64.c): Likewise. * elf/Makefile (CFLAGS-dl-iterate-phdr.c, CFLAGS-dl-iterate-phdr-static.c): Add $(uses-callbacks). * elf/dl-iteratephdr.c (cancel_handler): New function. (__dl_iterate_phdr): Add __libc_cleanup_{push,pop}. * elf/link.h (dl_iterate_phdr): Remove __THROW. * io/Makefile (CFLAGS-fts.c): Merge into one assignment. Add $(uses-callbacks). (CFLAGS-ftw.c, CFLAGS-ftw64.c): Add $(uses-callbacks). * misc/Makefile (CFLAGS-tsearch.c, CFLAGS-lsearch.c): Change $(exceptions) to $(uses-callbacks). * Makeconfig (uses-callbacks): Set to $(exceptions). * posix/Makefile (CFLAGS-glob.c, CFLAGS-glob64.c): Add $(uses-callbacks). * stdlib/Makefile (CFLAGS-bsearch.c, CFLAGS-msort.c, CFLAGS-qsort.c): Likewise.
2003-09-03Update.Ulrich Drepper
2003-09-02 Jakub Jelinek <jakub@redhat.com> * sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Remove rt_sigsuspend, rt_sigprocmask, rt_sigtimedwait, rt_sigqueueinfo and rt_sigpending. * sysdeps/unix/sysv/linux/alpha/sigaction.c (__syscall_rt_sigaction): New prototype. * sysdeps/unix/sysv/linux/arm/syscalls.list (__syscall_*): Remove unused __syscall_ stubs. * sysdeps/unix/sysv/linux/arm/Makefile (sysdep_routines): Remove rt_*. * sysdeps/unix/sysv/linux/cris/Makefile: Removed. * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list (__syscall_recvfrom, __syscall_sendto): Remove unused aliases. * sysdeps/unix/sysv/linux/mips/syscalls.list (__syscall_*): Remove unused __syscall_ stubs. * sysdeps/unix/sysv/linux/mips/Makefile (sysdep_routines): Remove rt_*. * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (__syscall_*): Remove unused __syscall_ stubs. * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list (__syscall_*): Likewise. * sysdeps/unix/sysv/linux/powerpc/Makefile (sysdep_routines): Remove rt_*. * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__syscall_*): Remove unused __syscall_ stubs. * sysdeps/unix/sysv/linux/sh/Makefile (sysdep_routines): Remove rt_*. * sysdeps/unix/sysv/linux/rt_sigaction.c: Removed. * sysdeps/unix/sysv/linux/rt_sigpending.c: Removed. * sysdeps/unix/sysv/linux/rt_sigprocmask.c: Removed. * sysdeps/unix/sysv/linux/rt_sigqueueinfo.c: Removed. * sysdeps/unix/sysv/linux/rt_sigreturn.c: Removed. * sysdeps/unix/sysv/linux/rt_sigsuspend.c: Removed. * sysdeps/unix/sysv/linux/rt_sigtimedwait.c: Removed. * sysdeps/unix/sysv/linux/s_pread64.c: Removed. * sysdeps/unix/sysv/linux/s_pwrite64.c: Removed. * sysdeps/unix/sysv/linux/alpha/gethostname.c: Remove unused __syscall_* prototypes. * sysdeps/unix/sysv/linux/alpha/ipc_priv.h: Likewise. * sysdeps/unix/sysv/linux/alpha/msgctl.c: Likewise. * sysdeps/unix/sysv/linux/alpha/semctl.c: Likewise. * sysdeps/unix/sysv/linux/alpha/shmctl.c: Likewise. * sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise. * sysdeps/unix/sysv/linux/i386/chown.c: Likewise. * sysdeps/unix/sysv/linux/i386/fchown.c: Likewise. * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise. * sysdeps/unix/sysv/linux/i386/fxstat.c: Likewise. * sysdeps/unix/sysv/linux/i386/getegid.c: Likewise. * sysdeps/unix/sysv/linux/i386/geteuid.c: Likewise. * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise. * sysdeps/unix/sysv/linux/i386/getgid.c: Likewise. * sysdeps/unix/sysv/linux/i386/getgroups.c: Likewise. * sysdeps/unix/sysv/linux/i386/getmsg.c: Likewise. * sysdeps/unix/sysv/linux/i386/xstat.c: Likewise. * sysdeps/unix/sysv/linux/i386/getresgid.c: Likewise. * sysdeps/unix/sysv/linux/i386/getresuid.c: Likewise. * sysdeps/unix/sysv/linux/i386/getrlimit.c: Likewise. * sysdeps/unix/sysv/linux/i386/getuid.c: Likewise. * sysdeps/unix/sysv/linux/i386/lchown.c: Likewise. * sysdeps/unix/sysv/linux/i386/lockf64.c: Likewise. * sysdeps/unix/sysv/linux/i386/lxstat.c: Likewise. * sysdeps/unix/sysv/linux/i386/putmsg.c: Likewise. * sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise. * sysdeps/unix/sysv/linux/i386/setfsuid.c: Likewise. * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise. * sysdeps/unix/sysv/linux/i386/setgroups.c: Likewise. * sysdeps/unix/sysv/linux/i386/setregid.c: Likewise. * sysdeps/unix/sysv/linux/i386/setresgid.c: Likewise. * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise. * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise. * sysdeps/unix/sysv/linux/i386/setrlimit.c: Likewise. * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise. * sysdeps/unix/sysv/linux/ia64/fxstat.c: Likewise. * sysdeps/unix/sysv/linux/ia64/lxstat.c: Likewise. * sysdeps/unix/sysv/linux/ia64/sigaction.c: Likewise. * sysdeps/unix/sysv/linux/ia64/sigpending.c: Likewise. * sysdeps/unix/sysv/linux/ia64/sigprocmask.c: Likewise. * sysdeps/unix/sysv/linux/ia64/sigsuspend.c: Likewise. * sysdeps/unix/sysv/linux/ia64/xstat.c: Likewise. * sysdeps/unix/sysv/linux/m68k/chown.c: Likewise. * sysdeps/unix/sysv/linux/mips/ftruncate64.c: Likewise. * sysdeps/unix/sysv/linux/mips/pread.c: Likewise. * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise. * sysdeps/unix/sysv/linux/mips/ptrace.c: Likewise. * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise. * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise. * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise. * sysdeps/unix/sysv/linux/mips/truncate64.c: Likewise. * sysdeps/unix/sysv/linux/mips/ustat.c: Likewise. * sysdeps/unix/sysv/linux/mips/xmknod.c: Likewise. * sysdeps/unix/sysv/linux/powerpc/chown.c: Likewise. * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/chown.c: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/lchown.c: Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/xstat.c: Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/fxstat.c: Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/lxstat.c: Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c: Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/sigpending.c: Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/sigprocmask.c: Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/sigpending.c: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c: Likewise. * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Likewise. * sysdeps/unix/sysv/linux/pwrite.c: Likewise. * sysdeps/unix/sysv/linux/execve.c: Likewise. * sysdeps/unix/sysv/linux/aio_sigqueue.c: Likewise. * sysdeps/unix/sysv/linux/reboot.c: Likewise. * sysdeps/unix/sysv/linux/_exit.c: Likewise. * sysdeps/unix/sysv/linux/ftruncate64.c: Likewise. * sysdeps/unix/sysv/linux/pwrite64.c: Likewise. * sysdeps/unix/sysv/linux/fxstat64.c: Likewise. * sysdeps/unix/sysv/linux/gai_sigqueue.c: Likewise. * sysdeps/unix/sysv/linux/readahead.c: Likewise. * sysdeps/unix/sysv/linux/getcwd.c: Likewise. * sysdeps/unix/sysv/linux/sigwait.c: Likewise. * sysdeps/unix/sysv/linux/getdents.c: Likewise. * sysdeps/unix/sysv/linux/readv.c: Likewise. * sysdeps/unix/sysv/linux/getpriority.c: Likewise. * sysdeps/unix/sysv/linux/sigaction.c: Likewise. * sysdeps/unix/sysv/linux/ipc_priv.h: Likewise. * sysdeps/unix/sysv/linux/llseek.c: Likewise. * sysdeps/unix/sysv/linux/sysctl.c: Likewise. * sysdeps/unix/sysv/linux/lxstat64.c: Likewise. * sysdeps/unix/sysv/linux/mmap64.c: Likewise. * sysdeps/unix/sysv/linux/ustat.c: Likewise. * sysdeps/unix/sysv/linux/poll.c: Likewise. * sysdeps/unix/sysv/linux/pread64.c: Likewise. * sysdeps/unix/sysv/linux/writev.c: Likewise. * sysdeps/unix/sysv/linux/pread.c: Likewise. * sysdeps/unix/sysv/linux/ptrace.c: Likewise. * sysdeps/unix/sysv/linux/sigpending.c: Likewise. * sysdeps/unix/sysv/linux/sigprocmask.c: Likewise. * sysdeps/unix/sysv/linux/sigqueue.c: Likewise. * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise. * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise. * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise. * sysdeps/unix/sysv/linux/truncate64.c: Likewise. * sysdeps/unix/sysv/linux/xmknod.c: Likewise. * sysdeps/unix/sysv/linux/xstat64.c: Likewise. 2003-09-02 Jakub Jelinek <jakub@redhat.com> * sysdeps/unix/sysv/linux/i386/sysdep.h (PSEUDO): Revert last change. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: New file. * sysdeps/unix/sysv/linux/sparc/syscalls.list: New file. * stdio-common/Makefile (CFLAGS-vprintf.c): Add -fexceptions. * intl/loadmsgcat.c: For _LIBC, call not cancelable versions of open, close, and read.
2003-09-02Update.Ulrich Drepper
2003-09-01 Jakub Jelinek <jakub@redhat.com> * Makefile (tests): Add tst-tls1. (module-names): Add tst-tls1mod{,a,b,c,d,e,f}. ($(objpfx)tst-tls1mod{,a,b,c,d,e,f}.so-no-z-defs): Set to yes. ($(objpfx)tst-tls1): New. ($(objpfx)tst-tls2.out): Likewise. (tests): Depend on $(objpfx)tst-tls2.out. * tst-tls1.c: New test. * tst-tls1.h: New. * tst-tls1mod.c: New. * tst-tls1moda.c: New. * tst-tls1modb.c: New. * tst-tls1modc.c: New. * tst-tls1modd.c: New. * tst-tls1mode.c: New. * tst-tls1modf.c: New. * tst-tls2.sh: New test.
2003-08-03Update.Ulrich Drepper
* sysdeps/pthread/createthread.c (do_clone): If __ASSUME_CLONE_STOPPED is not defined, do explicit synchronization. (create_thread): Do not lock pd->lock here. If __ASSUME_CLONE_STOPPED is not defined also unlock pd->lock for non-debugging case in case it is necessary. * pthread_create.c (start_thread): Always get and release pd->lock if __ASSUME_CLONE_STOPPED is not defined. (start_thread_debug): Removed. Adjust users. * allocatestack.c (allocate_stack): Always initialize lock if __ASSUME_CLONE_STOPPED is not defined. * Makefile (tests): Add tst-sched1. * tst-sched1.c: New file.
2003-07-31Update.Ulrich Drepper
2003-07-30 Jakub Jelinek <jakub@redhat.com> * elf/dl-reloc.c (_dl_allocate_static_tls): Don't return any value, call dl_signal_error directly. If already relocated, call GL(dl_init_static_tls) directly, otherwise queue it for later. (CHECK_STATIC_TLS): Undo 2003-07-24 change. * elf/rtld.c (dl_main): Initialize GL(dl_init_static_tls). * elf/dl-open.c (dl_open_worker): Call GL_dl_init_static_tls for all static TLS initializations delayed in _dl_allocate_static_tls. * elf/dl-support.c (_dl_init_static_tls): New variable. * include/link.h (struct link_map): Add l_need_tls_init. * sysdeps/generic/ldsodefs.h (_rtld_global): Add _dl_init_static_tls. (_dl_nothread_init_static_tls): New prototype. (_dl_allocate_static_tls): Adjust prototype. * elf/tls-macros.h (VAR_INT_DEF): Add alignment directive. elf_machine_rela_relative): Adjust. (CHECK_STATIC_TLS): _dl_allocate_static_tls can fail now.
2003-07-29* elf/Makefile (tests) [$(build-shared) = yes]:Roland McGrath
Depend on $(test-modules). * dlfcn/Makefile: Likewise.
2003-07-22Update.Ulrich Drepper
* include/stdio.h (__libc_fatal): Add libc_hidden_proto. * include/dlfcn.h (__libc_dlopen_mode, __libc_dlsym, __libc_dlclose): Likewise. * elf/dl-libc.c (__libc_dlopen_mode, __libc_dlsym, __libc_dlclose): Add libc_hidden_def. * sysdeps/generic/libc_fatal.c (__libc_fatal): Likewise. * sysdeps/posix/libc_fatal.c (__libc_fatal): Likewise. * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Likewise. * elf/Versions (libc): Export __libc_dlopen_mode@@GLIBC_PRIVATE, __libc_dlsym@@GLIBC_PRIVATE and __libc_dlclose@@GLIBC_PRIVATE. * libio/Versions (libc): Export __libc_fatal@@GLIBC_PRIVATE. * sysdeps/generic/unwind-dw2.c: Readd #ifs removed during last change. * sysdeps/generic/unwind.inc: Removed.
2003-07-22Update.Ulrich Drepper
2003-07-22 Jakub Jelinek <jakub@redhat.com> * include/resolv.h (__resp): Declare. Define to __libc_resp if in libc.so. (_res): If USE___THREAD, define to (*__resp). * resolv/res_libc.c (_res): Normal .bss variable with compat_symbol even if USE___THREAD. (__resp): New __thread variable. (__libc_resp): New alias. * resolv/Versions (libc): Export _res@GLIBC_2.0 even if USE_TLS && HAVE___THREAD. Export __resp@@GLIBC_PRIVATE. * sysdeps/generic/res-state.c (__res_state): Return __resp if USE___THREAD.
2003-07-21Update.Ulrich Drepper
2003-07-21 Ulrich Drepper <drepper@redhat.com> * Makerules (build-module-helper): Add -z defs unless explicitly said not to do it. * dlfcn/Makefile: Define various *-no-z-defs variables for test DSOs which has undefined symbols. * elf/Makefile: Likewise.
2003-07-20Update.Ulrich Drepper
2003-07-20 Ulrich Drepper <drepper@redhat.com> * Makefile (libpthread-routines): Add pthread_attr_getaffinity and pthread_attr_setaffinity. * Versions [libpthread] (GLIBC_2.3.3): Likewise. * sysdeps/unix/sysv/linux/pthread_attr_getaffinity.c: New file. * sysdeps/unix/sysv/linux/pthread_attr_setaffinity.c: New file. * pthread_attr_destroy.c: Free cpuset element if allocated. * pthread_create.c: Pass iattr as additional parameter to create_thread. * sysdeps/pthread/createthread.c: If attribute is provided and a new thread is created with affinity set or scheduling parameters, start thread with CLONE_STOPPED. * sysdeps/pthread/pthread.h: Declare pthread_attr_getaffinity and pthread_attr_setaffinity. * sysdeps/unix/sysv/linux/internaltypes.h (struct pthread_attr): Add cpuset element.
2003-07-11Update.Ulrich Drepper
* sysdeps/unix/sysv/linux/sigwait.c: Include string.h. * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise. * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise. * sysdeps/unix/sysv/linux/sleep.c (__sleep): Cast value to unsigned int before assigning to max to avoid warnings. 2003-07-11 Jakub Jelinek <jakub@redhat.com>
2003-07-01Update.Ulrich Drepper
* sysdeps/unix/sysv/linux/unwindbuf.sym: New file. * sysdeps/unix/sysv/linux/Makefile: Add rule to build unwindbuf.h.
2003-06-25Update.Ulrich Drepper
* include/time.h: Define CLOCK_IDFIELD_SIZE. * sysdeps/posix/clock_getres.c: Recognize thread CPU clock IDs. * sysdeps/unix/clock_gettime.c: Likewise. * sysdeps/unix/clock_settime.c: Likewise. * sysdeps/unix/clock_nanosleep.c (CPUCLOCK_P): Adjust for new clock id for thread CPU clocks.
2003-06-22Update.Ulrich Drepper
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-18Update.Ulrich Drepper
* sysdeps/unix/sysv/linux/x86_64/lowlevellock.h (lll_mutex_lock): Add ax to clobber list. (lll_mutex_cond_lock): Likewise. (lll_mutex_unlock): Likewise. (lll_lock): Likewise. (lll_unlock): Likewise.
2003-06-17Update.Ulrich Drepper
2003-06-17 Jakub Jelinek <jakub@redhat.com> * posix/regcomp.c (build_word_op): Use alnum instead of alpha class.
2003-06-17Update.Ulrich Drepper
* sysdeps/unix/clock_nanosleep.c (clock_nanosleep): nanosleep takes care of enabling cancellation. * sysdeps/pthread/aio_suspend.c (aio_suspend): Make aio_suspend cancelable. It's not correct to disable cancellation. Instead of a cleanup handler.
2003-06-17Update.Ulrich Drepper
2003-06-17 Ulrich Drepper <drepper@redhat.com> * tst-cancel4.c: Add tests for the socket and signal functions, pause. Also test early cancellation before the thread reaches the cancellation point. * Makefile: Compile forward.c with exceptions. * sysdeps/unix/sysv/linux/sleep.c: New file.
2003-06-16Update.Ulrich Drepper
* Makefile: Add CFLAGS definition to compile function wrappers duplicated from libc with exceptions. * tst-cancel4.c: Also check cancellation handlers.
2003-06-16Update.Ulrich Drepper
2003-06-16 Ulrich Drepper <drepper@redhat.com> * elf/rtld.c (dl_main): Use l_map_start not l_addr in Phdr computation so that prelinking wroks. * inet/netinet/ip6.h (IP6OPT_PAD1, IP6OPT_PADN): Define.
2003-06-08Update.Ulrich Drepper
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-06(CFLAGS-pthread_cancel.c): Define.Ulrich Drepper
2003-06-05Update.Ulrich Drepper
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-01Update.Ulrich Drepper
* test-skeleton.c (main): Request getopt to not reorder the command line.
2003-05-31Update.Ulrich Drepper
* Makefile (tests): Add tst-sem8 and tst-sem9. * tst-sem8.c: New file. * tst-sem9.c: New file. * sem_open.c: Fix creation of in_use record if the file exists but no internal record.
2003-05-30Update.Ulrich Drepper
* Makefile (tests): Add tst-signal6. * tst-signal6.c: New file.
2003-05-17Update.Ulrich Drepper
2003-05-17 Ulrich Drepper <drepper@redhat.com> * sem_open.c: Fix one endless loop. Implement correct semantics wrt opening the same semaphore more then once. * sem_close.c: Adjust for sem_open change. * semaphoreP.h: Include <semaphore.h>. Define struct inuse_sem. Declare __sem_mappings, __sem_mappings_lock, __sem_search. * Makefile (tests): Add tst-sem7. * tst-sem7.c: New file.
2003-05-14Update.Ulrich Drepper
2003-05-14 Ulrich Drepper <drepper@redhat.com> * Makefile ($(objpfx)$(multidir)): Add rule to create the directory.
2003-05-14Update.Ulrich Drepper
2003-05-14 Jakub Jelinek <jakub@redhat.com> * elf/rtld.c (dl_main): For LD_TRACE_PRELINKING print search scope even if no DT_NEEDED is present.
2003-05-10Update.Ulrich Drepper
* posix/sched.h: Change prototypes of sched_getaffinity and sched_setaffinity. Define CPU_SET, CPU_CLR, CPU_ISSET, and CPU_ZERO. * sysdeps/generic/sched_getaffinity.c: Adjust definition. * sysdeps/generic/sched_setaffinity.c: Likewise. * sysdeps/generic/bits/sched.h: Define __CPU_SETSIZE, __NCPUBITS, __CPUELT, __CPUMASK, cpu_set_t, __cpu_mask, __CPU_ZERO, __CPU_SET, __CPU_CLR, and __CPU_ISSET. * sysdeps/unix/sysv/linux/bits/sched.h: Likewise. * sysdeps/unix/sysv/linux/sched_getaffinity.c: New file. * sysdeps/unix/sysv/linux/sched_setaffinity.c: New file. * include/atomic.h (atomic_exchange_acq): Renamed from atomic_exchange. (atomic_exchange_rel): New #define. * sysdeps/ia64/bits/atomic.h: Likewise. * sysdeps/i386/i486/bits/atomic.h (atomic_exchange_acq): Renamed from atomic_exchange. * sysdeps/m68k/m68020/bits/atomic.h: Likewise. * sysdeps/powerpc/bits/atomic.h: Likewise. * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h: Likewise. * sysdeps/sparc/sparc64/bits/atomic.h: Likewise. * sysdeps/x86_64/bits/atomic.h: Likewise. * csu/tst-atomic.c: Use atomic_exchange_acq instead of atomic_exchange.
2003-05-04* csu/Makefile ($(csu-dummies) target rule): Don't use a temp C file.Roland McGrath
Depend on $(before-compile).
2003-04-282003-04-26 Roland McGrath <roland@redhat.com>Roland McGrath
* Makefile ($(test-modules)): Depend on $(common-objpfx)shlib.lds.
2003-04-13Update.Ulrich Drepper
2003-04-13 Ulrich Drepper <drepper@redhat.com> * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S: Add unwind info. * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S: Likewise. * Makefile: Make sure all cancellation points are compiled with exception and asynchronous unwind tables.
2003-04-12Update.Ulrich Drepper
2003-04-11 Ulrich Drepper <drepper@redhat.com> * sysdeps/generic/libc-start.c: Cleanup MAIN_AUXVEC_ARG handling. Remove HAVE_CANCELBUF code. Replace with code using the new initializers for unwind-based cleanup handling. * sysdeps/generic/unwind.h: Update from latest gcc version. * sysdeps/unix/sysv/linux/i386/sysdep.h: Define labels in a few places to allow unwind data generation. * sysdeps/i386/bits/setjmp.h: Allow file to be included multiple times. * sysdeps/x86_64/bits/setjmp.h: Likewise. * sysdeps/sh/bits/setjmp.h: Likewise. * sysdeps/powerpc/bits/setjmp.h: Likewise. * sysdeps/unix/sysv/linux/ia64/bits/setjmp.h: Likewise. * sysdeps/alpha/bits/setjmp.h: Likewise.
2003-04-122003-04-11 Roland McGrath <roland@redhat.com>Roland McGrath
* 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-09Update.Ulrich Drepper
2003-04-09 Ulrich Drepper <drepper@redhat.com> * Makefile (tests): Add tst-detach1. * tst-detach1.c: New file.
2003-04-04Update.Ulrich Drepper
2003-04-03 Ulrich Drepper <drepper@redhat.com> * init.c (sigcancel_handler): Don't set EXITING_BIT here. * libc-cancellation.c (__libc_enable_asynccancel): Likewise. * pthreadP.h (__do_cancel): Set EXITING_BIT here. * Makefile (tests): Add tst-cancel11. * tst-cancel11.c: New file.
2003-04-02(tests): Add tst-tsd4.Ulrich Drepper
2003-04-02Update.Ulrich Drepper
2003-04-01 Ulrich Drepper <drepper@redhat.com> * pthread_create.c (deallocate_tsd): Clear/free memory after the last round, not the first. Use specific_used flag instead of local found_nonzero variable. Use THREAD_[SG]ETMEM where possible. (__free_tcb): Don't call deallocate_tsd here. (start_thread): Call deallocate_tsd here. * pthread_setspecific.c: Set specific_used flag really only when needed. * Makefile (tests): Add tst-tsd3.c * tst-tsd3.c: New file.
2003-04-01Update.Ulrich Drepper
* 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-03-29(libpthread-routines): Add pthread_atfork. ↵Ulrich Drepper
(libpthread-static-only-routines): Add pthread_atfork.
2003-03-19Update.Ulrich Drepper
* Makefile (tests): Add tst-cond11. * tst-cond11.c: New file.
2003-03-18Update.Ulrich Drepper
2003-03-18 Ulrich Drepper <drepper@redhat.com> * pthread_condattr_getclock.c: New file. * pthread_condattr_setclock.c: New file. * sysdeps/pthread/pthread.h: Declare these new functions. * Versions [GLIBC_2.3.3] (libpthread): Add the new functions. * Makefile (libpthread-routines): Add the new functions. * sysdeps/unix/sysv/linux/internaltypes.h (struct pthread_condattr): Renamed field to value. Document use of the bits. * pthread_condattr_getpshared.c: Adjust for struct pthread_condattr change. * pthread_condattr_setpshared.c: Likewise. * sysdeps/unix/sysv/linux/lowlevelcond.sym: Add cond_clock symbol. * sysdeps/unix/sysv/linux/i386/bits/pthreadtypes.h (pthread_cond_t): Add __clock field. * 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/i386/i486/pthread_cond_timedwait.S: Implement clock selection. * sysdeps/pthread/pthread_cond_timedwait.c: Likewise. * pthread-errnos.sym: Add ENOSYS. * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define _POSIX_CLOCK_SELECTION. * sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S: Remove invalid .size directive.
2003-03-14* allocatestack.c (__stack_user): Use hidden_data_def.Roland McGrath
* pthread_create.c (__pthread_keys): Likewise. * init.c [__powerpc__] (__NR_set_tid_address): Define it. * tst-fork4.c: New file. * Makefile (tests): Add it.