[Devel] Re: --freezer option to /bin/restart

Oren Laadan orenl at cs.columbia.edu
Sun Mar 28 08:16:22 PDT 2010



Sukadev Bhattiprolu wrote:
> The help message for --freezer=CGROUP option says:
> 
> 	freeze tasks in freezer group CGROUP on success
> 
> and if this option specifies an existing cgroup, then (and only
> then) is the RESTART_FROZEN flag to sys_restart() set.
> 
> Does the --freezer option have to specify an existing cgroup ?

As it is now - yes;

In theory I would like use -F (--freezer) without an  argument,
to use RESTART_FROZEN without explicitly adding tasks to a
target cgroup.

The trick is that we need to put all the restarted tasks in the
traget cgroup. The coordinator must remain outside that cgroup,
or it will be frozen as well when restart succeeds.

This means that restarted tasks (at least the root task) have
to be explicitly added to the cgroup - which is why I require
that the cgroup name be passed.

This could be avoided if we could add 'restart' to a cgruop and
then after spawning the entire tree, we could remove 'restart'
from that cgroup. I don't think this is possible ?

> 
> Is there a way to specify that the restarted application belong
> to a new (yet-to-be created) cgroup AND to leave the application
> FROZEN after restart ? Or would we need a new command line option
> and field in 'struct app_restart_args' to specify this ?

This is exactly what --freezer does. Well, alsmot - except for
"yet-to-be created". Do you want 'restart' to create the cgroup
if it doesn't exist ?

Oren.

_______________________________________________
Containers mailing list
Containers at lists.linux-foundation.org
https://lists.linux-foundation.org/mailman/listinfo/containers




More information about the Devel mailing list