scx_cid_init(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 scx_cid_init(9) β€” Kernel API Manual, bestie 🌸

✨ NAME ✨

scx_cid_init β€” build the cid mapping. That's it, that's the whole name section, and it ate. πŸ’…

πŸ’– SYNOPSIS πŸ’–

okay so the signature is literally:

s32 scx_cid_init (struct scx_sched *sch );

No cap, that's the exact line. 🫢

🌈 ARGUMENTS 🌈

  • sch β€” the scx_sched being initialized; used as the scx_error target. Literally the target for errors, so be nice to it. πŸ’œ

πŸ¦‹ DESCRIPTION πŸ¦‹

so like, this function builds a fresh table set. ✨ It becomes visible through scx_cid_publish_tables and is retired by scx_cid_retire_tables at disable. The vibes are: publish it, then retire it when disabled.

For the model, check "Topological CPU IDs" in cid.h β€” that's the lore, iykyk. πŸ‘‘

The way it works: walk online cpus by intersection at each level (parent_scratch & this_level_mask), which keeps containment correct by construction and naturally splits a physical LLC straddling two NUMA nodes into two LLC units. highkey iconic behavior from the topology. 🌸

⚠️ The caller must hold cpus_read_lock. This is not a drill, bestie. πŸ”₯

πŸ‘‘ SEE ALSO πŸ‘‘

Kernel file: ./kernel/sched/ext/cid.c β€” the actual kernel file, go read it, it's giving source. πŸ“–


xoxo, your kernel bestie πŸ’– β€” this page is from ./kernel/sched/ext, dated October 2026, and it's literally scx_cid_init(9). periodt. πŸŽ€

πŸ“¦ where this page comes from