mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-27 15:15:02 +07:00
073219e995
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.
v2: Rebased on top of fe1217c4f3
("net: net_cls: move cgroupfs
classid handling into core").
Signed-off-by: Tejun Heo <tj@kernel.org>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
Acked-by: "David S. Miller" <davem@davemloft.net>
Acked-by: "Rafael J. Wysocki" <rjw@rjwysocki.net>
Acked-by: Michal Hocko <mhocko@suse.cz>
Acked-by: Peter Zijlstra <peterz@infradead.org>
Acked-by: Aristeu Rozanski <aris@redhat.com>
Acked-by: Ingo Molnar <mingo@redhat.com>
Acked-by: Li Zefan <lizefan@huawei.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Balbir Singh <bsingharora@gmail.com>
Cc: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Cc: Serge E. Hallyn <serue@us.ibm.com>
Cc: Vivek Goyal <vgoyal@redhat.com>
Cc: Thomas Graf <tgraf@suug.ch>
56 lines
911 B
C
56 lines
911 B
C
/*
|
|
* List of cgroup subsystems.
|
|
*
|
|
* DO NOT ADD ANY SUBSYSTEM WITHOUT EXPLICIT ACKS FROM CGROUP MAINTAINERS.
|
|
*/
|
|
#if IS_ENABLED(CONFIG_CPUSETS)
|
|
SUBSYS(cpuset)
|
|
#endif
|
|
|
|
#if IS_ENABLED(CONFIG_CGROUP_DEBUG)
|
|
SUBSYS(debug)
|
|
#endif
|
|
|
|
#if IS_ENABLED(CONFIG_CGROUP_SCHED)
|
|
SUBSYS(cpu)
|
|
#endif
|
|
|
|
#if IS_ENABLED(CONFIG_CGROUP_CPUACCT)
|
|
SUBSYS(cpuacct)
|
|
#endif
|
|
|
|
#if IS_ENABLED(CONFIG_MEMCG)
|
|
SUBSYS(memory)
|
|
#endif
|
|
|
|
#if IS_ENABLED(CONFIG_CGROUP_DEVICE)
|
|
SUBSYS(devices)
|
|
#endif
|
|
|
|
#if IS_ENABLED(CONFIG_CGROUP_FREEZER)
|
|
SUBSYS(freezer)
|
|
#endif
|
|
|
|
#if IS_ENABLED(CONFIG_CGROUP_NET_CLASSID)
|
|
SUBSYS(net_cls)
|
|
#endif
|
|
|
|
#if IS_ENABLED(CONFIG_BLK_CGROUP)
|
|
SUBSYS(blkio)
|
|
#endif
|
|
|
|
#if IS_ENABLED(CONFIG_CGROUP_PERF)
|
|
SUBSYS(perf_event)
|
|
#endif
|
|
|
|
#if IS_ENABLED(CONFIG_CGROUP_NET_PRIO)
|
|
SUBSYS(net_prio)
|
|
#endif
|
|
|
|
#if IS_ENABLED(CONFIG_CGROUP_HUGETLB)
|
|
SUBSYS(hugetlb)
|
|
#endif
|
|
/*
|
|
* DO NOT ADD ANY SUBSYSTEM WITHOUT EXPLICIT ACKS FROM CGROUP MAINTAINERS.
|
|
*/
|