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

(-)file_not_specified_in_diff (-4 / +14 lines)
Line  Link Here
0
-- xfsprogs-3.1.10/copy/xfs_copy.c
0
++ xfsprogs-3.1.10-sigprocmask/copy/xfs_copy.c
Lines 72-77 xfs_off_t write_log_header(int fd, wbuf Link Here
72
#define LAST	0x10		/* final message we print */
72
#define LAST	0x10		/* final message we print */
73
73
74
void
74
void
75
signal_maskfunc(int addset, int newset)
76
{
77
	sigset_t set;
78
79
	sigemptyset(&set);
80
	sigaddset(&set, addset);
81
	sigprocmask(newset, &set, NULL);
82
}
83
84
void
75
do_message(int flags, int code, const char *fmt, ...)
85
do_message(int flags, int code, const char *fmt, ...)
76
{
86
{
77
	va_list	ap;
87
	va_list	ap;
Lines 478-486 write_wbuf(void) Link Here
478
		if (target[i].state != INACTIVE)
488
		if (target[i].state != INACTIVE)
479
			pthread_mutex_unlock(&targ[i].wait);	/* wake up */
489
			pthread_mutex_unlock(&targ[i].wait);	/* wake up */
480
490
481
	sigrelse(SIGCHLD);
491
	signal_maskfunc(SIGCHLD, SIG_UNBLOCK);
482
	pthread_mutex_lock(&mainwait);
492
	pthread_mutex_lock(&mainwait);
483
	sighold(SIGCHLD);
493
	signal_maskfunc(SIGCHLD, SIG_BLOCK);
484
}
494
}
485
495
486
496
Lines 847-853 main(int argc, char **argv) Link Here
847
	/* set up sigchild signal handler */
857
	/* set up sigchild signal handler */
848
858
849
	signal(SIGCHLD, handler);
859
	signal(SIGCHLD, handler);
850
	sighold(SIGCHLD);
860
	signal_maskfunc(SIGCHLD, SIG_BLOCK);
851
861
852
	/* make children */
862
	/* make children */
853
863

Return to bug 477758