cpuacct causes duplicate accountings on the scheduler and cpu will provide equivalent stats. Optimizations for cases where cpu and cpuacct are co-mounted are being worked on but we want to deprecate it eventually. Let's disallow cpuacct if __DEVEL__sane_behavior. Signed-off-by: Tejun Heo <tj@xxxxxxxxxx> Cc: Glauber Costa <glommer@xxxxxxxxxx> Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx> --- include/linux/cgroup.h | 3 +++ kernel/cgroup.c | 5 +++++ 2 files changed, 8 insertions(+) diff --git a/include/linux/cgroup.h b/include/linux/cgroup.h index d0ad379..6c3bbdb 100644 --- a/include/linux/cgroup.h +++ b/include/linux/cgroup.h @@ -280,6 +280,9 @@ enum { * - memcg: use_hierarchy is on by default and the cgroup file for * the flag is not created. * + * - cpuacct: No longer supported. cpu will have matching stats. + * Use those instead. + * * The followings are planned changes. * * - release_agent will be disallowed once replacement notification diff --git a/kernel/cgroup.c b/kernel/cgroup.c index bc53d50..5c746eb 100644 --- a/kernel/cgroup.c +++ b/kernel/cgroup.c @@ -1256,6 +1256,11 @@ static int parse_cgroupfs_options(char *data, struct cgroup_sb_opts *opts) pr_err("cgroup: sane_behavior: clone_children is not allowed\n"); return -EINVAL; } + + if (test_bit(cpuacct_subsys_id, &opts->subsys_mask)) { + pr_err("cgroup: sane_behavior: cpuacct is no longer available, use stats from cpu instead\n"); + return -EINVAL; + } } /* -- To unsubscribe from this list: send the line "unsubscribe cgroups" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html