summary refs log tree commit diff
path: root/nptl/pthread_mutex_timedlock.c
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2006-07-31 05:58:51 +0000
committerRoland McGrath <roland@gnu.org>2006-07-31 05:58:51 +0000
commitb894c2ea7e9dbf9d777555a2e1a917f5abcbb550 (patch)
tree2329d7803837f09fe25bd3471fa38dc86568598c /nptl/pthread_mutex_timedlock.c
parentb32e6700d0a114c0132bd94cc1b49332a364dc8c (diff)
downloadglibc-b894c2ea7e9dbf9d777555a2e1a917f5abcbb550.tar.gz
glibc-b894c2ea7e9dbf9d777555a2e1a917f5abcbb550.tar.xz
glibc-b894c2ea7e9dbf9d777555a2e1a917f5abcbb550.zip
* sysdeps/unix/sysv/linux/ia64/sigsuspend.c: File removed. cvs/fedora-glibc-20060731T0706
	* sysdeps/unix/sysv/linux/x86_64/sigsuspend.c: File removed.
	* sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: File removed.
	* sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c: File removed.

	* sysdeps/unix/sysv/linux/not-cancel.h (pause_not_cancel): New macro.
	(nanosleep_not_cancel): New macro.
	(sigsuspend_not_cancel): new macro.
	* sysdeps/unix/sysv/linux/sigsuspend.c [__ASSUME_REALTIME_SIGNALS]
	(do_sigsuspend): Define as inline.
	(__sigsuspend): Always use do_sigsuspend.
	[! NO_CANCELLATION] (__sigsuspend_nocancel): New function.
	* include/signal.h: Declare __sigsuspend_nocancel.
	* sysdeps/posix/pause.c
	[! NO_CANCELLATION] (__pause_nocancel): New function.

	* include/unistd.h (__pause_nocancel): Add attribute_hidden.
	* include/time.h (__nanosleep_nocancel): Likewise.
Diffstat (limited to 'nptl/pthread_mutex_timedlock.c')
-rw-r--r--nptl/pthread_mutex_timedlock.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/nptl/pthread_mutex_timedlock.c b/nptl/pthread_mutex_timedlock.c
index 12f6c997bb..dcff4f81a8 100644
--- a/nptl/pthread_mutex_timedlock.c
+++ b/nptl/pthread_mutex_timedlock.c
@@ -19,8 +19,10 @@
 
 #include <assert.h>
 #include <errno.h>
+#include <time.h>
 #include "pthreadP.h"
 #include <lowlevellock.h>
+#include <not-cancel.h>
 
 
 int
@@ -281,7 +283,7 @@ pthread_mutex_timedlock (mutex, abstime)
 			--reltime.tv_sec;
 		      }
 		    if (reltime.tv_sec >= 0)
-		      while (__nanosleep_nocancel (&reltime, &reltime) != 0)
+		      while (nanosleep_not_cancel (&reltime, &reltime) != 0)
 			continue;
 
 		    return ETIMEDOUT;