1
0
Fork 0
Commit graph

1702 commits

Author SHA1 Message Date
Jaroslav Škarvada
190b1a4d26
Merge pull request #454 from dagrayvid/openshift-remove-sched
profiles: drop sched_ tuning from openshift-control-plane
2022-10-03 01:10:23 +02:00
Jaroslav Škarvada
548df76476
Merge pull request #464 from valschneider/realtime-ktimers
realtime-virtual-*: Tune priority of new ktimers threads
2022-09-30 23:26:04 +02:00
Valentin Schneider
fabcfe858d realtime-virtual-*: Tune priority of new ktimers threads
The PREEMPT_RT upstream tree [1] is reintroducing a per-CPU kthread for
handling timer expiry named ktimers/${cpu}, and RHEL-RT is following this
approach [2].

The recommended priority tuning for that kthread is to simply match that of
ksoftirqd, which is what is implemented here.

Note that ktimersoftd is the predecessor of ktimers, and isn't present on
RT kernels newer than v5.0.19-rt11 / RHEL-RT 7.

[1]: https://git.kernel.org/pub/scm/linux/kernel/git/rt/linux-rt-devel.git
[2]: https://bugzilla.redhat.com/show_bug.cgi?id=2122220

Resolves: rhbz#2122220
Signed-off-by: Valentin Schneider <vschneid@redhat.com>
2022-09-29 18:55:34 +01:00
Jaroslav Škarvada
6c69be25ab
Merge pull request #431 from CZerta/fix_polkit_auth
Fix in polkit authorization.
2022-09-26 23:32:16 +02:00
Jaroslav Škarvada
dda968b7b6
Merge pull request #461 from jmencak/openshift-fs.aio-max-nr
Profile openshift: increase fs.aio-max-nr tunable
2022-09-07 00:47:51 +02:00
Jaroslav Škarvada
6aceff7813
Merge pull request #457 from uniontech-lilinjie/tuned-adm-cmd
fix a few spelling errors in the manpage
2022-09-07 00:46:59 +02:00
Jaroslav Škarvada
cf47bb3b12
Merge pull request #460 from qingxiyingyue/master
Unified command prompt and modify spell error
2022-09-07 00:43:20 +02:00
Jiri Mencak
8b57a12efc Profile openshift: increase fs.aio-max-nr tunable
The kernel tunable fs.aio-max-nr specifies the maximum number of events
specified on the io_setup() call for all currently active aio contexts.
On large systems this causes issues with the io_setup() call failing
with EAGAIN.  Libvirt already increases this setting to 1048576:
96e99e4948/src/remote/libvirtd.sysctl

The only potential drawback of a larger limit is that a malicious users
could issue parallel io_setup() requests to cause the kernel to set
aside memory.

Signed-off-by: Jiri Mencak <jmencak@users.noreply.github.com>
2022-09-06 10:00:03 +02:00
lichao
e60d32c016 Unified command prompt and modify spell error 2022-09-03 16:45:27 +08:00
Jaroslav Škarvada
1a999589d3
new release (2.19.0)
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2022-08-19 20:28:45 +02:00
Jaroslav Škarvada
cb4c135acd
Merge pull request #455 from TomasTomecek/packit-yaml-improvements
Packit yaml improvements
2022-08-15 15:25:30 +02:00
root
d9d17e53c6 fix a few spelling errors in the manpage
Signed-off-by: root <root@localhost.localdomain>
2022-08-15 18:41:24 +08:00
Tomas Tomecek
29d170238f packit: s/synced_files/files_to_sync/
the field was renamed

Signed-off-by: Tomas Tomecek <ttomecek@redhat.com>
2022-08-15 10:10:38 +02:00
Tomas Tomecek
84bf158868 packit: metadata field is no longer needed
Signed-off-by: Tomas Tomecek <ttomecek@redhat.com>
2022-08-15 10:10:20 +02:00
Tomas Tomecek
966f2020f8 packit: build SRPM in Copr
srpm_build_deps switch changes the behavior

Signed-off-by: Tomas Tomecek <ttomecek@redhat.com>
2022-08-15 10:09:41 +02:00
David Gray
ffb56f0011 profiles: drop sched_ tuning from openshift-control-plane
According to testing done by the kernel QE and performance teams,
the sched_* tunables should be dropped in several profiles.

