Re: [PATCH 1/1] don't call pre_restore_task twice

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Oct 08, 2009 at 09:12:58AM -0500, Serge E. Hallyn wrote:
> Quoting Matt Helsley (matthltc@xxxxxxxxxx):
> > On Wed, Oct 07, 2009 at 06:47:50PM -0500, Serge E. Hallyn wrote:

<snip>

> > void post_restore_task()
> > {
> > 	sigprocmask(SIG_SETMASK, &current->checkpoint_data->blocked, NULL);
> > ...
> > }
> > 
> > then in do_restore_coord():
> > 
> > if (ctx->uflags & RESTART_TASKSELF) {
> >                 ret = pre_restore_task();
> >                 ckpt_debug("pre restore task: %d\n", ret);
> >                 if (ret < 0)
> >                         goto out;
> > ...
> >  out:
> >         if (ctx->uflags & RESTART_TASKSELF)
> >                 post_restore_task();
> > 
> > But if we got -ENOMEM from pre_restore_task() then I think there will be a
> > NULL dereference.
> 
> But the very first thing post_restore_task() does is
> 
> 	/* can happen if restart failed early */
> 	if (!current->checkpoint_data)
> 		return;

Ah, good. That's a fairly recent change so it wasn't in my git tree.  Looks 
like it was added Oct 3rd by:

commit: bb091acbf0a47bd61323322a4e0a784d1ee0c24f
"c/r: threads sync on restart (fix regression from commit afbe522c...)"

Cheers,
	-Matt Helsley
_______________________________________________
Containers mailing list
Containers@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linux-foundation.org/mailman/listinfo/containers

[Index of Archives]     [Cgroups]     [Netdev]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux