tools/power turbostat: Warn on bad ACPI LPIT data
On some systems /sys/devices/system/cpu/cpuidle/low_power_idle_cpu_residency_us or /sys/devices/system/cpu/cpuidle/low_power_idle_system_residency_us return a file error because of bad ACPI LPIT data from a misconfigured BIOS. turbostat interprets this failure as a fatal error and outputs turbostat: CPU LPI: No data available If the ACPI LPIT sysfs files return an error output a warning instead of a fatal error, disable the ACPI LPIT evaluation code, and continue. Signed-off-by: Prarit Bhargava <prarit@redhat.com> Signed-off-by: Len Brown <len.brown@intel.com>
This commit is contained in:
Родитель
8173c33698
Коммит
5ea7647b33
|
@ -2921,8 +2921,11 @@ int snapshot_cpu_lpi_us(void)
|
|||
fp = fopen_or_die("/sys/devices/system/cpu/cpuidle/low_power_idle_cpu_residency_us", "r");
|
||||
|
||||
retval = fscanf(fp, "%lld", &cpuidle_cur_cpu_lpi_us);
|
||||
if (retval != 1)
|
||||
err(1, "CPU LPI");
|
||||
if (retval != 1) {
|
||||
fprintf(stderr, "Disabling Low Power Idle CPU output\n");
|
||||
BIC_NOT_PRESENT(BIC_CPU_LPI);
|
||||
return -1;
|
||||
}
|
||||
|
||||
fclose(fp);
|
||||
|
||||
|
@ -2944,9 +2947,11 @@ int snapshot_sys_lpi_us(void)
|
|||
fp = fopen_or_die("/sys/devices/system/cpu/cpuidle/low_power_idle_system_residency_us", "r");
|
||||
|
||||
retval = fscanf(fp, "%lld", &cpuidle_cur_sys_lpi_us);
|
||||
if (retval != 1)
|
||||
err(1, "SYS LPI");
|
||||
|
||||
if (retval != 1) {
|
||||
fprintf(stderr, "Disabling Low Power Idle System output\n");
|
||||
BIC_NOT_PRESENT(BIC_SYS_LPI);
|
||||
return -1;
|
||||
}
|
||||
fclose(fp);
|
||||
|
||||
return 0;
|
||||
|
|
Загрузка…
Ссылка в новой задаче