From b894c2ea7e9dbf9d777555a2e1a917f5abcbb550 Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Mon, 31 Jul 2006 05:58:51 +0000 Subject: * sysdeps/unix/sysv/linux/ia64/sigsuspend.c: File removed. * 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. --- nptl/sysdeps/unix/sysv/linux/i386/not-cancel.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'nptl/sysdeps') 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) -- cgit v1.2.3