Skip to content

Commit

Permalink
tools/power turbostat: Ignore pkg_cstate_limit when it is not available
Browse files Browse the repository at this point in the history
When running in no-msr mode, the pkg_cstate_limit is not populated, thus
we use perf to determine if given pcstate counter is present on the
platform.

Signed-off-by: Patryk Wlazlyn <patryk.wlazlyn@linux.intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
  • Loading branch information
Patryk Wlazlyn authored and Len Brown committed May 16, 2024
1 parent 4e7ee02 commit 29fea61
Showing 1 changed file with 3 additions and 4 deletions.
7 changes: 3 additions & 4 deletions tools/power/x86/turbostat/turbostat.c
Original file line number Diff line number Diff line change
Expand Up @@ -7121,9 +7121,7 @@ void cstate_perf_init_(bool soft_c1)

const bool counter_needed = BIC_IS_ENABLED(cai->bic) ||
(soft_c1 && (cai->flags & CSTATE_COUNTER_FLAG_SOFT_C1_DEPENDENCY));
const bool counter_supported =
(platform->supported_cstates & cai->feature_mask) &&
(pkg_cstate_limit >= cai->pkg_cstate_limit);
const bool counter_supported = (platform->supported_cstates & cai->feature_mask);

if (counter_needed && counter_supported) {
/* Use perf API for this counter */
Expand All @@ -7132,7 +7130,8 @@ void cstate_perf_init_(bool soft_c1)
cci->source[cai->rci_index] = CSTATE_SOURCE_PERF;

/* User MSR for this counter */
} else if (!no_msr && cai->msr && probe_msr(cpu, cai->msr) == 0) {
} else if (!no_msr && cai->msr && pkg_cstate_limit >= cai->pkg_cstate_limit
&& probe_msr(cpu, cai->msr) == 0) {
cci->source[cai->rci_index] = CSTATE_SOURCE_MSR;
cci->msr[cai->rci_index] = cai->msr;
}
Expand Down

0 comments on commit 29fea61

Please sign in to comment.