1
0
Fork 0
Commit graph

1328 commits

Author SHA1 Message Date
Jaroslav Škarvada
476be07b46
Use python3 interpreter by default
This may ease development, because development environment will
be probably already on python3.

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2019-11-18 11:21:33 +01:00
Jaroslav Škarvada
d46abffa62
Merge pull request #205 from dhodovsk/packit-onboard-w-copr
Enable copr builds and add packit config
2019-11-14 15:13:11 +01:00
Marcelo Tosatti
785128af2d realtime profile: fix nowatchdog kernel command line option
The correct string for the option is "tsc=nowatchdog", and
not "nowatchdog".

Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
2019-11-13 21:01:43 +01:00
Dominika Hodovska
6ca96c9558 Enable copr builds and add packit config 2019-11-11 15:21:56 +01:00
Jaroslav Škarvada
2cb59c2ed6
Merge pull request #200 from marmolak/master
tests-beakerlib: Add first tests.
2019-11-04 14:31:05 +01:00
Jaroslav Škarvada
7ad091e4f7
Merge pull request #204 from olysonek/cpu_expand_vars
cpu: Expand variables in all commands
2019-11-04 14:28:19 +01:00
Marcelo Tosatti
0facf2ed5e realtime profile: add "nowatchdog" kernel command line option
This option disables the TSC clocksource watchdog
for isolated CPUs (which avoids interruptions
by the per-CPU clocksource watchdog timer).

Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
2019-11-01 11:00:28 +01:00
Ondřej Lysoněk
a30d13687c cpu: Expand variables in all commands
Variables in force_latency, min_perf_pct, max_perf_pct and no_turbo
options were not being expanded. Fix it.

Fixes #203

Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2019-10-30 08:56:49 +01:00
Jaroslav Škarvada
ee06d010d8
defirqaffinity: write smp_affinity in text mode
We do not need to use binary mode. This fixes the code for python3.

Fixes: #201

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2019-10-21 19:34:27 +02:00
Robin Hack
31d66078f6 tests-beakerlib: Add first tests.
Upstream first.

Signed-off-by: Robin Hack <rhack@redhat.com>
2019-10-21 14:19:06 +02:00
Jaroslav Škarvada
252bd91ed0
latency-peformance: backup latency requirement increased to 3 us
In the kernel table of exit latencies of various CPUs the worst
exit latency for C1 seems to be 3 us, so increase the backup
value latency requirement to 3 us to match the worst C1 exit
latency.

Related: rhbz#1737628

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2019-09-24 09:00:41 +02:00
Jaroslav Škarvada
feb6e8b6f4
profiles_loader: added support for multiple include directive
Now multiple profiles can be included by:

[main]
include=profile1;profile2

Also comma "," can be used instead of the semicolon ";".
No escaping is done, so it's assumed there will be no comma or semicolon
in the profile name.

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2019-08-20 12:46:14 +02:00
Jaroslav Škarvada
e40b50a498
Used C-states in latency specification
For sap-hana and virtual-host profiles used state3 (i.e. usually C3)
C-state in latency specification instead of the hardcoded value 70 us,
i.e.:
force_latency=cstate.id:3|70

Also dropped obsoleted TODO note from the plugin_cpu.

Related: rhbz#1737628

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2019-08-16 18:13:02 +02:00
Jaroslav Škarvada
0ec40e0360
plugin_cpu: latency can be now specified as cstate
Maximal latency can be now specified multiple ways:
- directly in usec (this is the same as before), e.g. for 10 us:
  force_latency = 10
- as an ID of maximal cstate allowed, e.g. for the kernel state1:
  force_latency = cstate.id:1
- as a name (case sensitive) of maximal cstate allowed, e.g. for the state named C1:
  force_latency = cstate.name:C1

It is also possible to specify multiple fallback values separated by '|', e.g.:
  force_latency = cstate.name:C6|cstate.id:4|10

This will try to obtain latency of cstate named C6, if it fails (e.g.
there is no such cstate), it will try kernel state4 and if it also fails
it finally fallbacks to 10 us.

This commit also changes force_latency settings of latency-performance
profile to:
  force_latency=cstate.id:1|1

I.e. it tries kernel state1 and fallbacks to 1 us.

Resolves: rhbz#1737628

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2019-08-14 16:34:17 +02:00
Jaroslav Škarvada
a8f2a8306e
plugin_sysctl: fixed traceback with modifiers '>', '<' and orig==new
It fixed the following problem e.g. the profile:
[sysctl]
kernel.pid_max=>131072

and if kernel.pid_max is already 131072 Tuned shows traceback.

