aboutsummaryrefslogtreecommitdiff
path: root/nptl
AgeCommit message (Collapse)Author
2009-06-12Implement pthread_sigqueue.Ulrich Drepper
The kernel from 2.3.31 on supports the rt_tgsigqueueinfo syscall. Use it to implement the non-standard extension which, like sigqueue, can pass additional data to the receiving thread.
2009-06-11Fix futex syscall parameter for x86 absolute timeout waits.Bryan Kadzban
This affects only installations compiled for kernels older than 2.6.18.
2009-05-16libc-cancellation.c cleanup.Ulrich Drepper
The unrelated function __libc_cleanup_routine should not be in this file. Move it into its own file.
2009-05-16Unify source for async cancel handling.Ulrich Drepper
Unify all three places where we enable async cancellation for syscalls. Optimize a bit.
2009-05-16Rename nptl/init.c to nptl/nptl-init.c.Ulrich Drepper
Needed to allow overwriting architectures init.c in csu and nptl individually. Fixes BZ #9924.
2009-05-15ChangeLog entries incorrectly applied.Ulrich Drepper
2009-05-15Add missing export of fallocate64 on 32-bit platforms.Jakub Jelinek
Due to a pasto the fallocate64 interface, introduced in glibc 2.10, isn't exported for 32-bit Linux platforms. It is too late for this now so exported them for glibc 2.11.
2009-05-15Don't try to cleanup libselinux and libaudit.Jakub Jelinek
Because we are not shutting down the other threads first another thread might work on a query before the process shuts down. In this case the now uninitialized libselinux and libaudit might be used. Just don't free the resources. It's not necessary anyway because the process is about to terminate.
2009-05-15Fix change to prevent cancel signal in unsafe places.Ulrich Drepper
The bits tested to decide when to delay the return when switching off async cancel mode were wrong. Fix that. Also close a race condition in pthread_cancel where the bit indicating the cancellation is unconditionally set even if the cancel type might have changed.
2009-05-15No cancel signal in unsafe places.Ulrich Drepper
When disabling async cancellation we cannot return from the function call if the thread is canceled. This happens when the cancel bits have been set before async cancel is disabled but the signal hasn't been sent/received yet. Delay for as long as necessary since otherwise the signal might be received in an unsafe context.
2009-04-29Add missing CHangeLog entry.Jakub Jelinek
2009-01-07 Ulrich Drepper <drepper@redhat.com> * (in_flight_stack): New variable. (stack_list_del): New function. Use instead of list_del. (stack_list_add): New function. Use instead of list_add when adding to stack_cache and stack_used lists. (__reclaim_stacks): Complete operations on stack_cache and stack_used lists when the fork call interrupted another thread.
2009-04-27* cancellation.c (__pthread_disable_asynccancel): Use THREAD_ATOMIC_ANDUlrich Drepper
is available. * libc-cancellation.c (__libc_disable_asynccancel): Likewise. * sysdeps/x86_64/tls.h: Define THREAD_ATOMIC_AND. * sysdeps/i386/tls.h: Likewise. (tcbhead_t): Add __private_tm member.
2009-04-26* sem_open.c (sem_open): Rewrite initialization of initsem toUlrich Drepper
avoid warnings.
2009-04-26* sysdeps/unix/sysv/linux/libc_pthread_init.c (__libc_pthread_init):Ulrich Drepper
Avoid warning by using may_alias attribute on ptrhack.
2009-04-23[BZ #9963]Ulrich Drepper
2009-04-22 Ulrich Drepper <drepper@redhat.com> [BZ #9963] * locales/en_PH: Fix LC_PAPER. * locales/es_CL: Likewise. * locales/es_CO: Likewise. * locales/es_MX: Likewise. * locales/es_US: Likewise. * locales/es_VE: Likewise. * locales/fil_PH: Likewise. * locales/ik_CA: Likewise. * locales/iu_CA: Likewise. * locales/tl_PH: Likewise.
2009-04-23* pthread_attr_setschedparam.c (__pthread_attr_setschedparam):Ulrich Drepper
Check policy and priority for validity. Patch mostly by Zhang Xiliang <zhangxiliang@cn.fujitsu.com>.
2009-03-15[BZ #5807]Ulrich Drepper
2009-03-15 Ulrich Drepper <drepper@redhat.com> [BZ #5807] * string/strlen.c (strlen): Fix omission in the expression to test for NUL bytes.
2009-03-10* init.c (nptl_freeres): Compile only for SHARED.Ulrich Drepper
2009-03-09* sysdeps/unix/sysv/linux/sparc/lowlevellock.h: Define cvs/fedora-glibc-20090309T1421Jakub Jelinek
FUTEX_WAIT_BITSET, FUTEX_WAKE_BITSET, FUTEX_CLOCK_REALTIME and FUTEX_BITSET_MATCH_ANY. 2009-03-09 Jakub Jelinek <jakub@redhat.com> * sysdeps/unix/sysv/linux/sparc/lowlevellock.h: Define FUTEX_WAIT_BITSET, FUTEX_WAKE_BITSET, FUTEX_CLOCK_REALTIME and FUTEX_BITSET_MATCH_ANY.
2009-02-28* Makeconfig (%.v.i): Depend on Makeconfig.Roland McGrath
Exclude % lines from initial #-comment removal.
2009-02-26* wctype/wctype.h: The *_l functions are in POSIX 2008.Ulrich Drepper
* wcsmbs/wchar.h: mbsnrtowcs, open_wmemstream, wcpcpy, wcpncpy, wcscasecmp, wcsdup, wcsncasecmp, wcsnlen, wcsnrtombs, wcscasecmp_l, wcsncasecmp_l, wcscoll_l, and wcsxfrm_l. * sysdeps/mach/hurd/bits/posix_opt.h: Reset value of macros from 200112L to 200809L. * sysdeps/unix/sysv/linux/bits/posix_opt.h: Likewise. * posix/getconf.c (vars): Add _SC_THREAD_ROBUST_PRIO_INHERIT and _SC_THREAD_ROBUST_PRIO_PROTECT entries. * bits/confname.h: Add _SC_THREAD_ROBUST_PRIO_INHERIT and _SC_THREAD_ROBUST_PRIO_PROTECT. * posix/unistd.h: fexecve is in POSIX 2008. * time/time.h: strftime_l is in POSIX 2008. * io/sys/stat.h: futimens is in POSIX 2008. * string/strings.h: strcasecmp_l and strncasecmp_l are in POSIX 2008. * string/string.h: stpcpy, stpncpy, strndup, strnlen, strsignal, strcoll_l, strerror_l, and strxfrm_l are in POSIX 2008. * stdlib/stdlib.h: mkdtemp is in POSIX 2008.
2009-02-26* locale/langinfo.h: nl_langinfo_l is in POSIX 2008.Ulrich Drepper
* locale/xlocale.h: Define locale_t type. * locale/locale.h: duplocale, freelocale, newlocale, uselocale are in POSIX 2008. Don't define locale_t here. * stdlib/monetary.h: strfmon_l is in POSIX 2008. * signal/signal.h: Declare psignal and psiginfo for POSIX 2008. * stdio-common/psiginfo.c: New file. * stdio-common/psiginfo-data.h: New file. * stdio-common/psiginfo-define.h: New file. * stdio-common/Makefile (routines): Add psiginfo. * stdio-common/Versions: Export psiginfo for GLIBC_2.10.
2009-02-26* ctype/ctype.h: The *_l functions are in POSIX 2008.Ulrich Drepper
* dirent/dirent.h: alphasort, dirfd, scandir, and fdopendir are in POSIX 2008. /proc/sys/kernel/rtsig_max doesn't exist anymore, use getrlimit
2009-02-24* sysdeps/unix/sysv/linux/sysconf.c (__sysconf):Ulrich Drepper
/proc/sys/kenrel/rtsig_max doesn't exist anymore, use getrlimit instead.
2009-02-24* io/sys/stat.h: The lstat functions have been mandatory since 2001.Ulrich Drepper
2009-02-13* sysdeps/unix/sysv/linux/sh/lowlevellock.S: DefineUlrich Drepper
LOAD_FUTEX_WAIT_ABS even if (FUTEX_WAIT == 0).
2009-01-29* sysdeps/pthread/unwind-forcedunwind.c: Encrypt all functionUlrich Drepper
pointer variables.
2009-01-29* allocatestack.c (__free_stacks): Renamed from free_stacks.Ulrich Drepper
(__free_stack_cache): Removed. Change callers to call __free_stacks. * init.c (nptl_freeres): New function. (pthread_functions): Initialize ptr_freeres to nptl_freeres. * pthreadP.h: Don't declare __free_stack_cache. Declare __free_stacks. * sysdeps/pthread/unwind-forcedunwind.c (libgcc_s_handle): New variable. (pthread_cancel_init): Depend in libgcc_s_handle for decision to load DSO. Assign last. (__unwind_freeres): New function. * allocatestack.c (__reclaim_stacks): Reset in_flight_stack later for better debugging. No need to use stack_list_add here.
2009-01-28* sysdeps/unix/sysv/linux/sh/sysdep.h (INTERNAL_SYSCALL):Ulrich Drepper
Add "t" to clobber list. (INTERNAL_SYSCALL_NCS): Likewise.
2009-01-25* pthread_mutex_lock.c (__pthread_mutex_lock): Remove unused label out.Ulrich Drepper
2009-01-08* sysdeps/pthread/list.h (list_add): Initialize new element first.Ulrich Drepper
(list_add_tail): Removed.
2009-01-08* resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr2_r): Check andUlrich Drepper
adjust the buffer alignment.
2009-01-07(in_flight_stack): New variable. (stack_list_del): New function. Use ↵Ulrich Drepper
instead of list_del. (stack_list_add): New function. Use instead of list_add when adding to stack_cache and stack_used lists. (__reclaim_stacks): Complete operations on stack_cache and stack_used lists when the fork call interrupted another thread.
2009-01-04* init.c (__pthread_initialize_minimal_internal): Optimize testUlrich Drepper
FUTEX_CLOCK_REALTIME a bit.
2009-01-03(__lll_timedlock_wait): Use FUTEX_WAIT_BITSET|FUTEX_CLOCK_REALTIMEUlrich Drepper
Use FUTEX_WAIT_BITSET|FUTEX_CLOCK_REALTIME instead of computing
2009-01-03* init.c (__pthread_initialize_minimal_internal): Cheat a bit byUlrich Drepper
only passing five parameters to FUTEX_WAIT_BITSET call. * sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S (__lll_timedlock_wait): Use FUTEX_WAIT_BITSET|FUTEX_CLOCK_READTIME instead of computing relative timeout.
2009-01-03(__lll_timedlock_wait): Use FUTEX_WAIT_BITSET|FUTEX_CLOCK_READTIME instead ↵Ulrich Drepper
of computing relative timeout.
2009-01-03* sysdeps/unix/sysv/linux/i386/sysdep.h: Describe 6th argumentUlrich Drepper
handling.
2009-01-03* init.c (__pthread_initialize_minimal_internal): Check forUlrich Drepper
FUTEX_CLOCK_REALTIME flag. * sysdeps/unix/sysv/linux/x86_64/lowlevellock.S (__lll_timedlock_wait): Use FUTEX_WAIT_BITSET|FUTEX_CLOCK_READTIME instead of computing relative timeout.
2009-01-03* sysdeps/unix/sysv/linux/x86_64/lowlevellock.h: DefineUlrich Drepper
FUTEX_CLOCK_REALTIME and FUTEX_BITSET_MATCH_ANY. * sysdeps/unix/sysv/linux/i386/lowlevellock.h: 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.
2008-12-29* sysdeps/x86_64/bits/select.h: New file.Ulrich Drepper
2008-12-12* pthread_mutex_lock.c (__pthread_mutex_lock): Handle only theUlrich Drepper
fast path here, for robust/PI/PP mutexes call __pthread_mutex_lock_full. Don't use switch, instead use a series of ifs according to their probability. (__pthread_mutex_lock_full): New function. * pthread_mutex_unlock.c: Include assert.h. (__pthread_mutex_unlock_usercnt): Handle only the fast path here, for robust/PI/PP mutexes call __pthread_mutex_unlock_full. Don't use switch, instead use a series of ifs according to their probability. (__pthread_mutex_unlock_full): New function. * sysdeps/unix/sysv/linux/pthread_mutex_cond_lock.c (__pthread_mutex_lock_full): Define.
2008-12-09[BZ #6545]Ulrich Drepper
* sysdeps/unix/sysv/linux/bits/socket.h (SCM_CREDENTIALS): Make available only for __USE_GNU.
2008-12-08* sysdeps/x86_64/tls.h (tcbhead_t): Add fields reserved for TMUlrich Drepper
implementation. Add necessary padding and. * descr.h (struct pthread): Increase padding for tcbhead_t to 24 words.
2008-12-08(struct pthread): Increase padding for tcbhead_t to 24 words.Ulrich Drepper
2008-12-08Move 2 ChangeLog entries to correct ChangeLog.Jakub Jelinek
2008-11-24 Arkadiusz Miśkiewicz <arekm@maven.pl> * sysdeps/i386/dl-tlsdesc.S (_dl_tlsdesc_dynamic): Use LOAD_PIC_REG instead of doing things manually. 2008-11-26 Chris Steel <chris.steel.lnx@googlemail.com> * posix/regex_internal.h (build_wcs_upper_buffer): Return type is reg_error_t.
2008-12-06* sysdeps/i386/dl-tlsdesc.S (_dl_tlsdesc_dynamic): Use LOAD_PIC_REGUlrich Drepper
instead of doing things manually.
2008-12-06* posix/regex_internal.h (build_wcs_upper_buffer):Ulrich Drepper
Return type is reg_error_t.
2008-12-05* sysdeps/unix/sysv/linux/sh/lowlevellock.h: Define FUTEX_WAIT_BITSETUlrich Drepper
and FUTEX_WAKE_BITSET.
2008-12-03* resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname3_r): RecognizeUlrich Drepper
ESRCH return value. (_nss_dns_gethostbyname4_r): Likewise. * resolv/res_init.c (__res_vinit): Initialize nscount to zero. * sysdeps/posix/getaddrinfo.c (gaih_inet): In case we use gethostbyname4_r, we don't have a separate IPv6 status, so copy the no_data variable.