[PATCH 0/9] Per-cgroup /proc/stat

From: Glauber Costa
Date: Wed Sep 14 2011 - 16:05:41 EST


[[ For those getting this twice: I sent it previously to containers
ml, but I guess it was out. Sending now to a broader audience anyway ]]

Hi,

This patchset is a simple initial proposal for a per-cgroup/container
display of /proc/stat. The display method is based on Daniel's idea of
exposing a file that can be bind mounted (Daniel, is that more or less
what you had in mind?)

To grab the stats themselves, I am (ab)using cpuacct cgroup. percpu counters
are dropped in favor of normal percpu pointers, so we can easily track
per-cpu quantities.

In case you guys like this idea, my TODO list would include the removal
of the show stat code in fs/proc/stat.c altogether, and the displaying
of some fields I haven't touched yet.

Also, to demonstrate one of the potential ideas for such method, I
implemented a feature comonly found in hypervisors - steal time - on top
of it. I arguee that containers can/should also display steal time when
available. Turns out that due to the fact that we run on the same kernel,
steal time is quite easy to implement once we have per-container tick
accounting in place.

Please let me know what you guys think

Glauber Costa (9):
Remove parent field in cpuacct cgroup
Make cpuacct fields per cpu variables
Include nice values in cpuacct
Include irq and softirq fields in cpuacct
Include guest fields in cpuacct
Include idle and iowait fields in cpuacct
Create cpuacct.proc.stat file
per-cgroup boot time
Report steal time for cgroup

kernel/sched.c | 265 +++++++++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 234 insertions(+), 31 deletions(-)

--
1.7.6

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/