The openshift-control-plane profile is based on other profiles
which have already dropped these tunables (network-latency,
throughput-performance).
2022-08-10 16:31:32 -04:00
Jaroslav Škarvada
81fdc53ab6
new release (2.19.0-rc.1)
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2022-08-09 17:52:00 +02:00
Jaroslav Škarvada
f4f4d2b9cf
Merge pull request #453 from yarda/builtin_function_calc_isolated_cores
builtin functions: added calc_isolated_cores function
2022-08-09 16:41:02 +02:00
Jaroslav Škarvada
4dac28b038
Merge pull request #450 from yarda/spec-drop-weak-deps
spec: dropped weak deps where not needed
2022-08-09 16:39:29 +02:00
Jaroslav Škarvada
b6d3cde071
Merge pull request #432 from yarda/bootloader-escaping-fix
bootloader: cmdline parser change and fixed escaping
2022-08-09 16:38:47 +02:00
Jaroslav Škarvada
ba5c604fe2
Merge pull request #372 from adriaan42/profiles-kernel-thread-regexes
profiles: improve regexes to match kernel threads
2022-08-09 16:37:58 +02:00
Jaroslav Škarvada
8d55d8d256
Merge pull request #417 from CZerta/rhbz1891036_striping_quotes_when_unpacking_cpu_list
Striping quotes when unpacking cpu list
2022-08-09 16:11:40 +02:00
Jaroslav Škarvada
39e6d14bdf
builtin functions: added calc_isolated_cores function
The calc_isolated_cores function expands to the list of cores to
isolate. It accepts optional argument which specifies how many cores
from each socket reserve for housekeeping. If not specified, one core
from each socket is reserved for housekeeping.

Example:
Machine with 2 sockets, each 4 cores, using the following user variable
configuration file, e.g. /etc/tuned/realtime-variables.conf:
isolated_cores=${f:calc_isolated_cores:2}

It will expand to:
isolated_cores=2, 3, 6, 7

I.e. cores 0, 1 and 4, 5 will be used for housekeeping.

Also updated the TuneD profiles to use this builtin function for
isolated_cores preset.

Resolves: rhbz#2093847

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2022-08-09 13:51:45 +02:00
Jaroslav Škarvada
ed5d58e051
spec: dropped weak deps where not needed
Resolves: rhbz#2093841

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2022-06-30 16:18:36 +02:00
Jaroslav Škarvada
70732a5796
Merge pull request #428 from yarda/syspurpose-fix
recommend: do not ignore syspurpose_role if there is no syspurpose
2022-06-30 15:33:37 +02:00
Jaroslav Škarvada
da3fe5c5bc
Merge pull request #337 from jmencak/plug-in-doc
TuneD plug-in documentation.
2022-06-20 23:46:47 +02:00
Jaroslav Škarvada
9571f37013
Merge pull request #425 from CZerta/plugin_disk_arguments_fix
Fixing arguments in disk plugin method
2022-06-20 23:40:44 +02:00
Jaroslav Škarvada
9293fc9e7d
Merge pull request #436 from uniontech-lilinjie/master
Add version/help command automatic complete
2022-06-08 00:28:12 +02:00
uniontech-lilinjie
b216a9512b
Update tuned-adm.bash 2022-06-01 03:11:24 +00:00
lilinjie
fbe586e267 Add missing entries in the OPTIONS section
Signed-off-by: lilinjie <lilinjie@uniontech.com>
2022-06-01 10:39:55 +08:00
uniontech-lilinjie
0cb6edfba5
Merge branch 'redhat-performance:master' into master 2022-06-01 02:22:18 +00:00
Jaroslav Škarvada
0eafe670c2
Merge pull request #440 from nagarevaibhav/tuned-adm-man
tuned-adm: Add missing entries in the OPTIONS section
2022-05-31 15:20:03 +02:00
Vaibhav Nagare
9671f98af2 tuned-adm: Add missing entries in the OPTIONS section
Add missing options profile_info, auto_profile and profile mode in the OPTIONS section of the man page.

Resolves: rhbz#2075774

Signed-off-by: Vaibhav Nagare <vnagare@redhat.com>
2022-05-18 17:29:56 +05:30
Jaroslav Škarvada
d04b978c6a
Merge pull request #423 from vianpl/tsc
realtime: Set tsc as 'reliable'
2022-05-17 19:02:32 +02:00
Jiri Mencak
5982ad0f0e TuneD plug-in documentation.
AsciiDoc documentation for all the TuneD plug-ins directly in the source
code.  This will allow auto-generation of the TuneD plug-in
documentation.  Documenting new plug-ins and plug-in features needs to
be compulsory now.

Documentation for txqueuelen and mtu options in net plugin provided by
Jan Zerdik.

Signed-off-by: Jiri Mencak <jmencak@users.noreply.github.com>
Signed-off-by: Jan Zerdik <jzerdik@redhat.com>
2022-05-17 11:01:28 +02:00
Jaroslav Škarvada
9fa66f19de
Merge pull request #438 from CZerta/net_plugin_mtu_command
Adding mtu command to net plugin
2022-05-11 22:44:42 +02:00
Jan Zerdik
cc453048f5 Adding mtu command to net plugin
Resolves: rhbz#2082494

Signed-off-by: Jan Zerdik <jzerdik@redhat.com>
2022-05-09 12:46:52 +02:00
Jaroslav Škarvada
83dea78608
Merge pull request #437 from jmencak/openshift-profile-nvme-io_timeout
openshift profile: tuning for NVMe devices
2022-05-05 09:02:28 +02:00
Jiri Mencak
ccff8454de openshift profile: tuning for NVMe devices
AWS Nitro instances need special tuning for NVMe devices:
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nvme-ebs-volumes.html#timeout-nvme-ebs-volumes

[sysfs]
/sys/module/nvme_core/parameters/io_timeout=4294967295
/sys/module/nvme_core/parameters/max_retries=10

