ENUM MEMBW_THROTTLE_MODE(9)
π enum membw_throttle_mode β the kernel API manual page, bestie edition π
okay so you're looking at the enum membw_throttle_mode(9) page from the Kernel API Manual, and honestly? it's a tiny one but it's important. it's literally the enum that tells you what the system's memory bandwidth throttling mode is. main character energy for a three-value enum, i know, but stick with me π«Ά
β¨ NAME β¨
enum membw_throttle_mode β the system's memory bandwidth throttling mode</p>. that's the whole vibe. it's giving "small but mighty" π
πΈ SYNOPSIS πΈ
enum membw_throttle_mode {
THREAD_THROTTLE_UNDEFINED ,
THREAD_THROTTLE_MAX ,
THREAD_THROTTLE_PER_THREAD
};
yes the spacing is exactly like that, don't come for me, i don't make the rules π
π Constants π
so there are exactly three values here, and each one has a whole personality:
THREAD_THROTTLE_UNDEFINEDβ not relevant to the system. that's it. that's the whole description. it's the "no thoughts, head empty" option πTHREAD_THROTTLE_MAXβ memory bandwidth is throttled at the core always, using the smallest bandwidth percentage assigned to threads, aka "max throttling". so like, the strictest setting. the core said "i'm watching you" πTHREAD_THROTTLE_PER_THREADβ memory bandwidth is throttled at the thread π₯. each thread gets its own throttling moment, okurrr
no cap, those three descriptions are word-for-word the meaning of the original β i'm just saying it with β¨feelingβ¨
π¦ SEE ALSO π¦
okay this section ate, because there is so much here. the kernel file is ./include/linux/resctrl.h, and it's lowkey linked to the entire resctrl cinematic universe. like, the way this enum is connected to literally everything?? iconic. here's the full squad:
enum resctrl_conf_type(9)struct resctrl_staged_config(9)struct rdt_domain_hdr(9)struct rdt_ctrl_domain(9)struct mbm_cntr_cfg(9)struct rdt_l3_mon_domain(9)struct resctrl_cache(9)struct resctrl_membw(9)enum resctrl_schema_fmt(9)struct resctrl_mon(9)struct rdt_resource(9)struct resctrl_schema(9)resctrl_arch_sync_cpu_closid_rmid(9)resctrl_get_default_ctrl(9)resctrl_arch_mon_event_config_write(9)resctrl_arch_mon_event_config_read(9)resctrl_arch_mbm_cntr_assign_enabled(9)resctrl_arch_mbm_cntr_assign_set(9)resctrl_arch_rmid_read(9)resctrl_arch_rmid_read_context_check(9)resctrl_find_domain(9)resctrl_arch_reset_rmid(9)resctrl_arch_reset_rmid_all(9)resctrl_arch_reset_all_ctrls(9)resctrl_arch_config_cntr(9)resctrl_arch_cntr_read(9)resctrl_arch_reset_cntr(9)resctrl_arch_io_alloc_enable(9)resctrl_arch_get_io_alloc_enabled(9)
like i said. the whole universe. go read them, iykyk π
and that's the page!! π this little cutie lives in the kernel file ./include/linux, and this version is dated October 2026. slay, go forth and throttle responsibly, bestie πβ¨ππ·
π¦ 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