Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 477758 | Differences between
and this patch

Collapse All | Expand All

(-)xfsprogs-4.3.0.orig/copy/xfs_copy.c (-3 / +13 lines)
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

Return to bug 477758