[lkml]   [2009]   [Feb]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Subject[RFC PATCH 0/2] CPU controller statistics - v5

Last year, Balaji posted a patch to collect CPU controller statistics. After
a few initial versions, I couldn't see any activity. Here I am posting the
next version of the patch for review.

Changes for v5:

- Updated to 2.6.29-rc6.
- Separated cgroup modifications into a different patch.
- Changed the prototype of the ->initialize() subsystem API from
cgroup_subsys->initialize(int early) to cgroup_subsys->initialize(void)
and calling it only from cgroup_init() and not from cgroup_init_early().
- Updated documentation for new API.
- Added guest time metric as another cpu controller statistic.
- Free percpu statistics counters when the cgroup is brought down.
- Account irq and softirq time also as system time for cgroup accounting.
- Separate out stats collection code under CONFIG_CGROUP_SCHED to a helper
funtion to reduce ifdefs.


I have tried to address most of the comments given for the 4th version
of the patch. A few questions still remain:

- percpu counters are used for stats collection. Since percpu counters
aren't usable during cgroup_init_early(), we have to allocate
percpu stats counter for init_task_group separately later during
cgroup_init(). Because of this, in the stats collection code, we
end up having a 'is stats counter allocated?' check
- This patch collects per cgroup cpu controller stats. Does it make
sense to account stime and utime hierarchially ? If so, we would
probably be duplicating what cpuacct controller already does.
- Is steal time a useful per-cgroup metric ? Perhaps in container based
virtualized environments ?


 \ /
  Last update: 2009-02-25 11:59    [W:0.079 / U:1.916 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site