|
@@ -58,6 +58,7 @@ static inline struct cpuacct *parent_ca(struct cpuacct *ca)
|
|
|
return cgroup_ca(ca->css.cgroup->parent);
|
|
|
}
|
|
|
|
|
|
+static DEFINE_PER_CPU(u64, root_cpuacct_cpuusage);
|
|
|
static struct cpuacct root_cpuacct;
|
|
|
|
|
|
/* create a new cpu accounting group */
|
|
@@ -290,8 +291,7 @@ void cpuacct_account_field(struct task_struct *p, int index, u64 val)
|
|
|
void __init cpuacct_init(void)
|
|
|
{
|
|
|
root_cpuacct.cpustat = &kernel_cpustat;
|
|
|
- root_cpuacct.cpuusage = alloc_percpu(u64);
|
|
|
- BUG_ON(!root_cpuacct.cpuusage); /* Too early, not expected to fail */
|
|
|
+ root_cpuacct.cpuusage = &root_cpuacct_cpuusage;
|
|
|
}
|
|
|
|
|
|
struct cgroup_subsys cpuacct_subsys = {
|