mirror of
https://github.com/raspberrypi/linux.git
synced 2025-12-06 10:00:17 +00:00
tools/power turbostat: Clustered Uncore MHz counters should honor show/hide options
[ Upstream commit 1c7c7388e6 ]
The clustered uncore frequency counters, UMHz*.*
should honor the --show and --hide options.
All non-specified counters should be implicityly hidden.
But when --show was used, UMHz*.* showed up anyway:
$ sudo turbostat -q -S --show Busy%
Busy% UMHz0.0 UMHz1.0 UMHz2.0 UMHz3.0 UMHz4.0
Indeed, there was no string that can be used to explicitly
show or hide clustered uncore counters.
Even through they are dynamically probed and added,
group the clustered UMHz*.* counters with the legacy
built-in-counter "UncMHz" for show/hide.
turbostat --show Busy%
does not show UMHz*.*.
turbostat --show UncMHz
shows either UncMHz or UMHz*.*, if present
turbostat --hide UncMHz
hides either UncMHz or UMHz*.*, if present
Reported-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
Tested-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
a48894b8d1
commit
00e1df5b7a
@@ -201,6 +201,7 @@ The system configuration dump (if --quiet is not used) is followed by statistics
|
||||
\fBUncMHz\fP per-package uncore MHz, instantaneous sample.
|
||||
.PP
|
||||
\fBUMHz1.0\fP per-package uncore MHz for domain=1 and fabric_cluster=0, instantaneous sample. System summary is the average of all packages.
|
||||
For the "--show" and "--hide" options, use "UncMHz" to operate on all UMHz*.* as a group.
|
||||
.SH TOO MUCH INFORMATION EXAMPLE
|
||||
By default, turbostat dumps all possible information -- a system configuration header, followed by columns for all counters.
|
||||
This is ideal for remote debugging, use the "--out" option to save everything to a text file, and get that file to the expert helping you debug.
|
||||
|
||||
@@ -6713,6 +6713,17 @@ static void probe_intel_uncore_frequency_cluster(void)
|
||||
sprintf(path, "%s/current_freq_khz", path_base);
|
||||
sprintf(name_buf, "UMHz%d.%d", domain_id, cluster_id);
|
||||
|
||||
/*
|
||||
* Once add_couter() is called, that counter is always read
|
||||
* and reported -- So it is effectively (enabled & present).
|
||||
* Only call add_counter() here if legacy BIC_UNCORE_MHZ (UncMHz)
|
||||
* is (enabled). Since we are in this routine, we
|
||||
* know we will not probe and set (present) the legacy counter.
|
||||
*
|
||||
* This allows "--show/--hide UncMHz" to be effective for
|
||||
* the clustered MHz counters, as a group.
|
||||
*/
|
||||
if BIC_IS_ENABLED(BIC_UNCORE_MHZ)
|
||||
add_counter(0, path, name_buf, 0, SCOPE_PACKAGE, COUNTER_K2M, FORMAT_AVERAGE, 0, package_id);
|
||||
|
||||
if (quiet)
|
||||
|
||||
Reference in New Issue
Block a user