1
0
Fork 0
Commit graph

988 commits

Author SHA1 Message Date
Jaroslav Škarvada
f563c7d756
An attempt to port Tuned to python3 and keeping it python2 compatible
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2017-12-21 10:20:13 +01:00
Jaroslav Škarvada
60bb8e293f
Makefile: added support for kvm-unit-tests downloading
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2017-12-20 15:36:39 +01:00
Jaroslav Škarvada
7ba7ef73ff
Removed CNAME
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2017-12-19 15:58:24 +01:00
Jaroslav Škarvada
4f79f56e04
Added CNAME
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2017-12-18 22:16:50 +01:00
Jaroslav Škarvada
b532e9291d
Consolidated scripts and spec file regarding tscdeadline-latency
Related: rhbz#1504680

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2017-11-14 12:34:41 +01:00
Jaroslav Škarvada
10a59112c0
Merge pull request #79 from bonzini/master
port realtime virtual host profile to Fedora
2017-11-13 16:03:52 +01:00
Ondřej Lysoněk
3c241af1d3 profiles: Use 'power' instead of 'powersave' in energy_perf_bias
The x86_energy_perf_policy program changed its interface in the 4.13
kernel. The value 'power' now has to be used instead of 'powersave'.

Resolves: rhbz#1508468
2017-11-01 16:31:53 +01:00
Jaroslav Škarvada
9587b5550f
Makefile: fixed user recommend.d location
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2017-10-29 21:22:54 +01:00
Jaroslav Škarvada
4c6a3088df
Makefile: added $SYSCONFDIR and $SYSCONFDIR/recommend.d
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2017-10-29 21:20:29 +01:00
Jaroslav Škarvada
55a8f07ebb
new release (2.9.0)
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2017-10-29 20:57:37 +01:00
Jaroslav Škarvada
856572edc4
spec: added directory /etc/tuned/recommend.d
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2017-10-24 00:41:34 +02:00
Ondřej Lysoněk
c6472e37c0 Fix a variable dereference
Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2017-10-20 16:42:41 +02:00
Jaroslav Škarvada
eeaa444cb3
new release (2.9.0-rc.2)
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2017-10-20 15:50:25 +02:00
Jaroslav Škarvada
c91357cdf5
cpu-partitioning: store helper state file to /run and few other tweaks
Helper state file for cpu-partitioning script was moved to /run/tuned.
Code for flags manipulation has been simplified.
The /run/tuned directory is explicitly cleared upon uninstallation
of Tuned to get rid of all leftovers / helper files before the reboot.
Added STORAGE_PERSISTENT variable pointing to /var/lib/tuned into
functions to be consistent.

Related: rhbz#1497182

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2017-10-20 15:13:45 +02:00
Paolo Bonzini
d41ee92a3a port realtime virtual host profile to Fedora
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2017-10-20 14:24:12 +02:00
Luiz Capitulino
b39c2af9db cpu-partitioning: add no_rebalance_cores= option
As cpu-partitioning doesn't use isolcpus=, isolated CPUs can incur
very high latency due to load balancing performed by the kernel
scheduler.

This patch introduces a new configuration option called
no_rebalance_cores=. This options allow users to set a range
of CPUs to have load balancing disabled from /proc. It is
expected that users will only disable load balancing on CPUs
which run PMD threads (or vCPU threads running PMD threads),
since disabling this for all isolated CPUs can cause certain
performance problems for OpenStack.

Here are some numbers:

 - Without using no_rebalance_cores=, I can easily get 40us+
   in load balancing isolated CPUs:

           <...>-14140 [001]  1656.121155: funcgraph_entry:      + 43.927 us  |  rebalance_domains();
           <...>-14140 [001]  1660.117150: funcgraph_entry:      + 41.587 us  |  rebalance_domains();
           <...>-14140 [001]  1658.119152: funcgraph_entry:      + 41.565 us  |  rebalance_domains();
           <...>-14140 [001]  1668.110140: funcgraph_entry:      + 40.539 us  |  rebalance_domains();

 - When using no_rebalance_cores=, the maximum latency I
   get is ~ 1us:

           <...>-2440  [012]  1705.078076: funcgraph_entry:        1.024 us   |  rebalance_domains();
           <...>-2438  [008]  2021.065218: funcgraph_entry:        0.995 us   |  rebalance_domains();
           <...>-2447  [010]  2223.057289: funcgraph_entry:        0.991 us   |  rebalance_domains();

  IMPORTANT: 10 minutes run only.

This solution was developed by Andrew Theurer <atheurer@redhat.com>,
I'm merely integrating it into the profile.

Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2017-10-20 13:51:33 +02:00
Jaroslav Škarvada
c3e18790ec Merge pull request #77 from olysonek/variables
Expand variables in the 'devices' option
2017-10-18 00:17:22 +02:00
Ondřej Lysoněk
d2557284f7 Expand variables in the 'devices' option
Variables in the 'devices' option were not being expanded. This is
bad. It shows that the current variable expansion system is broken.
We need to come up with a consistent, well-defined way of expanding
variables. Preferably it should be done all in one place.