This tuning should probably be moved to Cloud Provider-specific profiles
once the functionality is implemented.

Signed-off-by: Jiri Mencak <jmencak@users.noreply.github.com>
2022-04-29 12:03:24 +02:00
lilinjie
21ea9b67aa Add version/help command automatic complete 2022-04-29 10:45:30 +08:00
Jaroslav Škarvada
cf4c5ab609
Merge pull request #415 from CZerta/do_not_hardcode_disk_name_where_not_needed
Do not hardcode disk name in tuned initrd path where not needed
2022-04-27 01:40:54 +02:00
Jan Zerdik
f23ff06632 Do not hardcode disk name in tuned initrd path.
Cleaner solution by jskarvad@redhat.com

Resolves: rhbz#2050246

Signed-off-by: Jan Zerdik <jzerdik@redhat.com>
2022-04-20 10:16:16 +02:00
Jaroslav Škarvada
74fdec51ec
bootloader: cmdline parser change and fixed escaping
The following is now parsed differently:

[bootloader]
cmdline =+

Previously it was parsed as operator "=" adding symbol "+" to the cmdline,
now it is parsed as operator "=+" adding empty string "".

For the previous behaviour the leading "+" can now be escaped. It works the
following way:
cmdline =+ -> operator "=+" adding ""
cmdline =\+ -> operator "=" adding "+"
cmdline =\\+ -> operator "=" adding "\+"

Non leading escaping is ignored, e.g.:
cmdline =ab\+ -> operator "=" adding "ab\+"

Similarly for the operator "=-".

Also the arguments are now correctly escaped when further processed by
TuneD and the following problems should be now fixed:

cmdline =\n -> corruption of the /etc/tuned/bootcmdline with newlines
cmdline =\k -> TuneD traceback
cmdline =\1 -> operator "=" adding "TUNED_BOOT_CMDLINE="

There could be more undesired effects and that's why the escaping different
from the previously described leading escaping "\\", "\+", "\-" should be
now ignored.

Resolves: rhbz#1884472

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2022-04-04 17:20:43 +02:00
Jan Zerdik
08b348b7a4 Fix in polkit authorization.
As *args is tuple we cannot change its values. This cause exception for example when calling dbus without sudo and fallback for tuned-adm, but this behavior at least confusing.

Signed-off-by: Jan Zerdik <jzerdik@redhat.com>
2022-04-04 14:17:45 +02:00
Nicolas Saenz Julienne
49cc817871 realtime: Set tsc as 'reliable'
We already disable the clocksource watchdog, it's there to double-check
whether clock results are coherent between reads. But a new reliability
test was introduced in recent kernels[1], tracking tsc drift between
CPUs[2]. It works by programming timers on all CPUs, including isolated
ones, and checks whether the tsc was adjusted in between runs. This
introduces unwarranted latency on real time systems. So let's promote
tsc to 'reliable', which disables both checks.

There shouldn't be any impact on old nor new setups. First, this test
didn't exist in the past, so any eventual drift was left uncorrected.
Second, most telco and HPC use-cases will make heavy use of tsc in
user-space, and its reliability is already assumed in the system's
design.

[1] c7719e793478 x86/tsc: Add a timer to make sure TSC_adjust is always
		 checked
[2] Generally caused by rogue BIOSes adjusting the tsc on a CPU and not
    doing so on the rest

Signed-off-by: Nicolas Saenz Julienne <nsaenzju@redhat.com>
2022-03-29 18:45:21 +02:00
Jaroslav Škarvada
1e7dd71334
recommend: do not ignore syspurpose_role if there is no syspurpose
Previously, if there wasn't syspurpose (usually provided by the
subscription-manger), all the 'syspurpose_role' matches were ignored.
This wasn't correct, because it didn't allow enforcing of the system
role. Now in such cases the syspurpose_role is matched against the
empty string, i.e. the empty string means 'no syspurpose role or
syspurpose error'.

E.g. previously the following rule matched in case of no syspurpose:
something_that_matched
syspurpose_role=.*atomic.*

Now it doesn't match, but the previous behavior can be still
emulated by e.g.:
something_that_matched
syspurpose_role=(.*atomic.*)|^$

Also the error about the missing syspurpose module is now displayed only
once (for each 'recommend' call) and not multiple times for each
recommend rule.

Resolves: rhbz#2030580

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2022-03-24 23:14:18 +01:00
Jan Zerdik
5f34c23035 Fixing arguments in disk plugin method
Signed-off-by: Jan Zerdik <jzerdik@redhat.com>
2022-03-17 17:41:41 +01:00
Jaroslav Škarvada
e1045f2d1d
Merge pull request #380 from CZerta/configparser_default_delimiter
Default delimiters errors, inline comments
2022-03-16 23:34:15 +01:00
Jaroslav Škarvada
afe4eb910f
Merge pull request #422 from yarda/tests-enable-epel-7
tests: enable unit tests on RHEL-7 (EPEL is needed)
2022-03-16 14:51:31 +01:00
Jaroslav Škarvada
7b25e5a679
tests: enable unit tests on EPEL-7
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2022-03-16 13:43:14 +01:00