46 lines
2.0 KiB
Diff
46 lines
2.0 KiB
Diff
From 43375e6bbe389606fbd24d0a84535285a1a8040c Mon Sep 17 00:00:00 2001
|
|
From: =?UTF-8?q?Ond=C5=99ej=20Lyson=C4=9Bk?= <olysonek@redhat.com>
|
|
Date: Thu, 17 Sep 2020 18:57:24 +0800
|
|
Subject: [PATCH] cpu: Update checking if EPB is supported
|
|
|
|
Update checking if EPB is supported so that it works with recent
|
|
versions of the x86_energy_perf_policy tool. Newer versions of
|
|
x86_energy_perf_policy, unlike older versions, exit with a zero exit
|
|
code even if the CPU doesn't support EPB. Newer versions of the tool
|
|
give no ouput on stdout if EPB is not supported, so check for that.
|
|
|
|
In the future, we might like to determine if EPB is supported by
|
|
searching /proc/cpuinfo for specific CPU flags. However the solution
|
|
described in the previous paragraph should work just fine for now.
|
|
|
|
Resolves: rhbz#1690929
|
|
|
|
Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
|
|
|
|
https://github.com/redhat-performance/tuned/pull/217/commits/43375e6bbe389606fbd24d0a84535285a1a8040c
|
|
---
|
|
tuned/plugins/plugin_cpu.py | 7 +++++--
|
|
1 file changed, 5 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/tuned/plugins/plugin_cpu.py b/tuned/plugins/plugin_cpu.py
|
|
index 8f0babd..4934022 100644
|
|
--- a/tuned/plugins/plugin_cpu.py
|
|
+++ b/tuned/plugins/plugin_cpu.py
|
|
@@ -61,8 +61,11 @@ class CPULatencyPlugin(base.Plugin):
|
|
def _check_energy_perf_bias(self):
|
|
self._has_energy_perf_bias = False
|
|
retcode_unsupported = 1
|
|
- retcode = self._cmd.execute(["x86_energy_perf_policy", "-r"], no_errors = [errno.ENOENT, retcode_unsupported])[0]
|
|
- if retcode == 0:
|
|
+ retcode, out = self._cmd.execute(["x86_energy_perf_policy", "-r"], no_errors = [errno.ENOENT, retcode_unsupported])
|
|
+ # With recent versions of the tool, a zero exit code is
|
|
+ # returned even if EPB is not supported. The output is empty
|
|
+ # in that case, however.
|
|
+ if retcode == 0 and out != "":
|
|
self._has_energy_perf_bias = True
|
|
elif retcode < 0:
|
|
log.warning("unable to run x86_energy_perf_policy tool, ignoring CPU energy performance bias, is the tool installed?")
|
|
--
|
|
2.23.0
|
|
|