The expansion is probably still not done for options 'type', 'enabled',
'replace', 'devices_udev_regex', 'script_pre' and 'script_post'. Let's
deal with that later, as we don't need it in our profiles right now.

Related: rhbz#1490399

Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2017-10-16 17:44:45 +02:00
Ondřej Lysoněk
2e4cb7339b Fix an inconsistency regarding a None value
Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2017-10-16 12:12:56 +02:00
Jaroslav Škarvada
2243cb7a45
spec: added fix to work with pre-release
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2017-10-13 13:45:05 +02:00
Jaroslav Škarvada
0d2986d459
new release (2.9.0-rc.1)
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2017-10-13 00:02:10 +02:00
Jaroslav Škarvada
79d995a3fb
sap-hana: change force_latency to 70
Resolves: rhbz#1501252

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2017-10-12 17:10:21 +02:00
Ondřej Lysoněk
9fef12dddf cpu-partitioning: Fix typo in 00-tuned-pre-udev.sh
Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2017-10-12 16:30:33 +02:00
Jaroslav Škarvada
a31d9f9455 Merge pull request #75 from olysonek/defirqaffinity
defirqaffinity: Handle errors when settig smp_affinity
2017-10-11 18:33:22 +02:00
Ondřej Lysoněk
581062dd34 Make errors less verbose in save_active_profile()
Hopefully this will make it more user-friendly.

Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2017-10-11 16:14:00 +02:00
Ondřej Lysoněk
21e2f9735a defirqaffinity: Handle errors when settig smp_affinity
Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2017-10-11 14:52:14 +02:00
Ondřej Lysoněk
f32f2a3ecc plugin_scheduler: Return PID as an integer in get_processes()
This fixes a traceback when unapplying group_* options.

Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2017-10-11 14:18:17 +02:00
Luiz Capitulino
03449e60f9 tuned: disable KSM in KVM low-latency profiles
KSM is enabled by default when the qemu-kvm-common-rhev package is
installed. We don't want KSM to run in KVM-RT nor cpu-partitioning
hosts, as it can cause spikes or packet drops.

This series disables KSM in those profiles when they are activated.
Likewise, we re-enable KSM when the profile is de-activated in
case it's enabled by default in systemd.

Luiz Capitulino (3):
  profiles: functions: add functions to disable/enable KSM
  realtime-virtual-host: disable KSM
  cpu-partitioning: disable KSM

 profiles/cpu-partitioning/script.sh      |  2 ++
 profiles/functions                       | 37 ++++++++++++++++++++++++++++++++
 profiles/realtime-virtual-host/script.sh |  3 +++
 3 files changed, 42 insertions(+)

--
2.9.5
Return-Path: lcapitulino@redhat.com
Received: from zmta04.collab.prod.int.phx2.redhat.com (LHLO
 zmta04.collab.prod.int.phx2.redhat.com) (10.5.81.11) by
 zmail22.collab.prod.int.phx2.redhat.com with LMTP; Tue, 3 Oct 2017 15:54:02
 -0400 (EDT)
Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12])
	by zmta04.collab.prod.int.phx2.redhat.com (Postfix) with ESMTP id 46F2FD0310
	for <jskarvad@mail.corp.redhat.com>; Tue,  3 Oct 2017 15:54:02 -0400 (EDT)
Received: by smtp.corp.redhat.com (Postfix)
	id 3FBC860F82; Tue,  3 Oct 2017 19:54:02 +0000 (UTC)
Delivered-To: jskarvad@redhat.com
Received: from localhost (ovpn-117-159.phx2.redhat.com [10.3.117.159])
	by smtp.corp.redhat.com (Postfix) with ESMTP id 3A51A60F81;
	Tue,  3 Oct 2017 19:53:59 +0000 (UTC)
From: Luiz Capitulino <lcapitulino@redhat.com>
To: jskarvad@redhat.com
Cc: kvm-rt@redhat.com
Subject: [PATCH 1/3] profiles: functions: add functions to disable/enable KSM
Date: Tue,  3 Oct 2017 15:53:50 -0400
Message-Id: <20171003195352.22910-2-lcapitulino@redhat.com>
In-Reply-To: <20171003195352.22910-1-lcapitulino@redhat.com>
References: <20171003195352.22910-1-lcapitulino@redhat.com>
X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12

They will be used by the next commits.

Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2017-10-10 14:00:28 +02:00
Jaroslav Škarvada
66bef6e45a Merge pull request #74 from olysonek/fixes
Various fixes
2017-10-10 10:09:22 +02:00
Ondřej Lysoněk
a4346d2b48 Don't do full rollback on systems without systemd when tuned is exiting
Fixes commit 701f09a8.

Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2017-09-26 13:03:02 +02:00
Ondřej Lysoněk
7e7b1ee878 plugin_net: Allow disabling dynamic tuning
The net plugin can now be given the boolean 'dynamic'
option, which is used to determine, whether dynamic tuning
should be enabled.

Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2017-09-26 10:44:33 +02:00
Ondřej Lysoněk
cf87220216 Allow applying multiple profiles
The 'tuned-adm profile' command can now (once again) be given multiple
profile names. In case of conflicting settings in the profiles, the
setting from the last profile specified is used.

