Re: [PATCHSET] cgroup: cftype based file interface

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

 



On 03/17/2012 03:35 AM, Tejun Heo wrote:
Hello, guys.

This patch replaces cgroup file interface with cftype based one which
allows dynamic additions and removals of cftype arrays whether the
target subsystem is attached or not.

Great

This can be used to make subsys
rebinding via remount work properly but I intentionally avoided doing
that at the moment.

This makes cgroup population simpler for controllers and will be used
to allow controllers to be more dynamic.  e.g. blkio subsys has
sub-policies which may come and go while blkio subsys is attached and
it currently uses fixed set of files which stays blank if not in use.
This will also be useful for implementing unified hierarchy.

This patchset contains the following patches.

  0001-cgroup-move-cgroup_clear_directory-call-out-of-cgrou.patch
  0002-cgroup-build-list-of-all-cgroups-under-a-given-cgrou.patch
  0003-cgroup-implement-cgroup_add_cftypes-and-friends.patch
  0004-cgroup-merge-cft_release_agent-cftype-array-into-the.patch
  0005-cgroup-convert-all-non-memcg-controllers-to-the-new-.patch
  0006-cgroup-convert-memcg-controller-to-the-new-cftype-in.patch
  0007-cgroup-remove-cgroup_add_file-s.patch
  0008-cgroup-relocate-__d_cgrp-and-__d_cft.patch
  0009-cgroup-introduce-struct-cfent.patch
  0010-cgroup-implement-cgroup_rm_cftypes.patch

and is on top of

   cgroup/for-3.4 3ce3230a0cff484e5130153f244d4fb8a56b3a8b
+ [1] cgroup: deprecate remount option changes mount option

and is also available in the following git branch.

  git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc.git cgroup-cftype

Glauber, can you please try to move net kmem stuff out of
->populate().  If ->create() doesn't work for whatever reason, can you
please explain it to me so that we can find a proper solution?

The main reason is twofold:

It first had to do with the order in which registerings take place at the kernel. But this matter most for the root cgroup. For the children, it should be all initialized anyway. So we can special case whatever is needed.

Another point was not to bloat the socket structures with more function calls, for populate and create. But we can possibly be able to store some data ourselves, and figure it out.

How should I do it? Do you want me to provide a patch ontop of your tree ?
_______________________________________________
Containers mailing list
Containers@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linuxfoundation.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