cgroup: Add generic cgroup subsystem permission checks.
authorSan Mehat <san@google.com>
Thu, 21 May 2009 21:10:06 +0000 (14:10 -0700)
committerDan Willemsen <dwillemsen@nvidia.com>
Thu, 1 Dec 2011 05:38:10 +0000 (21:38 -0800)
commite84e563ae2ed297d5d35d8da3b7302384ff6c7da
tree5fa760f95deef258d1158228b5c2f5855824c0eb
parentbc4169bdee5099056af585ccecb8f3639f5e212c
cgroup: Add generic cgroup subsystem permission checks.

    Rather than using explicit euid == 0 checks when trying to move
tasks into a cgroup via CFS, move permission checks into each
specific cgroup subsystem. If a subsystem does not specify a
'can_attach' handler, then we fall back to doing our checks the old way.

    This way non-root processes can add arbitrary processes to
a cgroup if all the registered subsystems on that cgroup agree.

    Also change explicit euid == 0 check to CAP_SYS_ADMIN

Signed-off-by: San Mehat <san@google.com>
kernel/cgroup.c
kernel/cgroup_freezer.c
kernel/cpuset.c
kernel/sched.c