LWN.net Logo

CPU controller statistics - v5

From:  Bharata B Rao <bharata@linux.vnet.ibm.com>
To:  linux-kernel@vger.kernel.org
Subject:  [RFC PATCH 0/2] CPU controller statistics - v5
Date:  Wed, 25 Feb 2009 16:27:30 +0530
Message-ID:  <20090225105730.GA4008@in.ibm.com>
Cc:  Balaji Rao <balajirrao@gmail.com>, Dhaval Giani <dhaval@linux.vnet.ibm.com>, Balbir Singh <balbir@linux.vnet.ibm.com>, Li Zefan <lizf@cn.fujitsu.com>, Paul Menage <menage@google.com>, Andrew Morton <akpm@linux-foundation.org>, Ingo Molnar <mingo@elte.hu>, Peter Zijlstra <a.p.zijlstra@chello.nl>
Archive-link:  Article, Thread

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@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Copyright © 2009, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds