import CS git tuned-2.27.0-2.el10_2
This commit is contained in:
parent
6a45d5e20a
commit
64013a962d
2
.gitignore
vendored
2
.gitignore
vendored
@ -1 +1 @@
|
||||
tuned-2.26.0.tar.gz
|
||||
tuned-2.27.0.tar.gz
|
||||
|
||||
2
sources
2
sources
@ -1 +1 @@
|
||||
SHA512 (tuned-2.26.0.tar.gz) = af468e1b4ca2e10cf00cad53f27d65d0b5eab73e65b9c61d67fd39ff9687700704db87294fbf62bda949b3544a9ba69c82f6d35f448226654a5949fa8de1b2c0
|
||||
SHA512 (tuned-2.27.0.tar.gz) = 7471d073879a688da66e72c4f5c562d1a732d6bfb562d8c033874a8edbad2bab3cf3c7dc387270bf99ae6b1b35ffc451173122e32023116709567e529e09dc52
|
||||
|
||||
@ -1,68 +0,0 @@
|
||||
From 8889fbb65a2fef367811dbbf97aaa77afcc59d09 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Jaroslav=20=C5=A0karvada?= <jskarvad@redhat.com>
|
||||
Date: Wed, 8 Oct 2025 19:29:41 +0200
|
||||
Subject: [PATCH] cpu-partitioning: autodetect dracut hook directory,
|
||||
workaround for systemd
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Wrong hook directory can make the machine unbootable:
|
||||
https://issues.redhat.com/browse/RHEL-119889
|
||||
|
||||
Also added workaround for currently non-functional systemd plugin
|
||||
which doesn't include the systemd config into the initrd image.
|
||||
|
||||
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
|
||||
---
|
||||
profiles/cpu-partitioning/script.sh | 13 +++++++++++--
|
||||
profiles/cpu-partitioning/tuned.conf | 3 ++-
|
||||
2 files changed, 13 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/profiles/cpu-partitioning/script.sh b/profiles/cpu-partitioning/script.sh
|
||||
index ec422ca..5fe8d7d 100755
|
||||
--- a/profiles/cpu-partitioning/script.sh
|
||||
+++ b/profiles/cpu-partitioning/script.sh
|
||||
@@ -3,10 +3,19 @@
|
||||
. /usr/lib/tuned/functions
|
||||
|
||||
start() {
|
||||
+ DRACUT_VER=`dracut --version | sed 's/^.* \([0-9]\+\).*/\1/'`
|
||||
+ echo "$DRACUT_VER" | grep -q '^[[:digit:]]\+$' || DRACUT_VER="0"
|
||||
+ # https://issues.redhat.com/browse/RHEL-119889
|
||||
+ if [ "$DRACUT_VER" -gt "102" ]
|
||||
+ then
|
||||
+ DRACUT_HOOK_DIR="/var/lib/dracut/hooks/pre-udev"
|
||||
+ else
|
||||
+ DRACUT_HOOK_DIR="/usr/lib/dracut/hooks/pre-udev"
|
||||
+ fi
|
||||
mkdir -p "${TUNED_tmpdir}/etc/systemd"
|
||||
- mkdir -p "${TUNED_tmpdir}/usr/lib/dracut/hooks/pre-udev"
|
||||
+ mkdir -p "${TUNED_tmpdir}${DRACUT_HOOK_DIR}"
|
||||
cp /etc/systemd/system.conf "${TUNED_tmpdir}/etc/systemd/"
|
||||
- cp 00-tuned-pre-udev.sh "${TUNED_tmpdir}/usr/lib/dracut/hooks/pre-udev/"
|
||||
+ cp 00-tuned-pre-udev.sh "${TUNED_tmpdir}${DRACUT_HOOK_DIR}"
|
||||
setup_kvm_mod_low_latency
|
||||
disable_ksm
|
||||
return "$?"
|
||||
diff --git a/profiles/cpu-partitioning/tuned.conf b/profiles/cpu-partitioning/tuned.conf
|
||||
index 11f03cf..e795dcb 100644
|
||||
--- a/profiles/cpu-partitioning/tuned.conf
|
||||
+++ b/profiles/cpu-partitioning/tuned.conf
|
||||
@@ -23,6 +23,7 @@ tmpdir=${f:strip:${f:exec:mktemp:-d}}
|
||||
isolated_cores_expanded=${f:cpulist_unpack:${isolated_cores}}
|
||||
isolated_cpumask=${f:cpulist2hex:${isolated_cores_expanded}}
|
||||
not_isolated_cores_expanded=${f:cpulist_invert:${isolated_cores_expanded}}
|
||||
+not_isolated_cores=${f:cpulist_pack:${not_isolated_cores_expanded}}
|
||||
isolated_cores_online_expanded=${f:cpulist_online:${isolated_cores}}
|
||||
not_isolated_cores_online_expanded=${f:cpulist_online:${not_isolated_cores_expanded}}
|
||||
not_isolated_cpumask=${f:cpulist2hex:${not_isolated_cores_expanded}}
|
||||
@@ -62,4 +63,4 @@ priority=10
|
||||
initrd_remove_dir=True
|
||||
initrd_dst_img=tuned-initrd.img
|
||||
initrd_add_dir=${tmpdir}
|
||||
-cmdline_cpu_part=+nohz=on${cmd_isolcpus} nohz_full=${isolated_cores} rcu_nocbs=${isolated_cores} tuned.non_isolcpus=${not_isolated_cpumask} intel_pstate=disable nosoftlockup
|
||||
+cmdline_cpu_part=+nohz=on${cmd_isolcpus} nohz_full=${isolated_cores} rcu_nocbs=${isolated_cores} tuned.non_isolcpus=${not_isolated_cpumask} systemd.cpu_affinity=${not_isolated_cores} intel_pstate=disable nosoftlockup
|
||||
--
|
||||
2.51.0
|
||||
|
||||
73
tuned-2.27.0-net-coalescing-fix.patch
Normal file
73
tuned-2.27.0-net-coalescing-fix.patch
Normal file
@ -0,0 +1,73 @@
|
||||
From f5cfd2a72263ebf1c868fa75afd6d6e085e10e50 Mon Sep 17 00:00:00 2001
|
||||
From: Fothsid <18036123+Fothsid@users.noreply.github.com>
|
||||
Date: Wed, 22 Apr 2026 16:01:23 +0200
|
||||
Subject: [PATCH] net: add more coalescing options, filter out unsupported ones
|
||||
|
||||
Ethtool's tx-aggr-* parameters were not known to tuned.
|
||||
|
||||
In addition to adding those, checking logic is changed to
|
||||
filter out unknown parameters supported by ethtool instead
|
||||
of simply failing to set any options.
|
||||
|
||||
Resolves: RHEL-152675
|
||||
---
|
||||
tuned/plugins/plugin_net.py | 20 +++++++++-----------
|
||||
1 file changed, 9 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/tuned/plugins/plugin_net.py b/tuned/plugins/plugin_net.py
|
||||
index 6d291b291..31b30f5df 100644
|
||||
--- a/tuned/plugins/plugin_net.py
|
||||
+++ b/tuned/plugins/plugin_net.py
|
||||
@@ -332,7 +332,10 @@ def _get_config_options_coalesce(cls):
|
||||
"rx-frames-high": None,
|
||||
"tx-usecs-high": None,
|
||||
"tx-frames-high": None,
|
||||
- "sample-interval": None
|
||||
+ "sample-interval": None,
|
||||
+ "tx-aggr-max-bytes": None,
|
||||
+ "tx-aggr-max-frames": None,
|
||||
+ "tx-aggr-time-usecs": None
|
||||
}
|
||||
|
||||
@classmethod
|
||||
@@ -615,7 +618,7 @@ def _get_mtu(self, device, instance, ignore_missing=False):
|
||||
# d is dict: {parameter: value}
|
||||
def _check_parameters(self, context, d):
|
||||
if context == "features":
|
||||
- return True
|
||||
+ return d
|
||||
params = set(d.keys())
|
||||
supported_getter = { "coalesce": self._get_config_options_coalesce, \
|
||||
"pause": self._get_config_options_pause, \
|
||||
@@ -623,9 +626,8 @@ def _check_parameters(self, context, d):
|
||||
"channels": self._get_config_options_channels }
|
||||
supported = set(supported_getter[context]().keys())
|
||||
if not params.issubset(supported):
|
||||
- log.error("unknown %s parameter(s): %s" % (context, str(params - supported)))
|
||||
- return False
|
||||
- return True
|
||||
+ log.warning("ignoring unknown %s parameter(s): %s" % (context, str(params - supported)))
|
||||
+ return {k: v for k, v in d.items() if k in supported}
|
||||
|
||||
# parse output of ethtool -a
|
||||
def _parse_pause_parameters(self, s):
|
||||
@@ -712,17 +714,13 @@ def _get_device_parameters(self, instance, context, device):
|
||||
"channels": self._parse_channels_parameters }
|
||||
parser = context2parser[context]
|
||||
d = parser(value)
|
||||
- if context == "coalesce" and not self._check_parameters(context, d):
|
||||
- return None
|
||||
- return d
|
||||
+ return self._check_parameters(context, d)
|
||||
|
||||
def _set_device_parameters(self, instance, context, value, device, sim,
|
||||
dev_params = None):
|
||||
if value is None or len(value) == 0:
|
||||
return None
|
||||
- d = self._parse_config_parameters(value, context)
|
||||
- if d is None or not self._check_parameters(context, d):
|
||||
- return {}
|
||||
+ d = self._check_parameters(context, self._parse_config_parameters(value, context))
|
||||
# check if device supports parameters and filter out unsupported ones
|
||||
if dev_params:
|
||||
self._check_device_support(instance, context, d, device, dev_params)
|
||||
29
tuned-2.27.0-openshift-revert.patch
Normal file
29
tuned-2.27.0-openshift-revert.patch
Normal file
@ -0,0 +1,29 @@
|
||||
From 8d6874c9439054f5baa04b9988d4a472c5c2924b Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Jaroslav=20=C5=A0karvada?= <jskarvad@redhat.com>
|
||||
Date: Tue, 10 Feb 2026 22:36:42 +0100
|
||||
Subject: [PATCH] Revert "feat(openshift): Optimize TCP settings for high
|
||||
throughput and low latency"
|
||||
|
||||
This reverts commit 7a1a288e85fdcd0cb163b307a54a0718064f6641.
|
||||
---
|
||||
profiles/openshift/tuned.conf | 4 ----
|
||||
1 file changed, 4 deletions(-)
|
||||
|
||||
diff --git a/profiles/openshift/tuned.conf b/profiles/openshift/tuned.conf
|
||||
index b3cf62b..197850c 100644
|
||||
--- a/profiles/openshift/tuned.conf
|
||||
+++ b/profiles/openshift/tuned.conf
|
||||
@@ -17,10 +17,6 @@ kernel.pid_max=>4194304
|
||||
fs.aio-max-nr=>1048576
|
||||
net.netfilter.nf_conntrack_max=1048576
|
||||
net.ipv4.conf.all.arp_announce=2
|
||||
-net.ipv4.tcp_notsent_lowat=131072
|
||||
-net.ipv4.tcp_slow_start_after_idle=0
|
||||
-net.ipv4.tcp_rmem="4096 131072 16777216"
|
||||
-net.ipv4.tcp_wmem="4096 16384 16777216"
|
||||
net.ipv4.neigh.default.gc_thresh1=8192
|
||||
net.ipv4.neigh.default.gc_thresh2=32768
|
||||
net.ipv4.neigh.default.gc_thresh3=65536
|
||||
--
|
||||
2.52.0
|
||||
|
||||
37
tuned.spec
37
tuned.spec
@ -42,8 +42,8 @@
|
||||
|
||||
Summary: A dynamic adaptive system tuning daemon
|
||||
Name: tuned
|
||||
Version: 2.26.0
|
||||
Release: 1%{?prerel1}%{?dist}.1
|
||||
Version: 2.27.0
|
||||
Release: 2%{?prerel1}%{?dist}
|
||||
License: GPL-2.0-or-later AND CC-BY-SA-3.0
|
||||
Source0: https://github.com/redhat-performance/%{name}/archive/v%{version}%{?prerel2}/%{name}-%{version}%{?prerel2}.tar.gz
|
||||
# RHEL-9 specific recommend.conf:
|
||||
@ -118,8 +118,10 @@ Recommends: subscription-manager
|
||||
Requires: python3-syspurpose
|
||||
%endif
|
||||
%endif
|
||||
# https://github.com/redhat-performance/tuned/pull/805
|
||||
Patch: tuned-2.26.0-cpu-partitioning-initrd-workaround.patch
|
||||
# Revert not yet RHEL approved tuning
|
||||
Patch: tuned-2.27.0-openshift-revert.patch
|
||||
# https://github.com/redhat-performance/tuned/pull/852
|
||||
Patch: tuned-2.27.0-net-coalescing-fix.patch
|
||||
|
||||
%description
|
||||
The tuned package contains a daemon that tunes system settings dynamically.
|
||||
@ -308,7 +310,7 @@ make install-ppd DESTDIR="%{buildroot}" BINDIR="%{_bindir}" \
|
||||
SBINDIR="%{_sbindir}" DOCDIR="%{docdir}" %{make_python_arg}
|
||||
|
||||
# manual
|
||||
make install-html DESTDIR=%{buildroot} DOCDIR=%{docdir}
|
||||
make install-html DESTDIR=%{buildroot} DOCDIR=%{docdir} %{make_python_arg}
|
||||
|
||||
# conditional support for grub2, grub2 is not available on all architectures
|
||||
# and tuned is noarch package, thus the following hack is needed
|
||||
@ -637,6 +639,31 @@ fi
|
||||
%config(noreplace) %{_sysconfdir}/tuned/ppd.conf
|
||||
|
||||
%changelog
|
||||
* Mon Jun 15 2026 Jaroslav Škarvada <jskarvad@redhat.com> - 2.27.0-2
|
||||
- net: added more coalescing options, filter out unsupported ones
|
||||
resolves: RHEL-181667
|
||||
|
||||
* Sun Feb 22 2026 Jaroslav Škarvada <jskarvad@redhat.com> - 2.27.0-1
|
||||
- new release
|
||||
- rebased tuned to latest upstream
|
||||
related: RHEL-123608
|
||||
|
||||
* Tue Feb 10 2026 Jaroslav Škarvada <jskarvad@redhat.com> - 2.27.0-0.1.rc1
|
||||
- new release
|
||||
- rebased tuned to latest upstream
|
||||
resolves: RHEL-123608
|
||||
- cpu-partitioning: autodetect dracut hook directory, systemd workaround
|
||||
resolves: RHEL-40619
|
||||
- openshift: optimize TCP settings for high throughput and low latency
|
||||
- profiles: Set boost=1 in *-performance profiles
|
||||
- sap-hana: force latency to 70 us, not to C-states
|
||||
resolves: RHEL-142285
|
||||
- man: fixed instance_acquire_devices example in tuned-adm man
|
||||
resolves: RHEL-90575
|
||||
- spec: use correct python interpreter for documentation installation
|
||||
- sysctl: add reapply_sysctl_exclude option
|
||||
- ppd: ask tuned recommend for base profile
|
||||
|
||||
* Mon Oct 20 2025 Jaroslav Škarvada <jskarvad@redhat.com> - 2.26.0-1.1
|
||||
- cpu-partitioning: added initrd generation dracut/systemd workarounds
|
||||
resolves: RHEL-120175
|
||||
|
||||
Loading…
Reference in New Issue
Block a user