summary refs log tree commit diff
path: root/nptl/sysdeps
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/sysdeps
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/sysdeps')
-rw-r--r--nptl/sysdeps/unix/sysv/linux/i386/not-cancel.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/nptl/sysdeps/unix/sysv/linux/i386/not-cancel.h b/nptl/sysdeps/unix/sysv/linux/i386/not-cancel.h
index 91584948ae..6557359b43 100644
--- a/nptl/sysdeps/unix/sysv/linux/i386/not-cancel.h
+++ b/nptl/sysdeps/unix/sysv/linux/i386/not-cancel.h
@@ -91,3 +91,15 @@ extern int __openat64_nocancel (int fd, const char *fname, int oflag,
 # define waitpid_not_cancel(pid, stat_loc, options) \
   INLINE_SYSCALL (wait4, 4, pid, stat_loc, options, NULL)
 #endif
+
+/* Uncancelable pause.  */
+#define pause_not_cancel() \
+  __pause_nocancel ()
+
+/* Uncancelable nanosleep.  */
+#define nanosleep_not_cancel(requested_time, remaining) \
+  __nanosleep_nocancel (requested_time, remaining)
+
+/* Uncancelable sigsuspend.  */
+#define sigsuspend_not_cancel(set) \
+  __sigsuspend_nocancel (set)