[CRIU] [PATCH 2/7] parasite: Rework init to be able to handle per-threads data

Cyrill Gorcunov gorcunov at openvz.org
Tue Nov 6 04:04:56 EST 2012


On Tue, Nov 06, 2012 at 01:01:59PM +0400, Pavel Emelyanov wrote:
> > static int fini(void)
> >  {
> > -	if (reset_blocked == 1)
> > -		sys_sigprocmask(SIG_SETMASK, &old_blocked, NULL, sizeof(k_rtsigset_t));
> > +	int ret = 0, i;
> > +
> > +	for (i = 0; i < nr_tid_state; i++) {
> > +		if (tid_state[i].use_sig_blocked) {
> > +			ret |= sys_sigprocmask(SIG_SETMASK, &tid_state[i].sig_blocked,
> > +					       NULL, sizeof(k_rtsigset_t));
> > +		}
> 
> WTF is that???

We need to restore original mask once parasite is fini'ting, of course
for all threads which we have.


More information about the CRIU mailing list