]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
tools/power turbostat: report CoreThr per measurement interval
authorLen Brown <len.brown@intel.com>
Sun, 6 Apr 2025 15:18:39 +0000 (11:18 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 10 Apr 2025 12:39:35 +0000 (14:39 +0200)
[ Upstream commit f729775f79a9c942c6c82ed6b44bd030afe10423 ]

The CoreThr column displays total thermal throttling events
since boot time.

Change it to report events during the measurement interval.

This is more useful for showing a user the current conditions.
Total events since boot time are still available to the user via
/sys/devices/system/cpu/cpu*/thermal_throttle/*

Document CoreThr on turbostat.8

Fixes: eae97e053fe30 ("turbostat: Support thermal throttle count print")
Reported-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
Cc: Chen Yu <yu.c.chen@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
tools/power/x86/turbostat/turbostat.8
tools/power/x86/turbostat/turbostat.c

index 56c7ff6efcdabcd832cf03fbdebe10a8f00de268..a3cf1d17163ae77f2efc2d7159006885c819af8a 100644 (file)
@@ -168,6 +168,8 @@ The system configuration dump (if --quiet is not used) is followed by statistics
 .PP
 \fBPkgTmp\fP Degrees Celsius reported by the per-package Package Thermal Monitor.
 .PP
+\fBCoreThr\fP Core Thermal Throttling events during the measurement interval.  Note that events since boot can be find in /sys/devices/system/cpu/cpu*/thermal_throttle/*
+.PP
 \fBGFX%rc6\fP The percentage of time the GPU is in the "render C6" state, rc6, during the measurement interval. From /sys/class/drm/card0/power/rc6_residency_ms or /sys/class/drm/card0/gt/gt0/rc6_residency_ms or /sys/class/drm/card0/device/tile0/gtN/gtidle/idle_residency_ms depending on the graphics driver being used.
 .PP
 \fBGFXMHz\fP Instantaneous snapshot of what sysfs presents at the end of the measurement interval. From /sys/class/graphics/fb0/device/drm/card0/gt_cur_freq_mhz or /sys/class/drm/card0/gt_cur_freq_mhz or /sys/class/drm/card0/gt/gt0/rps_cur_freq_mhz or /sys/class/drm/card0/device/tile0/gtN/freq0/cur_freq depending on the graphics driver being used.
index 235e82fe7d0a56fdda40c4ef6b335710a0630e42..77ef60980ee58137276dd7e9cfd8e3eb9179cf0b 100644 (file)
@@ -3242,7 +3242,7 @@ void delta_core(struct core_data *new, struct core_data *old)
        old->c6 = new->c6 - old->c6;
        old->c7 = new->c7 - old->c7;
        old->core_temp_c = new->core_temp_c;
-       old->core_throt_cnt = new->core_throt_cnt;
+       old->core_throt_cnt = new->core_throt_cnt - old->core_throt_cnt;
        old->mc6_us = new->mc6_us - old->mc6_us;
 
        DELTA_WRAP32(new->core_energy.raw_value, old->core_energy.raw_value);