The new profile sets the intel_acpi driver to passive mode to
be able to set the standard acpi governors (ondemand/userspace)
and provides more flexibility on the C-states, as it is exposed
as a new variable.
Signed-off-by: Christophe Fontaine <cfontain@redhat.com>
This is a minimal viable implementation of a post-loaded profile
feature. It was implemented to satisfy the needs of the
kernel_settings Ansible role.
https://github.com/linux-system-roles/kernel_settings
This feature allows us to apply a profile in a way that is
somewhat separate from the way profiles from the active_profile file
are applied. Namely, the post-loaded profile is always applied after
all the profiles from the active_profile (or more precisely, the
post-loaded profile is always put to the tail of the profile chain
when merging). Also, the post-loaded profile setting is not affected
by running 'tuned-adm profile <some profile>' - the post-loaded
profile remains applied.
The name of the post-loaded profile is stored in
/etc/tuned/post_loaded_profile.
The lack of support for multiple post-loaded profiles was more or less
an arbitrary decision. There are no problems with it, as far as I can
see. However, there is currently no use case for multiple post-loaded
profiles, so I decided to make things easier for our future selves -
it's one less thing to worry about if we need to make changes to the
profile loading logic. We can add support for multiple post-loaded
profiles anytime.
A number of other design decisions went into the
implementation. They are listed here:
https://github.com/redhat-performance/tuned/pull/272
Resolves: rhbz#1798183
Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
Previously, when unit tests were run, python would leave behind files
with bytecompiled modules. It's not useful, it just clutters the
repository. And it could potentially lead to problems - it seems to
have lead to some problem for me earlier today when running git bisect to
find out when `make test` started failing.
Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
As discussed in rhbz#1672213, the sap-hana-vmware profile is not needed
anymore and it only confuses users. Let's drop it.
Resolves: rhbz#1715541
Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
The tests are now in a good shape, so we can now run pylint on them
without getting a huge list of errors. In fact, we should lint them
to decrease the likelihood they'll go stale again.
Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
You can now specify the python runtime using the PYTHON variable.
E.g. you can use
make PYTHON=python3 install
to install tuned modules to the python3 directory and rewrite
shebangs on executable Python files to use Python3.
Use net plugin to disable large receive offload in sap-hana-vmware profile.
This also fixes rollback of the setting - previously, after unapplying
the profile, LRO would always be set to 'on', irrespectively of the
original setting.
The network interfaces which should have LRO disabled must be listed
in /etc/tuned/sap-hana-vmware-variables.conf, e.g. like this:
sap_hana_vmware_nic=eth0
Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
Configuration files for the recommend functionality can now be
added to the /etc/tuned/recommend.d and /usr/lib/tuned/recommend.d
directories. The format is the same as in /etc/tuned/recommend.conf.
The file /etc/tuned/recommend.conf takes precedence over the files
in the recommend.d directories. The files in the /etc/tuned/recommend.d
directory are merged with those in /usr/lib/tuned/recommend.d
(in case of name conflict the file from /etc/tuned/recommend.d is used)
and are evaluated in alphabetical order. The first file containing
a matching entry is used.
The /etc/tuned/recommend.d directory is meant mainly for use by
administrators. Third-party packages should install recommend
configuration files in /usr/lib/tuned/recommend.d.
Also, the file /usr/lib/tuned/recommend.conf was moved to
/usr/lib/tuned/recommend.d/50-tuned-recommend.conf.
Resolves: rhbz#1459146
Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
pkg-config is the most reliable and cross-distro way to get
information about the systemd folders on a system.
only rely on RPM macros when pkg-config is not installed or
systemd.pc is not available.
The target executes pylint on all *.py files, except for those
in the ./tests and ./experiments subdirectories.
Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
The profile is delivered in the new tuned-profiles-cpu-partitioning subpackage.
Also moved defirqaffinity.py to the base package to allow other profiles
to use it.
Resolves: rhbz#1359956
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
This plugin can set parameters to kernel modules. It generates
/etc/modprobe.d/tuned.conf file.
Usage:
[modules]
MODULE=OPTION1=VALUE1 OPTION2=VALUE2...
E.g:
[modules]
netrom=nr_ndevs=2
This sets module 'netrom' to have 'nr_ndevs' option set to '2'. The module
can be also forced to load/reload by using special '+r' prefix, e.g.:
[modules]
netrom=+r nr_ndevs=2
Will also cause Tuned to try to remove 'netrom' module (if loaded) and
try to (re)insert it with the specified parameters. The '+r' can be followed
by an optional comma (','), i.e.:
'+r,' for better readability.
By using '+r' the module will be loaded even if not needed.
Resolves: rhbz#1249618
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
Dropped dbus at_console policy and implemented polkit authorization.
By the default policy the query actions are allowed for all users, actions
which do modification to the system settings or Tuned state are by default
allowed only for active users that have console, others need admin
authorization.
Resolves: rhbz#1095142
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>