cgroup_post_fork(9)
π cgroup_post_fork β the kernel API manual, but make it make sense π
okay so bestie, welcome to cgroup_post_fork(9) β this is a <pink>Kernel API Manual</pink> situation and it's genuinely a little cutie. Think of it as the final glow-up step in the cgroup setup pipeline for a brand-new child process. β¨
β¨ NAME β¨
cgroup_post_fork β the part where you finalize the cgroup setup for the child process. like, the finishing touch. the last swipe of lip gloss. π
π¦ SYNOPSIS π¦
void cgroup_post_fork (struct task_struct *child , struct
kernel_clone_args *kargs );
π ARGUMENTS π
So it takes two things, that's it, no notes:
childβ the child process in question πΆ the whole main character of this function, honestly.kargsβ the arguments that got passed in to create the child process. like the receipts from the clone. π§Ύ
πΈ DESCRIPTION πΈ
okay so here's the vibe: cgroup_post_fork attaches the child process to its css_set, and while it's doing that it calls the subsystem fork callbacks. that's the whole thing. it's giving "last step of the fork dance" and honestly? iconic. π₯
no cap, it's short β but every word matters, so don't sleep on it. π
π SEE ALSO π
The kernel file <cyan>./kernel/cgroup/cgroup.c</cyan> has a whole friend group for this one, and you know we're listing every single one, because nobody gets left out in this house. π«Ά
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_disable(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_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)
like I said. the whole group chat. ππ
π reminder bestie: everything above is the exact function, args, and reference list β I just gave it a wardrobe change. no facts were harmed in the making of this page. π
and that's the page!! mwah π β brought to you by the <purple>./kernel/cgroup</purple> era, dated <yellow>October 2026</yellow>, signed off with cgroup_post_fork(9) and a little sparkle βπ§π
π¦ 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