Commit 29fea61c authored by Patryk Wlazlyn's avatar Patryk Wlazlyn Committed by Len Brown
Browse files

tools/power turbostat: Ignore pkg_cstate_limit when it is not available



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: default avatarPatryk Wlazlyn <patryk.wlazlyn@linux.intel.com>
Signed-off-by: default avatarLen Brown <len.brown@intel.com>
parent 4e7ee023
Loading
Loading
Loading
Loading
+3 −4
Original line number Diff line number Diff line
@@ -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 */
@@ -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;
				}