aboutsummaryrefslogtreecommitdiff
path: root/linuxthreads
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2003-09-02 00:49:47 +0000
committerUlrich Drepper <drepper@redhat.com>2003-09-02 00:49:47 +0000
commitc503d3dc512a5f7947d5b3d69d784028db3a639a (patch)
tree3605efc02f1ec840bfa3a366e4a424998d345511 /linuxthreads
parentc874a32e887dd78c1480dcb32052f708dcd5c1e8 (diff)
downloadglibc-c503d3dc512a5f7947d5b3d69d784028db3a639a.tar
glibc-c503d3dc512a5f7947d5b3d69d784028db3a639a.tar.gz
glibc-c503d3dc512a5f7947d5b3d69d784028db3a639a.tar.bz2
glibc-c503d3dc512a5f7947d5b3d69d784028db3a639a.zip
Update.
2003-09-01 Thorsten Kukuk <kukuk@suse.de> * nis/nss_compat/compat-spwd.c (getspnam_plususer): Return NSS_STATUS_SUCCESS if entry was found. (getspent_next_file): Store user in blacklist after entry was found, use innetgr. 2003-09-01 Jakub Jelinek <jakub@redhat.com> * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise.c: New. * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise64.c: New. * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Fix tls offset computation for TCB_AT_TP. Support l_firstbyte_offset != 0 for DTV_AT_TP, optimize.
Diffstat (limited to 'linuxthreads')
-rw-r--r--linuxthreads/ChangeLog9
-rw-r--r--linuxthreads/Versions3
-rw-r--r--linuxthreads/forward.c9
-rw-r--r--linuxthreads/internals.h3
-rw-r--r--linuxthreads/pthread.c1
-rw-r--r--linuxthreads/sysdeps/pthread/pthread-functions.h2
6 files changed, 26 insertions, 1 deletions
diff --git a/linuxthreads/ChangeLog b/linuxthreads/ChangeLog
index b6a79ea45e..20f59046d2 100644
--- a/linuxthreads/ChangeLog
+++ b/linuxthreads/ChangeLog
@@ -17,6 +17,15 @@
* tst-tls1modf.c: New.
* tst-tls2.sh: New test.
+ * internals.h (__pthread_cond_timedwait): New prototype.
+ * sysdeps/pthread/pthread-functions.h (struct pthread_functions): Add
+ ptr___pthread_cond_timedwait.
+ * pthread.c (__pthread_functions): Initialize them.
+ * forward.c (pthread_cond_timedwait@GLIBC_2.0,
+ pthread_cond_timedwait@@GLIBC_2.3.2): New forwards.
+ * Versions (libc): Export pthread_cond_timedwait@GLIBC_2.0,
+ pthread_cond_timedwait@@GLIBC_2.3.2.
+
2003-08-27 Ulrich Drepper <drepper@redhat.com>
* sysdeps/pthread/pthread.h: Don't mark pthread_exit,
diff --git a/linuxthreads/Versions b/linuxthreads/Versions
index e10826cb46..423b5ecedb 100644
--- a/linuxthreads/Versions
+++ b/linuxthreads/Versions
@@ -7,6 +7,7 @@ libc {
pthread_attr_setschedparam; pthread_attr_setschedpolicy;
pthread_attr_setscope; pthread_cond_broadcast; pthread_cond_destroy;
pthread_cond_init; pthread_cond_signal; pthread_cond_wait;
+ pthread_cond_timedwait;
pthread_condattr_destroy; pthread_condattr_init; pthread_equal;
pthread_exit; pthread_getschedparam; pthread_mutex_destroy;
pthread_mutex_init; pthread_mutex_lock; pthread_mutex_unlock;
@@ -20,7 +21,7 @@ libc {
# Changed pthread_cond_t.
pthread_cond_init; pthread_cond_destroy;
pthread_cond_wait; pthread_cond_signal;
- pthread_cond_broadcast;
+ pthread_cond_broadcast; pthread_cond_timedwait;
}
GLIBC_PRIVATE {
# Internal libc interface to libpthread
diff --git a/linuxthreads/forward.c b/linuxthreads/forward.c
index 6cc2f99aac..46cf53893e 100644
--- a/linuxthreads/forward.c
+++ b/linuxthreads/forward.c
@@ -128,6 +128,15 @@ compat_symbol (libc, __pthread_cond_wait_2_0, pthread_cond_wait, GLIBC_2_0);
#endif
versioned_symbol (libc, __pthread_cond_wait, pthread_cond_wait, GLIBC_2_3_2);
+FORWARD (__pthread_cond_timedwait,
+ (pthread_cond_t *cond, pthread_mutex_t *mutex,
+ const struct timespec *abstime), (cond, mutex, abstime), 0)
+#if SHLIB_COMPAT(libc, GLIBC_2_0, GLIBC_2_3_2)
+strong_alias (__pthread_cond_timedwait, __pthread_cond_timedwait_2_0)
+compat_symbol (libc, __pthread_cond_timedwait_2_0, pthread_cond_timedwait, GLIBC_2_0);
+#endif
+versioned_symbol (libc, __pthread_cond_timedwait, pthread_cond_timedwait, GLIBC_2_3_2);
+
FORWARD (pthread_equal, (pthread_t thread1, pthread_t thread2),
(thread1, thread2), 1)
diff --git a/linuxthreads/internals.h b/linuxthreads/internals.h
index 69923e9b77..a5ec8b9284 100644
--- a/linuxthreads/internals.h
+++ b/linuxthreads/internals.h
@@ -354,6 +354,9 @@ extern int __pthread_cond_init (pthread_cond_t *cond,
const pthread_condattr_t *cond_attr);
extern int __pthread_cond_destroy (pthread_cond_t *cond);
extern int __pthread_cond_wait (pthread_cond_t *cond, pthread_mutex_t *mutex);
+extern int __pthread_cond_timedwait (pthread_cond_t *cond,
+ pthread_mutex_t *mutex,
+ const struct timespec *abstime);
extern int __pthread_cond_signal (pthread_cond_t *cond);
extern int __pthread_cond_broadcast (pthread_cond_t *cond);
extern int __pthread_condattr_init (pthread_condattr_t *attr);
diff --git a/linuxthreads/pthread.c b/linuxthreads/pthread.c
index f261f8e8f4..5d5368f4d7 100644
--- a/linuxthreads/pthread.c
+++ b/linuxthreads/pthread.c
@@ -260,6 +260,7 @@ struct pthread_functions __pthread_functions =
.ptr___pthread_cond_init = __pthread_cond_init,
.ptr___pthread_cond_signal = __pthread_cond_signal,
.ptr___pthread_cond_wait = __pthread_cond_wait,
+ .ptr___pthread_cond_timedwait = __pthread_cond_timedwait,
.ptr_pthread_equal = __pthread_equal,
.ptr___pthread_exit = __pthread_exit,
.ptr_pthread_getschedparam = __pthread_getschedparam,
diff --git a/linuxthreads/sysdeps/pthread/pthread-functions.h b/linuxthreads/sysdeps/pthread/pthread-functions.h
index f47b46ff6e..e2d17f78c5 100644
--- a/linuxthreads/sysdeps/pthread/pthread-functions.h
+++ b/linuxthreads/sysdeps/pthread/pthread-functions.h
@@ -54,6 +54,8 @@ struct pthread_functions
const pthread_condattr_t *);
int (*ptr___pthread_cond_signal) (pthread_cond_t *);
int (*ptr___pthread_cond_wait) (pthread_cond_t *, pthread_mutex_t *);
+ int (*ptr___pthread_cond_timedwait) (pthread_cond_t *, pthread_mutex_t *,
+ const struct timespec *);
int (*ptr_pthread_equal) (pthread_t, pthread_t);
void (*ptr___pthread_exit) (void *);
int (*ptr_pthread_getschedparam) (pthread_t, int *, struct sched_param *);