cgroup_parse_float(9)
π
cgroup_parse_float β Kernel API Manual, bestie edition π
okay so real talk, this is a page from the Kernel API Manual for cgroup_parse_float(9), and honestly? it's a little icon and it deserves its flowers. it does exactly one thing and it does it flawlessly. main character energy fr fr.
β¨ NAME β¨
cgroup_parse_float β parse a floating number π
lowkey the humblest name for a function that eats decimals for breakfast.
πΈ SYNOPSIS πΈ
int cgroup_parse_float (const char *input , unsigned dec_shift , s64 *v );
three args, one int coming back at you. no cap, that's the whole vibe.
π¦ ARGUMENTS π¦
inputβ the input string, aka the little text gremlin you're feeding in πdec_shiftβ number of decimal digits to shift. yes, that many. you decide π«vβ output. this is where the answer goes to live its best life β¨
π DESCRIPTION π
so here's the tea: it parses a decimal floating point number in input and stores the result in v with the decimal point right shifted dec_shift times. that's it. that's the gig.
like, for example β if input is "12.3456" and dec_shift is 3, then *v will be set to 12345. see? the decimal point just scooted over. iconic behavior, honestly. π©°
it returns 0 on success, -errno otherwise. slay. that's the entire contract.
and the funniest part? there's nothing cgroup specific about this function β like, at all β except that it's currently the only user. it's a floater living in the cgroup house rent-free π. we love a squatter with range.
bestie note: this is a -errno return situation, so a negative number is code for "something went wrong", not a result. don't get it twisted π
π§ SEE ALSO π§
kernel file ./kernel/cgroup/cgroup.c, and literally the whole friend group:
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_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)
like I said β the whole group chat π
and that's the page!! mwah π this little section (./kernel/cgroup version, dated October 2026, manual cgroup_parse_float(9)) is out β go shift some decimals and be gorgeous about it π
β¨π«Ά
π¦ 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