about summary refs log tree commit diff
path: root/sysdeps
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2003-03-15 23:47:44 +0000
committerUlrich Drepper <drepper@redhat.com>2003-03-15 23:47:44 +0000
commit5b84f75b909314679a32142920d2ce63567797d5 (patch)
tree5dab3af452fefa528555eef3a7be143db91b14d2 /sysdeps
parent7eecc0c21a4ee25034fb6a0f81ca438668244361 (diff)
downloadglibc-5b84f75b909314679a32142920d2ce63567797d5.tar.gz
glibc-5b84f75b909314679a32142920d2ce63567797d5.tar.xz
glibc-5b84f75b909314679a32142920d2ce63567797d5.zip
Use the generic Linux code for most parts.
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/unix/sysv/linux/ia64/system.c41
1 files changed, 1 insertions, 40 deletions
diff --git a/sysdeps/unix/sysv/linux/ia64/system.c b/sysdeps/unix/sysv/linux/ia64/system.c
index 67a09cf232..413ff27b39 100644
--- a/sysdeps/unix/sysv/linux/ia64/system.c
+++ b/sysdeps/unix/sysv/linux/ia64/system.c
@@ -16,12 +16,6 @@
    Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
    02111-1307 USA.  */
 
-#include <sched.h>
-#include <signal.h>
-#include <sysdep.h>
-#include <unistd.h>
-#include <sys/wait.h>
-#include <bits/libc-lock.h>
 #include <kernel-features.h>
 
 /* We have to and actually can handle cancelable system().  The big
@@ -38,37 +32,4 @@
 		  &pid, NULL, NULL)
 #endif
 
-static void cancel_handler (void *arg);
-
-#define CLEANUP_HANDLER \
-  __libc_cleanup_region_start (1, cancel_handler, &pid)
-
-#define CLEANUP_RESET \
-  __libc_cleanup_region_end (0)
-
-
-/* Linux has waitpid(), so override the generic unix version.  */
-#include <sysdeps/posix/system.c>
-
-
-/* The cancellation handler.  */
-static void
-cancel_handler (void *arg)
-{
-  pid_t child = *(pid_t *) arg;
-
-  INTERNAL_SYSCALL_DECL (err);
-  INTERNAL_SYSCALL (kill, err, 2, child, SIGKILL);
-
-  TEMP_FAILURE_RETRY (__waitpid (child, NULL, 0));
-
-  DO_LOCK ();
-
-  if (SUB_REF () == 0)
-    {
-      (void) __sigaction (SIGQUIT, &quit, (struct sigaction *) NULL);
-      (void) __sigaction (SIGINT, &intr, (struct sigaction *) NULL);
-    }
-
-  DO_UNLOCK ();
-}
+#include "../system.c"