From: Daniel Walker <dwalker@fifo99.com>
To: Mike Chan <mike@android.com>
Cc: menage@google.com, balbir@in.ibm.com, cpufreq@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: Re: [RFC][PATCH] sched: cpuacct: Track cpuusage per cpu frequency
Date: Tue, 06 Apr 2010 10:48:47 -0700 [thread overview]
Message-ID: <1270576127.9066.8.camel@c-dwalke-linux.qualcomm.com> (raw)
In-Reply-To: <1270496004-9715-1-git-send-email-mike@android.com>
On Mon, 2010-04-05 at 12:33 -0700, Mike Chan wrote:
> New file: cpuacct.cpufreq when CONFIG_CPU_FREQ_STATS is enabled.
>
> cpuacct.cpufreq accounts for cpu time per-cpu frequency, time is exported
> in nano-seconds
>
> We do not know the cpufreq table size at compile time.
> So a new config option CONFIG_CPUACCT_CPUFREQ_TABLE_MAX is intruduced,
> to determine the cpufreq table per-cpu in the cpuacct struct.
>
> Signed-off-by: Mike Chan <mike@android.com>
> ---
> init/Kconfig | 5 +++
> kernel/sched.c | 99 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
> 2 files changed, 104 insertions(+), 0 deletions(-)
>
> diff --git a/init/Kconfig b/init/Kconfig
> index eb77e8c..e1e86df 100644
> --- a/init/Kconfig
> +++ b/init/Kconfig
> @@ -534,6 +534,11 @@ config CGROUP_CPUACCT
> Provides a simple Resource Controller for monitoring the
> total CPU consumed by the tasks in a cgroup.
>
> +config CPUACCT_CPUFREQ_TABLE_MAX
> + int "Max CPUFREQ table size"
> + depends on CGROUP_CPUACCT && CPU_FREQ_TABLE
> + default 32
> +
I'd say make it just a regular define unless you can think of a reason
why a non-developer would want to touch this value.
> config RESOURCE_COUNTERS
> bool "Resource counters"
> help
> diff --git a/kernel/sched.c b/kernel/sched.c
> index 528a105..a0b56b5 100644
> --- a/kernel/sched.c
> +++ b/kernel/sched.c
> @@ -71,6 +71,7 @@
> #include <linux/debugfs.h>
> #include <linux/ctype.h>
> #include <linux/ftrace.h>
> +#include <linux/cpufreq.h>
>
> #include <asm/tlb.h>
> #include <asm/irq_regs.h>
> @@ -8817,6 +8818,11 @@ struct cgroup_subsys cpu_cgroup_subsys = {
> * (balbir@in.ibm.com).
> */
>
> +#ifdef CONFIG_CPU_FREQ_STAT
> +/* The alloc_percpu macro uses typeof so we must define a type here. */
> +typedef struct { u64 usage[CONFIG_CPUACCT_CPUFREQ_TABLE_MAX]; } cpufreq_usage_t;
> +#endif
you should be able to send it a regular struct . I found this usage,
lport->dev_stats = alloc_percpu(struct fcoe_dev_stats);
as an example.
Daniel
next prev parent reply other threads:[~2010-04-06 17:56 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-04-05 19:33 [RFC][PATCH] sched: cpuacct: Track cpuusage per cpu frequency Mike Chan
2010-04-05 19:52 ` Paul Menage
2010-04-05 21:02 ` Mike Chan
2010-04-06 2:15 ` Balbir Singh
2010-04-06 2:40 ` Mike Chan
2010-04-06 2:13 ` Balbir Singh
2010-04-06 4:14 ` Mike Chan
2010-04-06 17:48 ` Daniel Walker [this message]
2010-04-06 19:43 ` Mike Chan
2010-04-06 19:58 ` Daniel Walker
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1270576127.9066.8.camel@c-dwalke-linux.qualcomm.com \
--to=dwalker@fifo99.com \
--cc=balbir@in.ibm.com \
--cc=cpufreq@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=menage@google.com \
--cc=mike@android.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox