diff options
author | Ulrich Drepper <drepper@redhat.com> | 2003-07-20 19:28:08 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2003-07-20 19:28:08 +0000 |
commit | 3f56243af428c05ce6c17d639378d0c17702a61c (patch) | |
tree | e7dcefb1157e6e1e4e67ad09f359e891f8316eb1 | |
parent | 2a04c802bb972baad3b92ff459b770e8f54aece6 (diff) | |
download | glibc-3f56243af428c05ce6c17d639378d0c17702a61c.tar glibc-3f56243af428c05ce6c17d639378d0c17702a61c.tar.gz glibc-3f56243af428c05ce6c17d639378d0c17702a61c.tar.bz2 glibc-3f56243af428c05ce6c17d639378d0c17702a61c.zip |
Update.
* sysdeps/unix/sysv/linux/bits/sched.h (__CPU_ZERO): Fix typo.
-rw-r--r-- | ChangeLog | 2 | ||||
-rw-r--r-- | linuxthreads/ChangeLog | 7 | ||||
-rw-r--r-- | linuxthreads/sysdeps/pthread/bits/libc-lock.h | 18 |
3 files changed, 27 insertions, 0 deletions
@@ -6,6 +6,8 @@ 2003-07-19 Ulrich Drepper <drepper@redhat.com> + * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_ZERO): Fix typo. + * sysdeps/unix/sysv/linux/syscalls.list: Remove affinity syscalls. 2003-07-16 Daniel Jacobowitz <drow@mvista.com> diff --git a/linuxthreads/ChangeLog b/linuxthreads/ChangeLog index 9cd3e94866..128cb1f8ad 100644 --- a/linuxthreads/ChangeLog +++ b/linuxthreads/ChangeLog @@ -1,3 +1,10 @@ +2003-07-20 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/pthread/bits/libc-lock.h: Define __libc_cleanup_push and + __libc_cleanup_pop. + + * tst-cancel-wrappers.sh: lseek and llseek are no cancellation points. + 2003-07-14 Ulrich Drepper <drepper@redhat.com> * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep-cancel.h: Fix typo diff --git a/linuxthreads/sysdeps/pthread/bits/libc-lock.h b/linuxthreads/sysdeps/pthread/bits/libc-lock.h index a9a98c52ff..2697a18371 100644 --- a/linuxthreads/sysdeps/pthread/bits/libc-lock.h +++ b/linuxthreads/sysdeps/pthread/bits/libc-lock.h @@ -250,6 +250,20 @@ typedef pthread_key_t __libc_key_t; _pthread_cleanup_pop_restore (&_buffer, (DOIT)); \ } +#define __libc_cleanup_push(fct, arg) \ + { struct _pthread_cleanup_buffer _buffer; \ + int _avail = _pthread_cleanup_push != NULL; \ + if (_avail) { \ + _pthread_cleanup_push (&_buffer, (fct), (arg)); \ + } + +#define __libc_cleanup_pop(execute) \ + if (_avail) { \ + _pthread_cleanup_pop (&_buffer, execute); \ + } \ + } + + /* Create thread-specific key. */ #define __libc_key_create(KEY, DESTRUCTOR) \ (__libc_maybe_call (__pthread_key_create, (KEY, DESTRUCTOR), 1)) @@ -352,6 +366,8 @@ weak_extern (BP_SYM (__pthread_getspecific)) weak_extern (BP_SYM (__pthread_once)) weak_extern (__pthread_initialize) weak_extern (__pthread_atfork) +weak_extern (BP_SYM (_pthread_cleanup_push)) +weak_extern (BP_SYM (_pthread_cleanup_pop)) weak_extern (BP_SYM (_pthread_cleanup_push_defer)) weak_extern (BP_SYM (_pthread_cleanup_pop_restore)) # else @@ -377,6 +393,8 @@ weak_extern (BP_SYM (_pthread_cleanup_pop_restore)) # pragma weak __pthread_atfork # pragma weak _pthread_cleanup_push_defer # pragma weak _pthread_cleanup_pop_restore +# pragma weak _pthread_cleanup_push +# pragma weak _pthread_cleanup_pop # endif #endif |