[RFC PATCH 0/2] CPU controller statistics - v5

From: Bharata B Rao
Date: Wed Feb 25 2009 - 05:57:18 EST


Hi,

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.

v4:
- http://lkml.org/lkml/2008/5/11/163

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 ?

Regards,
Bharata.
--
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/