On 09/20/2012 02:43 AM, Tejun Heo wrote:
> +
> +void task_group_charge(struct task_struct *tsk, u64 cputime)
> +{
> +     struct task_group *tg;
> +     int cpu = task_cpu(tsk);
> +
> +     rcu_read_lock();
> +
> +     tg = container_of(task_subsys_state(tsk, cpu_cgroup_subsys_id),
> +                       struct task_group, css);
> +
> +     for (; tg; tg = tg->parent) {
> +             u64 *cpuusage = per_cpu_ptr(tg->cpuusage, cpu);
> +             *cpuusage += cputime;
> +     }
> +
> +     rcu_read_unlock();
> +}
>  #endif /* CONFIG_CGROUP_SCHED */

The whole point of this merge is that this is not needed.
This information is already available from exec_clock for fair tasks.
for rt tasks, we have no exec clock, but do have a hierarchy walk a bit
below the current cpuacct charge, that can be used for that purpose.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to