On Wed, Apr 02, 2014 at 04:54:33PM -0400, Johannes Weiner wrote: > On Wed, Apr 02, 2014 at 01:34:06PM -0700, Yu Zhao wrote: > > This series of patches adds support to configure a cgroup to swap to a > > particular file by using control file memory.swapfile. > > > > Originally, cgroups share system-wide swap space and limiting cgroup swapping > > is not possible. This patchset solves the problem by adding mechanism that > > isolates cgroup swap spaces (i.e. per-cgroup swap file) so users can safely > > enable swap for particular cgroups without worrying about one cgroup uses up > > all swap space. > > Isn't that what the swap controller is for? Well, I should've used word "isolating" instead of "limiting" (and yes, the example I gave is confusing too). MEMCG_SWAP limits swaping while per-cgroup swap file not only limits but also isolates the swap space. In another word, per-cgroup swap file acts like the cgroup owns its private swap file which can be specified to a particular path when users want the cgroup to swap to a disk volumes rather than the one used by default (system-wide) swap files. > > config MEMCG_SWAP > bool "Memory Resource Controller Swap Extension" > depends on MEMCG && SWAP > help > Add swap management feature to memory resource controller. When you > enable this, you can limit mem+swap usage per cgroup. In other words, > when you disable this, memory resource controller has no cares to > usage of swap...a process can exhaust all of the swap. This extension > is useful when you want to avoid exhaustion swap but this itself > adds more overheads and consumes memory for remembering information. > Especially if you use 32bit system or small memory system, please > be careful about enabling this. When memory resource controller > is disabled by boot option, this will be automatically disabled and > there will be no overhead from this. Even when you set this config=y, > if boot option "swapaccount=0" is set, swap will not be accounted. > Now, memory usage of swap_cgroup is 2 bytes per entry. If swap page > size is 4096bytes, 512k per 1Gbytes of swap. -- To unsubscribe from this list: send the line "unsubscribe linux-doc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html