Resolves: rhbz#1739418

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2019-08-09 11:40:48 +02:00
Marcelo Tosatti
25089296f3 realtime-virtual profiles: enable ktimer_lockless_check if available
RHEL will include a backport of the kernel patch
"do not raise timer softirq unconditionally (spinlockless version)"
(https://lkml.org/lkml/2019/4/15/1215), but disabled by default.

Enable it in realtime-virtual-{host/guest} profiles as it decreases
maximum cyclictest latency.

Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
2019-07-18 10:57:33 +02:00
Jaroslav Škarvada
584f7dbe2c
Merge pull request #194 from xzpeter/irqbalance
Apply irqbalance service tuning for realtime-virtual-{host|guest} profiles
2019-07-10 13:50:49 +02:00
Peter Xu
7e93b6948f realtime: Apply irqbalance tunes too in realtime profiles
Realtime profiles require to restrict irqbalance too.  Apply them to
the realtime profile so that realtime-virtual-{host|guest} can benefit
from that too.

Signed-off-by: Peter Xu <peterx@redhat.com>
2019-07-10 13:09:03 +08:00
Peter Xu
4a8e64994e cpu-partitioning: Introduce irqbalance helpers and use
Provide irqbalance_banned_cpus_{setup|clear} for tuning irqbalance.
Use them in cpu-partitioning.

Signed-off-by: Peter Xu <peterx@redhat.com>
2019-07-10 13:09:03 +08:00
Ondřej Lysoněk
66924b8422 plugin_script: Execute all scripts regardless of errors
Due to commit d4038a7e64, if a script fails to execute or its exit
code is non-zero, no subsequent scripts are executed. This seems
logically wrong and it causes problems especially during rollback as some
tunings may not be reverted due to this behaviour. Also, it appears it
was not the intention of that commit to change this behaviour - the
intention rather seems to have been to make _call_scripts return
success/error information for use by the verification mechanism.

So let's aggregate the success/error information instead.

Related: https://github.com/redhat-performance/tuned/pull/194

Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2019-07-09 11:31:20 +02:00
Jaroslav Škarvada
b514cda168
new release (2.12.0)
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2019-06-27 17:08:55 +02:00
Jaroslav Škarvada
fd0ed00757
new release (2.12.0-rc.1)
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2019-06-12 15:00:23 +02:00
Jaroslav Škarvada
9b1c045d30
realtime-virtual-host: add tsc-deadline=on to qemu cmdline
So that QEMU uses the in kernel irqchip.

Original patch provided by Luiz Capitulino <lcapitulino@redhat.com>.

Resolves: rhbz#1554458

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2019-06-10 19:11:53 +02:00
Jaroslav Škarvada
35a7b93284
Merge pull request #190 from olysonek/sap-fixes
Drop sap-hana-vmware profile, fix other SAP profiles
2019-06-10 17:51:29 +02:00
Jaroslav Škarvada
75728c041a
Merge pull request #187 from olysonek/master
Fix a bare 'except' statement
2019-06-10 17:40:05 +02:00
Jaroslav Škarvada
e363bc7fce
Merge pull request #185 from mrksu/remove-atomic-from-manual
Remove references to RHEL Atomic Host from the manual
2019-06-10 17:38:03 +02:00
Ondřej Lysoněk
664cf6dde9 sap-netweaver: Use RHEL-8 defaults for kernel.shmall and kernel.shmmax
The kernel.shmall and kernel.shmmax parameters were previously set using
a script that calculated their values based on the system's memory size.
However the script was broken for high values of memory size.

The default value of kernel.shmall and kernel.shmmax in RHEL-8 is
18446744073692774399, which is sufficiently high and it's recommended to
use it. So we could simply drop the tuning from the profile, however it
seems better to set the value explicitly so that the profile overrides
any changes that may have been applied to the parameters due to
misconfiguration.

Resolves: rhbz#1708418

Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2019-06-06 10:52:32 +02:00
Ondřej Lysoněk
d673e006e2 sap-hana: Change value of kernel.sem to RHEL-8 default
The default value of kernel.sem in RHEL-8 is '32000 1024000000 500
32000', which is much higher than what we currently have in the profile.
It is unnecessary to lower the settings, the RHEL-8 defaults are safe to
use. So we could simply drop the tuning from the profile, however it
seems better to set the value explicitly so that the profile overrides
any changes that may have been applied to the parameter due to
misconfiguration.

Resolves: rhbz#1701394

Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2019-06-06 10:52:27 +02:00
Ondřej Lysoněk
2dfa7c4a9b sap-netweaver: Change value of kernel.sem to RHEL-8 default
The default value of kernel.sem in RHEL-8 is '32000 1024000000 500
32000', which is much higher than what we currently have in the profile.
It is unnecessary to lower the settings, the RHEL-8 defaults are safe to
use. So we could simply drop the tuning from the profile, however it
seems better to set the value explicitly so that the profile overrides
any changes that may have been applied to the parameter due to
misconfiguration.

Resolves: rhbz#1701394

Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2019-06-06 10:52:24 +02:00
Ondřej Lysoněk
800945d091 Drop profile sap-hana-vmware
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>
2019-06-06 10:52:15 +02:00
Jaroslav Škarvada
dffa85b42c
Merge pull request #189 from olysonek/fix-sysctl
sysctl: Ignore non-existent settings from system sysctl configs
2019-05-31 11:33:42 +02:00
Ondřej Lysoněk
fb6d2cc90e sysctl: Ignore non-existent settings from system sysctl configs
Ignore non-existent sysctl settings from the system configuration files
(/etc/sysctl.conf, etc.). Logging errors about these settings hurts user
experience, if the non-existent settings are in fact real settings that
are just temporarily unavailable. For example, the following settings
(from /usr/lib/sysctl.d/00-system.conf on RHEL-7) are not available until
the br_netfilter module is loaded. However once that module is loaded,
it is often desirable to set these, so having them in a RHEL-provided
configuration file makes sense.

net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-call-arptables = 0

This change restores the old behaviour before the recent rewrite of the
sysctl plugin away from using the 'sysctl' program (running
'sysctl --system' ignores missing settings).

Resolves: rhbz#1714595

Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2019-05-29 17:27:02 +02:00
Ondřej Lysoněk
ba4cb72a49 Fix a bare 'except' statement
A bare 'except' statement can catch (and hide) all sorts of errors,
including NameError. Fix it to catch only the errors we really expect.

Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2019-05-29 12:48:51 +02:00
Marek Suchánek
74d1b4a7e7 Removed references to RHEL Atomic Host; RHBZ#1680387 2019-05-20 18:17:07 +02:00
Jaroslav Škarvada
1961315844
Merge pull request #184 from kbotc/kbotc-patch-1
Fix verifying sysctl options with tabs
2019-05-17 11:28:50 +02:00
kbotc
b6eb3416ea
Fix verifying sysctl options with tabs
sysctl options such as net.ipv4.tcp_wmem and net.ipv4.tcp_rmem include tabs. When you use tuned-adm verify, the changes report back as broken as the whitespaces are different because one side has been sanitized but the other side has not. This pull request will fix that.
2019-05-14 16:45:22 -06:00
Jaroslav Škarvada
1430acff81
Merge pull request #183 from olysonek/master
functions: Return an ordered cpu list in cpulist_online
2019-05-09 10:31:12 +02:00
Ondřej Lysoněk
e0bf0252a4 functions: Return an ordered cpu list in cpulist_online
cpulist_unpack, which is used in the function, returns an ordered cpu
list, however by converting it to a set, the order is lost. Rewrite the
operation in a way that preserves the order.

Resolves: rhbz#1706171

Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2019-05-09 10:23:07 +02:00
Jaroslav Škarvada
111f17cd29
Merge pull request #182 from mrksu/doc-realtime
[Docs] Clarify the information on real-time profiles on RHEL
2019-05-06 16:57:53 +02:00
Jaroslav Škarvada
37dc5dd0e0
Merge pull request #181 from openSUSE/correct_dbus_rights
Lower permissions for plugin info dbus interfaces
2019-05-06 16:55:59 +02:00
Jaroslav Škarvada
dea70604c5
Merge pull request #178 from mrksu/master
[Docs] Improved the description of the script plug-in
2019-05-06 16:54:46 +02:00
Marek Suchánek
348eb9843f Clarified real-time profiles on RHEL; RHBZ#1671105 2019-05-03 20:10:46 +02:00
Marek Suchánek
bde7cb1a86 Improved the description of the script plug-in; RHBZ#1671107 2019-05-03 19:51:16 +02:00
Jaroslav Škarvada
b1f120aa85
Merge pull request #173 from TomasKorbar/tuned-gui-manpage
Add Tuned-gui manpage
2019-05-03 14:32:47 +02:00
Thomas Renninger
cfbeb8e67e Lower permissions for plugin info dbus interfaces
As these interfaces allow loading and thus executing code from plugins
the default permission policy is lowered from:
yes:yes:yes
to
auth_admin:auth_admin:yes
So only users logged into the X server are allowed to use this interface
without extra root/admin authentication.

This was found by security review by Matthias Gerstner
<matthias.gerstner@suse.com>

Also see:
https://github.com/redhat-performance/tuned/issues/180
2019-05-03 13:13:38 +02:00
Jaroslav Škarvada
2f05df2675
Merge pull request #179 from mrksu/fix-terminology
[Docs] Tweak the terminology around Tuned and its components
2019-05-01 13:31:41 +02:00
Marek Suchánek
4e29b68669 Tweak the terminology around Tuned and its components; RHBZ#1680386 2019-04-30 19:56:34 +02:00
Jaroslav Škarvada
954ea7ea5d
Merge pull request #177 from olysonek/master
virtual-host: Fix setting force_latency
2019-04-25 11:20:40 +02:00
Ondřej Lysoněk
96363628f7 virtual-host: Fix setting force_latency
The force_latency parameter belongs to the cpu plugin, so that's the
section it needs to be in.

Fixes #132
Resolves: rhbz#1569375

Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2019-04-25 10:47:18 +02:00
Jaroslav Škarvada
b4d9dfc31c
realtime-virtual-host: fixed tscdeadline_latency.flat path
Also fixed some mismatched whitespaces.

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2019-04-05 10:49:17 +02:00