ips_monitor(9)
π ips_monitor β the temp/power monitoring thread β¨
okay so bestie, this one's from the Kernel API Manual and it's called ips_monitor, and it is literally the main character of the IPS driver. no cap. let's get into it π«Ά
πΈ SYNOPSIS
int ips_monitor (void *data );
that's it. that's the whole vibe check. one argument, one int coming back at you π
π ARGUMENTS
dataβ the ips driver structure. yes bestie, it's avoid *, so it's giving "trust me, I know what I am" energy π
β¨ DESCRIPTION
so <pink>this is the main function for the IPS driver</pink> β like, the whole thing runs through here π
what does it actually do? it monitors power and temperature in the MCP and then adjusts the CPU and GPU power clamps accordingly. it's giving thermostat but make it kernel π§
here's the lil algorithm moment, and honestly? kinda iconic:
- we keep a 5s moving average of power consumption and temperature β
- using that data, plus the CPU vs GPU preference, we adjust the power clamps up or down π₯
that's it. that's the whole loop. no notes. periodt π
π RETURN
0on success π-errnoon error π (the classic, the beloved, the "something went sideways")
π¦ SEE ALSO
the kernel file ./drivers/platform/x86/intel_ips.c β and yeah, this thing has friends, a whole squad, a group chat if you will π:
ips_cpu_busy(9)ips_cpu_raise(9)ips_cpu_lower(9)do_enable_cpu_turbo(9)ips_enable_cpu_turbo(9)do_disable_cpu_turbo(9)ips_disable_cpu_turbo(9)ips_gpu_busy(9)ips_gpu_raise(9)ips_gpu_lower(9)ips_enable_gpu_turbo(9)ips_disable_gpu_turbo(9)mcp_exceeded(9)cpu_exceeded(9)mch_exceeded(9)verify_limits(9)update_turbo_limits(9)ips_adjust(9)ips_irq_handler(9)ips_detect_cpu(9)ips_get_i915_syms(9)
like, twenty entries. she's popular. we love a social butterfly π¦π
ngl bestie, if you're touching this, go read the whole squad up there first β they're all in ./drivers/platform/x86/intel_ips.c and they very much do the work together π«Ά
okay and before I go β this lil page lives in ./drivers/platform/x86 and the version/date stamp on it says October 2026. slay. that's the sign-off, mwah ππ
β¨
π¦ 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