Re: [PATCH 3/6] cgroup: clean up cgroup_subsys names and initialization
From: Neil Horman <hidden>
Date: 2014-01-17 20:50:24
Also in:
lkml
On Fri, Jan 17, 2014 at 01:11:54PM -0500, Tejun Heo wrote:
cgroup_subsys is a bit messier than it needs to be. * The name of a subsys can be different from its internal identifier defined in cgroup_subsys.h. Most subsystems use the matching name but three - cpu, memory and perf_event - use different ones. * cgroup_subsys_id enums are postfixed with _subsys_id and each cgroup_subsys is postfixed with _subsys. cgroup.h is widely included throughout various subsystems, it doesn't and shouldn't have claim on such generic names which don't have any qualifier indicating that they belong to cgroup. * cgroup_subsys->subsys_id should always equal the matching cgroup_subsys_id enum; however, we require each controller to initialize it and then BUG if they don't match, which is a bit silly. This patch cleans up cgroup_subsys names and initialization by doing the followings. * cgroup_subsys_id enums are now postfixed with _cgrp_id, and each cgroup_subsys with _cgrp_subsys. * With the above, renaming subsys identifiers to match the userland visible names doesn't cause any naming conflicts. All non-matching identifiers are renamed to match the official names. cpu_cgroup -> cpu mem_cgroup -> memory perf -> perf_event * controllers no longer need to initialize ->subsys_id and ->name. They're generated in cgroup core and set automatically during boot. * Redundant cgroup_subsys declarations removed. * While updating BUG_ON()s in cgroup_init_early(), convert them to WARN()s. BUGging that early during boot is stupid - the kernel can't print anything, even through serial console and the trap handler doesn't even link stack frame properly for back-tracing. This patch doesn't introduce any behavior changes. Signed-off-by: Tejun Heo <redacted> Cc: Ingo Molnar <redacted> Cc: Peter Zijlstra <redacted> Cc: Li Zefan <redacted> Cc: Johannes Weiner <redacted> Cc: Michal Hocko <redacted> Cc: Balbir Singh <redacted> Cc: KAMEZAWA Hiroyuki <redacted> Cc: Aristeu Rozanski <redacted> Cc: Serge E. Hallyn <serue-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org> Cc: "Rafael J. Wysocki" <redacted> Cc: Vivek Goyal <redacted> Cc: Neil Horman <redacted> Cc: Thomas Graf <tgraf-G/eBtMaohhA@public.gmane.org> Cc: "David S. Miller" <davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>
For the netprio and net_cls bits Acked-by: Neil Horman <redacted>