[Devel] Re: [PATCH 0/2] In-kernel process restart
Andrey Mirkin
major at openvz.org
Wed Nov 26 03:44:24 PST 2008
On Tuesday 25 November 2008 23:02 Oren Laadan wrote:
> Andrey Mirkin wrote:
> > These patchset introduces OpenVZ kernel based restart procedure on top of
> > Oren's checkpoint/restart patchset v9.
> >
> > For restarting a set of processes one will need to call sys_restart()
> > once with new flag CR_CTX_RSTR_IN_KERNEL. All work will be done in kernel
> > in this case.
> >
> > Small changes to image format are required to make in-kernel process
> > creation more easy.
> >
> > Oren, please take a look on this patchset. I've tried to port OpenVZ
> > functionality on top of yours with minimal changes.
>
> Thanks, Andrey. The patch looks simple and good.
>
> Did you look at my (user-space) process creation code ? specifically, it
> uses the task-pids array (that is saved during checkpoint) to figure out
> how many children a task has to spawn and their corresponding pids.
Yes, I've take a look on mktree tool. The algorithm of process creation is
quite clear.
> Is there a particular reason that you chose not to use that data during
> restart ? eventually, you'll need to add the rest of it, too, to the task
> data, like you did with the number of children in this patch.
Agree, I'll rework my patchset to use already existing data.
> Instead, since the data is available and the logic is available, we can
> have each new thread call do_restart_task(), and the container init
> should call do_restart_root().
>
> What do you think ? I can go ahead and make the changes on top of your
> patch.
I'll take a closer look on these functions and maybe we can use them for
created threads too. But from our experience during in-kernel process
creation and restore it is needed to perfrorm some restore procedures when
process is inactive. That is why I think we can't reuse all existing code for
in-kernel restart. Anyway I'll check everything once again.
Andrey
_______________________________________________
Containers mailing list
Containers at lists.linux-foundation.org
https://lists.linux-foundation.org/mailman/listinfo/containers
More information about the Devel
mailing list