1
0
Fork 0

Merge pull request #505 from CZerta/rhbz2118786_better_log

Better log on unsupported hw for pm_qos_resume_latency_us option
This commit is contained in:
Jaroslav Škarvada 2023-03-08 19:57:21 +01:00 committed by GitHub
commit e5318d86e2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -196,6 +196,7 @@ class CPULatencyPlugin(hotplug.Plugin):
self._is_amd = False
self._has_energy_perf_bias = False
self._has_intel_pstate = False
self._has_pm_qos_resume_latency_us = None
self._min_perf_pct_save = None
self._max_perf_pct_save = None
@ -691,6 +692,13 @@ class CPULatencyPlugin(hotplug.Plugin):
def _pm_qos_resume_latency_us_path(self, device):
return "/sys/devices/system/cpu/%s/power/pm_qos_resume_latency_us" % device
def _check_pm_qos_resume_latency_us(self, device):
if self._has_pm_qos_resume_latency_us is None:
self._has_pm_qos_resume_latency_us = os.path.exists(self._pm_qos_resume_latency_us_path(device))
if not self._has_pm_qos_resume_latency_us:
log.info("Option 'pm_qos_resume_latency_us' is not supported on current hardware.")
return self._has_pm_qos_resume_latency_us
@command_set("pm_qos_resume_latency_us", per_device=True)
def _set_pm_qos_resume_latency_us(self, pm_qos_resume_latency_us, device, sim):
if not self._is_cpu_online(device):
@ -707,6 +715,8 @@ class CPULatencyPlugin(hotplug.Plugin):
else:
log.warning("Invalid latency specified: '%s'" % str(pm_qos_resume_latency_us))
return None
if not self._check_pm_qos_resume_latency_us(device):
return None
if not sim:
self._cmd.write_to_file(self._pm_qos_resume_latency_us_path(device), latency)
return latency
@ -716,6 +726,8 @@ class CPULatencyPlugin(hotplug.Plugin):
if not self._is_cpu_online(device):
log.debug("%s is not online, skipping" % device)
return None
if not self._check_pm_qos_resume_latency_us(device):
return None
return self._cmd.read_file(self._pm_qos_resume_latency_us_path(device), no_error=ignore_missing).strip()
@command_set("energy_performance_preference", per_device=True)