[PATCHSET cgroup/for-3.8] cgroup_freezer: allow migration regardless of freezer state and update locking
tj at kernel.org
Fri Oct 19 00:01:53 UTC 2012
On Thu, Oct 18, 2012 at 04:47:26PM -0700, Matt Helsley wrote:
> > I think the only sane way would be having a userland arbitrator which
> > owns the kernel interface to itself and makes policy decisions from
> > userland clients and configures cgroup accordingly.
> OK -- yeah, solving the arbitration issue in userspace might be best.
Yeah, I think we need that but there currently isn't any concrete (or
even floppy) plan for it. If anyone is interested, beer is on me. :)
> > I think that should be solved via userland policies rather than
> > depending on this accidental cgroup_freezer feature.
> It's not accidental -- it *was an intended feature*:
> 22 # This bash script tests freezer code by starting a long sleep process.
> 23 # The sleep process is frozen. We then move the sleep process to a THAWED
> 24 # cgroup. We expect moving the sleep process to fail.
> ( This atrocious link is the easiest way to see the testcase:
> It was intended for something very much like the CRIU case I mentioned
I probably have chosen the wrong word. I mean that it's a hierarchy
management feature implemented at the wrong layer. If we want to
provide cgroup migration locking, it should be implemented at the
cgroup core layer as a controller independent feature. It's kinda
interesting the incorrect layering here almost directly caused messy
locking problem too. I hope we don't need it with (the imaginary)
proper userland arbitration but even if we do implementing it in
cgroup proper as a separate feature would be a lot less messy.
More information about the Containers