cgroup_apply...trol_disable(9)
π cgroup_apply_control_disable β the Kernel API Manual, bestie edition π
okay so you're reading a Kernel API Manual page, and the page you want is literally called cgroup_apply...trol_disable(9) (yes the title is truncated, no that's not a typo, that's just how they abbreviate things around here π). Buckle up, we're going into the cgroup guts π«Ά
πΈ NAME πΈ
cgroup_apply_control_disable β kill or hide csses according to control β¨
π SYNOPSIS π
void cgroup_apply_control_disable (struct cgroup *cgrp );
π¦ ARGUMENTS π¦
cgrpβ the root of the target subtree. That's your starting point, the main character of this whole operation π
π DESCRIPTION π
So the vibe here is: we walk cgrp's subtree, and along the way we kill and hide csses so that they match cgroup_ss_mask and cgroup_visible_mask. That's the whole assignment fr fr π
Now, when is a css hidden? When userland asks for it to be disabled but other subsystems are still depending on it π like, it can't just be yeeted out of existence, other stuff needs it. So instead it gets hidden. Sneaky but iconic.
And the rule that comes with the hiding: the css must not actively control resources, and it has to be in the vanilla state if it's ever made visible again later. No cap, that's required β otherwise you'd un-hide a css that's out here still pulling levers π³
Which means: controllers that may be depended upon should provide ->css_reset for exactly this purpose. That's their little reset button so the vanilla state is guaranteed π§
ngl this one's a "read the masks, respect the masks" situation β hide β delete, and the css has to be pristine for its comeback arc β
π SEE ALSO π
Sis, this list is long and honestly? goals. Every single one of these:
cgroup_ssid_enabled(9)cgroup_on_dfl(9)cgroup_e_css_by_mask(9)cgroup_e_css(9)cgroup_get_e_css(9)__cgroup_task_count(9)cgroup_task_count(9)for_each_css(9)do_each_subsys_mask(9)css_set_populated(9)css_update_populated(9)css_set_update_populated(9)css_set_move_task(9)compare_css_sets(9)find_existing_css_set(9)allocate_cgrp_cset_links(9)link_css_set(9)find_css_set(9)cgroup_file_mode(9)cgroup_calc_subtree_ss_mask(9)cgroup_kn_unlock(9)cgroup_kn_lock_live(9)css_clear_dir(9)css_populate_dir(9)cgroup_attach_lock(9)cgroup_attach_unlock(9)cgroup_migrate_add_task(9)cgroup_taskset_first(9)cgroup_taskset_next(9)cgroup_migrate_execute(9)cgroup_migrate_vet_dst(9)cgroup_migrate_finish(9)cgroup_migrate_add_src(9)cgroup_migrate_prepare_dst(9)cgroup_migrate(9)cgroup_attach_task(9)cgroup_update_dfl_csses(9)cgroup_lock_and_drain_offline(9)cgroup_save_control(9)cgroup_propagate_control(9)cgroup_restore_control(9)cgroup_apply_control_enable(9)cgroup_apply_control(9)cgroup_finalize_control(9)cgroup_enable_threaded(9)cgroup_tryget_css(9)cgroup_addrm_files(9)cgroup_rm_cftypes(9)cgroup_add_cftypes(9)cgroup_add_dfl_cftypes(9)cgroup_add_legacy_cftypes(9)cgroup_file_notify(9)cgroup_file_show(9)css_next_child(9)css_next_descendant_pre(9)css_rightmost_descendant(9)css_next_descendant_post(9)css_has_online_children(9)css_task_iter_advance_css_set(9)css_task_iter_start(9)css_task_iter_next(9)css_task_iter_end(9)css_create(9)kill_css_sync(9)kill_css_finish(9)cgroup_destroy_locked(9)cgroup_init_early(9)cgroup_init(9)cgroup_fork(9)cgroup_v1v2_get_from_file(9)cgroup_get_from_file(9)cgroup_css_set_fork(9)cgroup_css_set_put_fork(9)cgroup_can_fork(9)cgroup_cancel_fork(9)cgroup_post_fork(9)cgroup_task_exit(9)css_tryget_online_from_dir(9)css_from_id(9)cgroup_get_from_path(9)cgroup_v1v2_get_from_fd(9)cgroup_get_from_fd(9)cgroup_parse_float(9)
and obvs the kernel file it all lives in: ./kernel/cgroup/cgroup.c π iykyk
that's the whole page bestie, you ate that π
the source is ./kernel/cgroup and it's dated October 2026 β so when you're out here hiding csses, know that this lil doc was stamped October 2026 and the version tag on it is still cgroup_apply...trol_disable(9), periodt πβ¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms