sched_group_asym(9)
β¨ sched_group_asym(9) β¨
okay so this is a page from the Kernel API Manual, bestie β it's sched_group_asym, and it's literally the little function that decides whether a CPU is fancy enough to do asym_packing balancing. sit down, hydrate, let's get into it π«Ά
π NAME π
sched_group_asym β check if the destination CPU can do asym_packing balance β¨
π SYNOPSIS π
bool sched_group_asym (struct lb_env *env , struct sg_lb_stats *sgs ,
struct sched_group *group );
like, it takes three things and gives you back a bool. that's the whole vibe π
πΈ ARGUMENTS πΈ
envβ the load balancing environment, aka the whole situation she's operating in πsgsβ load-balancing statistics of the candidate busiest group (receipts! numbers! data!) πgroupβ the candidate busiest group, the one we're side-eyeing π
π¦ DESCRIPTION π¦
so here's the tea: env::dst_cpu can do asym_packing if it has higher priority than the preferred CPU of group π
that's it, that's the whole check. no cap. she literally just looks at who's got the higher priority and goes from there β¨
π RETURN π
trueβ ifenv::dst_cpucan do with asym_packing load balance π slayFalseβ otherwise π (yes, the manpage capitalises it like that, and honestly? iconic)
π SEE ALSO π
kernel file ./kernel/sched/fair.c β and like, a whole friend group of functions that hang out together:
update_tg_load_avg(9)update_cfs_rq_load_avg(9)attach_entity_load_avg(9)detach_entity_load_avg(9)cpu_util(9)sched_use_asym_prio(9)update_sg_lb_stats(9)update_sd_pick_busiest(9)idle_cpu_without(9)update_sd_lb_stats(9)calculate_imbalance(9)sched_balance_find_src_group(9)
fr fr go read those too, they're all in the same friend group and the lore is deep π§
and that's the page!! mwah π this one came out of ./kernel/sched, dated October 2026 β so yeah, she's from the future, main character energy only βπ
π¦ 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