STRUCT THERMAL_GOVERNOR(9)
π struct thermal_governor(9) β like, the Kernel API Manual page, bestie β¨
Okay so picture this: we're deep in the Kernel API Manual, right, and this page is all about struct thermal_governor β the literal blueprint that holds all your thermal governor info π«Ά. Think of it as the glow-up container for everything a governor needs to know about itself. She's structured, she's organized, she's the main character of thermal management π.
πΈ NAME πΈ
struct thermal_governor β the structure that holds thermal governor information. That's it, that's the vibe β¨
π¦ SYNOPSIS π¦
struct thermal_governor {
const char *name;
int (*bind_to_tz)(struct thermal_zone_device *tz);
void (*unbind_from_tz)(struct thermal_zone_device *tz);
void (*trip_crossed)(struct thermal_zone_device *tz, const struct thermal_trip *trip, bool upward);
void (*manage)(struct thermal_zone_device *tz);
void (*update_tz)(struct thermal_zone_device *tz, enum thermal_notify_event reason);
struct list_head governor_list;
};
Like, look at her. Every field is a little personality trait ππ
π Members π
Not me about to introduce each member like they're my closest friends. Anyway. Here we go π
nameβ the name of the governor, fr fr. This is her government name, her whole identity πbind_to_tzβ a callback that gets called when binding to a thermal zone. And okay so here's the tea: if it returns0, the governor is bound to the thermal zone. Otherwise? It fails π That's the deal. No notes.unbind_from_tzβ the callback called when a governor is unbound from a thermal zone. It's giving breakup arc π but make it kernel internals.trip_crossedβ called for trip points that have just been crossed β Like a lil' notification that the line was just stepped over. She knows. She always knows.manageβ called on thermal zone temperature updates π‘οΈβ¨ This is the moment where she actually gets to do her thing, bestie.update_tzβ a callback called when thermal zone internals have changed, e.g. when a thermal cooling instance was added/removed π₯ It's the "hey, the vibes shifted" callback.governor_listβ a node inthermal_governor_list(which lives inthermal_core.c) π§ That's the linked-list linkage, iykyk.
π SEE ALSO π
- Kernel file
./drivers/thermal/thermal_core.h struct thermal_zone_device(9)β go read this one next, bestie, it's iconic π
Okay so that's the whole page, no cap π Ngl this one was kind of a serve. Anyway β big shoutout to the source: ./drivers/thermal, dated October 2026, and yes the page is literally titled struct thermal_governor(9) because we stan a self-titled queen πβ¨ Bye bestie, go manage some thermal zones! π¦π
π¦ 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