STRUCT RAPL_PACKAGE_PMU_DATA(9)
π struct rapl_package_pmu_data(9) β Kernel API Manual
okay so bestie, welcome to struct rapl_package_pmu_data(9), straight out of the Kernel API Manual β¨. This is the per-package data for PMU support β think of it as the little backstage dressing room where one RAPL package keeps all its PMU stuff. Very main character energy, honestly π.
β¨ NAME β¨
struct rapl_package_pmu_data β Per package data for PMU support. that's it, that's the vibe π«Ά
πΈ SYNOPSIS πΈ
struct rapl_package_pmu_data {
u64 scale[RAPL_DOMAIN_MAX];
raw_spinlock_t lock;
int n_active;
struct list_head active_list;
ktime_t timer_interval;
struct hrtimer hrtimer;
};
no cap, that's the whole struct. look at her. iconic π
π¦ Members π¦
scaleβ the scale of 2^-32 Joules for each energy counter increase. so every time a counter ticks up, this lil number tells you how much actual juice that tick is worth, in Joules, scaled by 2^-32 π₯lockβ araw_spinlock_tthat protectsn_activeandactive_list. it's giving bodyguard energy, lowkey πͺn_activeβ the number of active events. just a count, doing its best πactive_listβ the list of active events. astruct list_head, keeping everyone in line β¨timer_intervalβ the maximum timer expiration time before counter overflow. basically the deadline you cannot sleep past, or the counter goes πhrtimerβ periodically updates the counter to prevent overflow. your girl is out here refreshing on a schedule so nothing spills over, we stan a proactive queen ππ
π SEE ALSO π
- Kernel file
./include/linux/intel_rapl.h struct rapl_if_priv(9)
go read those too, iykyk π
ngl bestie, treattimer_intervalandhrtimerwith respect β the whole point is that the counter gets updated before it overflows. miss that window and things go sideways, and not in a cute way π
and that's the page, fr fr π this one lives in ./include/linux, and the page date is October 2026 β mwah, go forth and read headers ππ§
π¦ 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