E.g.:
tuned-adm profile powersave balanced

Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2017-09-26 10:44:33 +02:00
Ondřej Lysoněk
ed8bf19ec2 Fix hang when 'tuned-adm profile' is given empty profile name
Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2017-09-26 10:42:53 +02:00
Ondřej Lysoněk
d78565a205 Start dbus exports after a profile is applied
We should register to dbus after a profile is fully applied when
starting up. This makes systemd services depending on some tunings
performed by tuned (with After=tuned.service in their service file)
to start only after all tunings were applied.

Resolves: https://github.com/redhat-performance/tuned/issues/23
Resolves: rhbz#1443142

Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2017-09-26 10:22:17 +02:00
Jaroslav Škarvada
65b3cae0cc Merge pull request #72 from olysonek/radeon
plugin_video: Prefix DPM states with 'dpm-'
2017-09-20 13:49:05 +02:00
Ondřej Lysoněk
f9f261e820 plugin_video: Prefix DPM states with 'dpm-'
Prefix DPM states with 'dpm-' to prevent future name collisions.
Also, change the state in powersave profiles to 'battery' - there's
no such DPM state as powersave.

Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2017-09-19 23:03:41 +02:00
Jaroslav Škarvada
513a6ca25f Merge pull request #71 from olysonek/auto_profile
Store profile selection mode in a separate file
2017-09-19 17:23:13 +02:00
Ondřej Lysoněk
f3d170f7bd Add profile_mode file to Makefile and spec
Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2017-09-19 17:07:21 +02:00
Jaroslav Škarvada
182d3f4abd Merge pull request #70 from olysonek/replace_ethtool_in_scripts
Replace ethtool invocation in scripts by built-in functionality
2017-09-19 16:50:54 +02:00
Ondřej Lysoněk
b970238a3d profiles: Use net plugin to disable LRO in sap-hana-vmware
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>
2017-09-19 16:38:15 +02:00
Jaroslav Škarvada
5971003b0d Merge pull request #69 from olysonek/makefile
Makefile: Make use of SCRATCH_BUILD_TARGET, change it to rhel-7.5-candidate
2017-09-19 15:55:59 +02:00
Jaroslav Škarvada
de2b132a8e Merge pull request #68 from olysonek/doc
Documentation updates
2017-09-19 15:55:09 +02:00
Jaroslav Škarvada
c3be853a76 Merge pull request #67 from olysonek/dbus_exporter_race
Fix race between DBus exporter startup and applying a profile
2017-09-19 15:42:30 +02:00
Jaroslav Škarvada
97c28b3404 Merge pull request #66 from olysonek/master
Fix applying a profile from cloud-init
2017-09-19 15:41:13 +02:00
Jaroslav Škarvada
eef09f1185
plugin_video: merged radeon 'dpm' into radeon_powersave
Now, in addition to the already supported Radeon power methods, it also
supports:

radeon_powersave=DPM

where DPM can be 'battery', 'balanced', or 'performance'.

It also supports fallback, so one can write:

radeon_powersave=balanced, auto

where it tries 'balanced' DPM profile and if it fails or is not
supported it fallbacks to the non DPM 'auto' profile.

As delimiters colon, semilocon, comma or whitespace can be used.

It also switched upstream profiles to prefer DPM.

https://github.com/redhat-performance/tuned/pull/32

Related: rhbz#1417659

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2017-09-19 14:57:26 +02:00
Jaroslav Škarvada
dd6460be8d Merge pull request #32 from olysonek/radeon
[WIP] Video plugin improvements
2017-09-19 11:57:55 +02:00
Ondřej Lysoněk
b2c80cabe5 Store profile selection mode in a separate file
The profile selection mode is now written to /etc/tuned/profile_mode
instead of the second line of /etc/tuned/active_profile.

Here are the rules for interpreting the contents of the files. If
either of the files does not exist, it is treated the same as if
it were empty.

If active_profile is empty:
    If profile_mode contains 'manual':
        Manual mode, no profile will be used, tuned will run without a profile
    else if profile_mode is empty or contains 'auto':
        Automatic mode, recommended profile is used
    else:
        Error
else:
    If profile_mode contains 'manual', or is empty (for compatibility reasons):
        Manual mode, the profile in active_profile will be used
    else if profile_mode contains 'auto':
        Automatic mode, recommended profile is used
    else:
        Error

Resolves: https://github.com/redhat-performance/tuned/issues/64

Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2017-09-18 10:50:41 +02:00
Ondřej Lysoněk
179886cf51 net: Fix rollback for large receive offload
Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2017-09-13 13:19:38 +02:00
Ondřej Lysoněk
313355ad32 net: Move a comment
Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2017-09-12 15:16:51 +02:00
Ondřej Lysoněk
37ebbc322b Makefile: Make use of SCRATCH_BUILD_TARGET, change it to rhel-7.5-candidate
Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2017-09-12 14:22:40 +02:00