Lines 75-80
static int format_logs(struct xfs_mount
Link Here
|
75 |
#define LAST 0x10 /* final message we print */ |
75 |
#define LAST 0x10 /* final message we print */ |
76 |
|
76 |
|
77 |
void |
77 |
void |
|
|
78 |
signal_maskfunc(int addset, int newset) |
79 |
{ |
80 |
sigset_t set; |
81 |
|
82 |
sigemptyset(&set); |
83 |
sigaddset(&set, addset); |
84 |
sigprocmask(newset, &set, NULL); |
85 |
} |
86 |
|
87 |
void |
78 |
do_message(int flags, int code, const char *fmt, ...) |
88 |
do_message(int flags, int code, const char *fmt, ...) |
79 |
{ |
89 |
{ |
80 |
va_list ap; |
90 |
va_list ap; |
Lines 477-485
write_wbuf(void)
Link Here
|
477 |
if (target[i].state != INACTIVE) |
487 |
if (target[i].state != INACTIVE) |
478 |
pthread_mutex_unlock(&targ[i].wait); /* wake up */ |
488 |
pthread_mutex_unlock(&targ[i].wait); /* wake up */ |
479 |
|
489 |
|
480 |
sigrelse(SIGCHLD); |
490 |
signal_maskfunc(SIGCHLD, SIG_UNBLOCK); |
481 |
pthread_mutex_lock(&mainwait); |
491 |
pthread_mutex_lock(&mainwait); |
482 |
sighold(SIGCHLD); |
492 |
signal_maskfunc(SIGCHLD, SIG_BLOCK); |
483 |
} |
493 |
} |
484 |
|
494 |
|
485 |
void |
495 |
void |
Lines 893-899
main(int argc, char **argv)
Link Here
|
893 |
/* set up sigchild signal handler */ |
903 |
/* set up sigchild signal handler */ |
894 |
|
904 |
|
895 |
signal(SIGCHLD, handler); |
905 |
signal(SIGCHLD, handler); |
896 |
sighold(SIGCHLD); |
906 |
signal_maskfunc(SIGCHLD, SIG_BLOCK); |
897 |
|
907 |
|
898 |
/* make children */ |
908 |
/* make children */ |
899 |
|
909 |
|