diff options
author | Waldemar Brodkorb <wbx@openadk.org> | 2010-11-12 22:58:45 +0100 |
---|---|---|
committer | Waldemar Brodkorb <wbx@openadk.org> | 2010-11-12 22:58:45 +0100 |
commit | d29b7059e0e3dacc3e051c310eabaecabe19a8d2 (patch) | |
tree | 078693d3be8a0d6096587f5ac01b2ffc76dc8626 /package/xfsprogs/patches/patch-copy_xfs_copy_c | |
parent | 4129680028eaddf98219126f787b08551bbf7088 (diff) |
updates and build fixes for a lot of packages
compiled for ibmx40 with eglibc.
Diffstat (limited to 'package/xfsprogs/patches/patch-copy_xfs_copy_c')
-rw-r--r-- | package/xfsprogs/patches/patch-copy_xfs_copy_c | 80 |
1 files changed, 0 insertions, 80 deletions
diff --git a/package/xfsprogs/patches/patch-copy_xfs_copy_c b/package/xfsprogs/patches/patch-copy_xfs_copy_c deleted file mode 100644 index f5205398e..000000000 --- a/package/xfsprogs/patches/patch-copy_xfs_copy_c +++ /dev/null @@ -1,80 +0,0 @@ -$Id: update-patches 24 2008-08-31 14:56:13Z wbx $ ---- xfsprogs-3.0.0.orig/copy/xfs_copy.c 2009-02-04 23:29:25.000000000 +0100 -+++ xfsprogs-3.0.0/copy/xfs_copy.c 2009-03-27 11:40:33.000000000 +0100 -@@ -240,7 +240,10 @@ handler(int sig) - { - pid_t pid = getpid(); - int status, i; -+ struct sigaction action; - -+ action.sa_handler = handler; -+ action.sa_flags = 0; - pid = wait(&status); - - kids--; -@@ -272,7 +275,7 @@ handler(int sig) - pthread_exit(NULL); - } - -- signal(SIGCHLD, handler); -+ sigaction(SIGCHLD, &action, NULL); - return; - } else { - /* it just croaked it bigtime, log it */ -@@ -294,7 +297,7 @@ handler(int sig) - do_warn(_("%s: Unknown child died (should never happen!)\n"), progname); - die_perror(); - pthread_exit(NULL); -- signal(SIGCHLD, handler); -+ sigaction(SIGCHLD, &action, NULL); - } - - void -@@ -467,6 +470,10 @@ void - write_wbuf(void) - { - int i; -+ sigset_t unblock, initial; -+ -+ sigemptyset(&unblock); -+ sigaddset(&unblock, SIGCHLD); - - /* verify target threads */ - for (i = 0; i < num_targets; i++) -@@ -478,9 +485,9 @@ write_wbuf(void) - if (target[i].state != INACTIVE) - pthread_mutex_unlock(&targ[i].wait); /* wake up */ - -- sigrelse(SIGCHLD); -+ sigprocmask(SIG_UNBLOCK, &unblock, &initial); - pthread_mutex_lock(&mainwait); -- sighold(SIGCHLD); -+ sigprocmask(SIG_SETMASK, &initial, NULL); - } - - -@@ -521,6 +528,11 @@ main(int argc, char **argv) - libxfs_init_t xargs; - thread_args *tcarg; - struct stat64 statbuf; -+ struct sigaction saction; -+ sigset_t sigblock, initial; -+ -+ saction.sa_handler = handler; -+ saction.sa_flags = 0; - - progname = basename(argv[0]); - -@@ -846,8 +858,10 @@ main(int argc, char **argv) - - /* set up sigchild signal handler */ - -- signal(SIGCHLD, handler); -- sighold(SIGCHLD); -+ sigaction(SIGCHLD, &saction, NULL); -+ sigemptyset(&sigblock); -+ sigaddset(&sigblock, SIGCHLD); -+ sigprocmask(SIG_BLOCK, &sigblock, &initial); - - /* make children */ - |