- improved conditionals for better readability
- fixed tuned-ppd not to run install twice
- used macro for profiles path
- consolidated names of related variables
- updated Makefile to update the current profile paths during
installation
- fixed tests to use correct profile directory on RHEL/CentOS
- consolidated whitespaces and variable names in fixed tests
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
Since 6ef5b58e , switch_profile expects self._on_battery to be
set, but when it's called in Controller.initialize, it is
called before we do self._on_battery = False , and will crash
with
AttributeError: 'Controller' object has no attribute '_on_battery'
if the requested profile is not the currently active one.
This fixes that by moving the call to switch_profile after
self._on_battery is set.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
Not clearing it before a profile switch would
result in never deleting the original plugin
objects - those would accumulate in memory with
each profile switch.
Relates: RHEL-36442
Before the `scheduler` plugin, `tuna` was used for CPU isolation.
There is a leftover use in the verification of the `realtime` profile.
Removing that, the dependency on the `tuna` package, and now-empty
scripts from the realtime profiles.
closes#594
Signed-off-by: Adriaan Schmidt <adriaan.schmidt@siemens.com>
The shell functions in profiles/functions related to irqbalance configuration
have been unused since 462df2610c. Remove them.
Signed-off-by: Adriaan Schmidt <adriaan.schmidt@siemens.com>
The option IRQBALANCE_BANNED_CPUS we're currently using has been deprecated [1],
so switch to IRQBALANCE_BANNED_CPULIST instead.
closes#656
[1] c995237885
Signed-off-by: Adriaan Schmidt <adriaan.schmidt@siemens.com>
Allow to specify CPUs and uncores using package (socket) number.
type=cpu
devices=${f:package2cpus:2} # cpus from package 2
type=cpu
devices=${f:package2cpus:1*} # cpus from any package started from 1 i.e. 11, 12, 13 ...
type=uncore
devices=${f:package2uncores:1:5:9} # uncores from package 1, 5 and 9
Signed-off-by: Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com>
Using direct frequency values in only useful in specialistic profiles
where we know target platform. Allow to configure uncore frequency as
percent of hardware maximum/minimum frequency. Such parameters can be
used in generic profiles like 'balanced' in portable way, for example:
[uncore]
max_freq_khz=90%
Signed-off-by: Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com>
Do not report an error if a process is defunct even if it
is not bound to specific CPUs: failing to change its affinity
does not have any negative effects.
Refactor the helper function _affinity_changeable to
_ignore_set_affinity_error and make it return True/False
depending on whether the failed affinity change can be
ignored (i.e., not reported as an error).
Do not check for vanished processes twice, the later
check is sufficient.
Resolves: RHEL-46560
- Only use the default profile from the configuration file if
TuneD is not already running with an active profile. This
makes the daemon "recall" the active profile after a restart.
- Make sure that SIGHUP completely resets the daemon, including
resetting the 'battery' and 'performance_degraded' status.
In #615, they were accidentally moved to /usr/lib/tuned/profiles/
where all profiles were migrated.
This also changes the location of `functions` file within
the repository, separating it from the profiles themselves.
Resolves#642.