Mainline Kernel Virtualization

From Linux-VServer

Revision as of 14:49, 23 November 2006 by Doener (Talk | contribs)

Jump to: navigation, search

Actively Developed Patches

  • 19.09.2006 Containers(V2) by Rohit Seth (from Google) based on CPUsets
Over the limit memory handler is called when number of pages (anon + pagecache) exceed the limit. Currently, this memory handler scans the mappings and tasks belonging to container (file and anonymous) and tries to deactivate pages. If the number of page cache pages is also high then it also invalidate mappings.
This patchset extracts the process grouping code from cpusets into a generic container system, and makes the cpusets code a client of the container system.
It also provides a very simple additional container subsystem to do per-container CPU usage accounting; this is primarily to demonstrate use of the container subsystem API, but is useful in its own right.
This is an update to my generic containers patch. The major change is support for multiple hierarchies of containers (up to a limit specified at build time).
Note that this hasn't yet undergone intensive testing following the multi-hierarchy introduction, but I wanted to get the basic idea out for comments.
This is an update to my multi-hierarchy generic containers patch (against 2.6.19-rc6). Changes include:
- an example patch implementing the BeanCounters core and numfiles counters over generic containers. The addition of the BeanCounters code unifies the three main process grouping abstractions (Cpusets, ResGroups and BeanCounters).
- a patch splitting Cpusets into two independently groupable subsystems, Cpusets and Memsets.
- support for a subsystem to keep a container alive via refcounts (e.g. the BeanCounters numfiles counter has a reference to the beancounter object from each file charged to that beancounter, so needs to be able to keep the beancounter alive until the file is destroyed)
Personal tools