STRUCT RESCTRL_PQR_STATE(9)
π struct resctrl_pqr_state(9) π
okay bestie, welcome to the Kernel API Manual β¨ β this one lives over in ./arch/x86/include/asm and it's literally the state cache for the PQR MSR, no cap π
πΈ NAME πΈ
struct resctrl_pqr_state β the state cache for the PQR MSR, periodt π
β¨ SYNOPSIS β¨
struct resctrl_pqr_state {
u32 cur_rmid;
u32 cur_closid;
u32 default_rmid;
u32 default_closid;
};
like, that's the whole vibe. four lil u32s and she's iconic π¦
π«Ά Members π«Ά
cur_rmidβ the cached Resource Monitoring ID π (this is the current one, bestie)cur_closidβ the cached Class Of Service ID βdefault_rmidβ the user assigned Resource Monitoring ID πdefault_closidβ the user assigned cached Class Of Service ID π (yes girl, "user assigned cached" β that's exactly what the original says, iykyk)
π Description π
okay so here's the tea β the upper 32 bits of MSR_IA32_PQR_ASSOC contain closid, and the lower 10 bits hold rmid. and because the update to MSR_IA32_PQR_ASSOC always contains both parts, we literally have to cache them β no way around it, fr fr π
this struct also stores the user configured per cpu CLOSID and RMID π
and plot twist, the cache is also doing us a solid: it helps avoid pointless updates if the value does not change π like, why write if nothing changed? exactly. we don't. ate and left no crumbs π₯
π¦ SEE ALSO π¦
- Kernel file
./arch/x86/include/asm/resctrl.hβ go read it, bestie, it's giving main character energy π
kay that's the whole page!! this one's from ./arch/x86/include/asm, dated October 2026, and it's filed under struct resctrl_pqr_state(9) β mwah, go slay your kernel reading πβ¨π
π¦ 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