Compare commits
10 Commits
f8048d81bc
...
d6b2f08d9f
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d6b2f08d9f | ||
|
|
4c72b8c16c | ||
|
|
de0b4ce009 | ||
|
|
1772d5da93 | ||
|
|
64620871b2 | ||
|
|
41dad37e14 | ||
|
|
09385a23d0 | ||
|
|
f431964b7b | ||
|
|
51b399ad6c | ||
|
|
3abad467c4 |
25
bugfix-check_positive-has-some-contradictions.patch
Normal file
25
bugfix-check_positive-has-some-contradictions.patch
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
From d55d5c280758b6fed2c8c598a380c3c6cdc11b18 Mon Sep 17 00:00:00 2001
|
||||||
|
From: dufuhang <dufuhang@kylinos.cn>
|
||||||
|
Date: Thu, 19 Sep 2024 14:15:53 +0800
|
||||||
|
Subject: [PATCH] check_positive has some contradictions
|
||||||
|
|
||||||
|
---
|
||||||
|
tuned-adm.py | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/tuned-adm.py b/tuned-adm.py
|
||||||
|
index fcf19e2..6e5ac85 100755
|
||||||
|
--- a/tuned-adm.py
|
||||||
|
+++ b/tuned-adm.py
|
||||||
|
@@ -34,7 +34,7 @@ def check_positive(value):
|
||||||
|
except ValueError:
|
||||||
|
val = -1
|
||||||
|
if val <= 0:
|
||||||
|
- raise argparse.ArgumentTypeError("%s has to be >= 0" % value)
|
||||||
|
+ raise argparse.ArgumentTypeError("%s has to be > 0" % value)
|
||||||
|
return val
|
||||||
|
|
||||||
|
def check_log_level(value):
|
||||||
|
--
|
||||||
|
2.43.0
|
||||||
|
|
||||||
25
bugfix-expand-variables-in-Plugin.patch
Normal file
25
bugfix-expand-variables-in-Plugin.patch
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
From 48a01d08ea325354c37b8f68c02c28fa424ddff6 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Adriaan Schmidt <adriaan.schmidt@siemens.com>
|
||||||
|
Date: Fri, 20 Sep 2024 09:01:54 +0800
|
||||||
|
Subject: [PATCH] fix:expand variables in Plugin._verify_all_device_commands
|
||||||
|
|
||||||
|
---
|
||||||
|
tuned/plugins/base.py | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/tuned/plugins/base.py b/tuned/plugins/base.py
|
||||||
|
index 784d44d..c43cbb6 100644
|
||||||
|
--- a/tuned/plugins/base.py
|
||||||
|
+++ b/tuned/plugins/base.py
|
||||||
|
@@ -452,7 +452,7 @@ class Plugin(object):
|
||||||
|
def _verify_all_device_commands(self, instance, devices, ignore_missing):
|
||||||
|
ret = True
|
||||||
|
for command in [command for command in list(self._commands.values()) if command["per_device"]]:
|
||||||
|
- new_value = instance.options.get(command["name"], None)
|
||||||
|
+ new_value = self._variables.expand(instance.options.get(command["name"], None))
|
||||||
|
if new_value is None:
|
||||||
|
continue
|
||||||
|
for device in devices:
|
||||||
|
--
|
||||||
|
2.43.0
|
||||||
|
|
||||||
@ -1,25 +0,0 @@
|
|||||||
From f5a69ca8a7b602fdb79ae56425a2e36d6fb501a4 Mon Sep 17 00:00:00 2001
|
|
||||||
From: lilinjie <lilinjie@uniontech.com>
|
|
||||||
Date: Tue, 7 Mar 2023 13:38:46 +0800
|
|
||||||
Subject: [PATCH] fix 'is_active' does not work
|
|
||||||
|
|
||||||
---
|
|
||||||
tuned-gui.py | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/tuned-gui.py b/tuned-gui.py
|
|
||||||
index 3953f82..746789b 100755
|
|
||||||
--- a/tuned-gui.py
|
|
||||||
+++ b/tuned-gui.py
|
|
||||||
@@ -362,7 +362,7 @@ class Base(object):
|
|
||||||
if profile is None:
|
|
||||||
self.error_dialog('No profile selected!', '')
|
|
||||||
return
|
|
||||||
- if self._gobj('windowProfileEditor').is_active():
|
|
||||||
+ if self._gobj('windowProfileEditor').is_visible():
|
|
||||||
self.error_dialog('You are ediding '
|
|
||||||
+ self.editing_profile_name
|
|
||||||
+ ' profile.',
|
|
||||||
--
|
|
||||||
2.31.1
|
|
||||||
|
|
||||||
204
profiles-add-spark-omni.patch
Normal file
204
profiles-add-spark-omni.patch
Normal file
@ -0,0 +1,204 @@
|
|||||||
|
From 1565138efe31c2db22aad6ccbca953860edbf6ec Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lemmy Huang <huangliming5@huawei.com>
|
||||||
|
Date: Mon, 17 Feb 2025 16:34:11 +0800
|
||||||
|
Subject: [PATCH 1/2] profiles: add spark-omni
|
||||||
|
|
||||||
|
Signed-off-by: Lemmy Huang <huangliming5@huawei.com>
|
||||||
|
---
|
||||||
|
profiles/spark-omni/tuned.conf | 17 +++++
|
||||||
|
tuned-adm.py | 13 ++++
|
||||||
|
tuned/admin/__init__.py | 1 +
|
||||||
|
tuned/admin/proc.py | 113 +++++++++++++++++++++++++++++++++
|
||||||
|
4 files changed, 144 insertions(+)
|
||||||
|
create mode 100644 profiles/spark-omni/tuned.conf
|
||||||
|
create mode 100644 tuned/admin/proc.py
|
||||||
|
|
||||||
|
diff --git a/profiles/spark-omni/tuned.conf b/profiles/spark-omni/tuned.conf
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..e8afbb2
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/profiles/spark-omni/tuned.conf
|
||||||
|
@@ -0,0 +1,17 @@
|
||||||
|
+#
|
||||||
|
+# tuned configuration
|
||||||
|
+#
|
||||||
|
+
|
||||||
|
+[main]
|
||||||
|
+summary=Optimize for spark-omni
|
||||||
|
+include=latency-performance
|
||||||
|
+
|
||||||
|
+[vm]
|
||||||
|
+uname_regex=aarch64
|
||||||
|
+transparent_hugepages=never
|
||||||
|
+transparent_hugepage.defrag=never
|
||||||
|
+
|
||||||
|
+[scheduler]
|
||||||
|
+uname_regex=aarch64
|
||||||
|
+sched_features=BOUND_NUMA
|
||||||
|
+proc.bound=1
|
||||||
|
diff --git a/tuned-adm.py b/tuned-adm.py
|
||||||
|
index de0c39e..16cd135 100755
|
||||||
|
--- a/tuned-adm.py
|
||||||
|
+++ b/tuned-adm.py
|
||||||
|
@@ -74,10 +74,12 @@ if __name__ == "__main__":
|
||||||
|
|
||||||
|
parser_off = subparsers.add_parser("off", help="switch off all tunings")
|
||||||
|
parser_off.set_defaults(action="off")
|
||||||
|
+ parser_off.add_argument("--pid", action="store_const", const=0, help="pid")
|
||||||
|
|
||||||
|
parser_profile = subparsers.add_parser("profile", help="switch to a given profile, or list available profiles if no profile is given")
|
||||||
|
parser_profile.set_defaults(action="profile")
|
||||||
|
parser_profile.add_argument("profiles", metavar="profile", type=str, nargs="*", help="profile name")
|
||||||
|
+ parser_profile.add_argument("--pid", metavar="pid", type=int, nargs="?", default=None, help="pid")
|
||||||
|
|
||||||
|
parser_profile_info = subparsers.add_parser("profile_info", help="show information/description of given profile or current profile if no profile is specified")
|
||||||
|
parser_profile_info.set_defaults(action="profile_info")
|
||||||
|
@@ -128,6 +130,17 @@ if __name__ == "__main__":
|
||||||
|
daemon = config.get_bool(consts.CFG_DAEMON, consts.CFG_DEF_DAEMON)
|
||||||
|
dbus = daemon and config.get_bool(consts.CFG_ENABLE_DBUS, consts.CFG_DEF_ENABLE_DBUS)
|
||||||
|
|
||||||
|
+ profile_names = options.get("profiles")
|
||||||
|
+ if "pid" in options:
|
||||||
|
+ pid = options.pop("pid")
|
||||||
|
+ if pid != None:
|
||||||
|
+ if pid < 0:
|
||||||
|
+ parser.print_usage(file = sys.stderr)
|
||||||
|
+ sys.exit(1)
|
||||||
|
+ proc = tuned.admin.Proc(action_name, profile_dirs, profile_names, pid, debug, log_level)
|
||||||
|
+ if proc.profile_pid_active():
|
||||||
|
+ sys.exit(0)
|
||||||
|
+
|
||||||
|
try:
|
||||||
|
admin = tuned.admin.Admin(profile_dirs, dbus, debug, asynco, timeout, log_level)
|
||||||
|
|
||||||
|
diff --git a/tuned/admin/__init__.py b/tuned/admin/__init__.py
|
||||||
|
index 3b476ce..88d1520 100644
|
||||||
|
--- a/tuned/admin/__init__.py
|
||||||
|
+++ b/tuned/admin/__init__.py
|
||||||
|
@@ -1,3 +1,4 @@
|
||||||
|
from .admin import *
|
||||||
|
from .exceptions import *
|
||||||
|
from .dbus_controller import *
|
||||||
|
+from .proc import *
|
||||||
|
diff --git a/tuned/admin/proc.py b/tuned/admin/proc.py
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..f7534e2
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/tuned/admin/proc.py
|
||||||
|
@@ -0,0 +1,113 @@
|
||||||
|
+
|
||||||
|
+import tuned.admin
|
||||||
|
+from tuned.utils.commands import commands
|
||||||
|
+import os
|
||||||
|
+import sys
|
||||||
|
+import logging
|
||||||
|
+
|
||||||
|
+class Proc(object):
|
||||||
|
+ CONF_FILE_OFFSET = 1
|
||||||
|
+ CONF_VALUE_OFFSET = 2
|
||||||
|
+
|
||||||
|
+ def __init__(self, action_name, profile_dirs, profile_names, pid=0,
|
||||||
|
+ debug = False, log_level = logging.ERROR):
|
||||||
|
+ self._cmd = commands(debug)
|
||||||
|
+ self._debug = debug
|
||||||
|
+ self._log_level = log_level
|
||||||
|
+
|
||||||
|
+ self._action_name = action_name
|
||||||
|
+ self._profile_dirs = profile_dirs
|
||||||
|
+ self._profile_names = profile_names
|
||||||
|
+ self._pid = pid
|
||||||
|
+
|
||||||
|
+ self._spark_omni_conf = [
|
||||||
|
+ "uname_regex", "", "aarch64",
|
||||||
|
+ "proc.bound", "/proc/%d/bound", "0",
|
||||||
|
+ "sched_features", "/sys/kernel/debug/sched_features", "NO_BOUND_NUMA",
|
||||||
|
+ "transparent_hugepages", "/sys/kernel/mm/transparent_hugepage/enabled", "always",
|
||||||
|
+ "transparent_hugepage.defrag", "/sys/kernel/mm/transparent_hugepage/defrag", "madvise",
|
||||||
|
+ ]
|
||||||
|
+ self._all_proflie_conf = {
|
||||||
|
+ "spark-omni" : self._spark_omni_conf
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ def _log(self, log):
|
||||||
|
+ if self._debug:
|
||||||
|
+ print("[DEBUG] " + log)
|
||||||
|
+
|
||||||
|
+ def _profile_path(self, profile):
|
||||||
|
+ for dir in self._profile_dirs:
|
||||||
|
+ path = dir + "/%s/tuned.conf" % profile
|
||||||
|
+ if os.path.exists(path):
|
||||||
|
+ return path
|
||||||
|
+ return ""
|
||||||
|
+
|
||||||
|
+ def _get_profile(self, profile):
|
||||||
|
+ if profile == None:
|
||||||
|
+ return None
|
||||||
|
+ path = self._profile_path(profile)
|
||||||
|
+ if path == "":
|
||||||
|
+ return None
|
||||||
|
+
|
||||||
|
+ self._log("_get_profile: path %s" % path)
|
||||||
|
+
|
||||||
|
+ profile_conf = self._all_proflie_conf[profile]
|
||||||
|
+ if self._pid <= 0:
|
||||||
|
+ return profile_conf
|
||||||
|
+
|
||||||
|
+ # reset uname_regex=""
|
||||||
|
+ profile_conf[self.CONF_VALUE_OFFSET] = ""
|
||||||
|
+
|
||||||
|
+ with open(path, 'r') as file:
|
||||||
|
+ for line in file:
|
||||||
|
+ line = line.strip()
|
||||||
|
+ if line.startswith('#') or "=" not in line:
|
||||||
|
+ continue
|
||||||
|
+ key, value = line.split('=', 1)
|
||||||
|
+ if key in profile_conf:
|
||||||
|
+ i = profile_conf.index(key)
|
||||||
|
+ profile_conf[i + self.CONF_VALUE_OFFSET] = value
|
||||||
|
+ self._log("_get_profile: %s %s" % (key, value))
|
||||||
|
+ return profile_conf
|
||||||
|
+
|
||||||
|
+ def _set_profile(self, profile_conf):
|
||||||
|
+ if profile_conf[self.CONF_VALUE_OFFSET] != "aarch64":
|
||||||
|
+ return
|
||||||
|
+
|
||||||
|
+ for i in range(0, len(profile_conf), self.CONF_VALUE_OFFSET + 1):
|
||||||
|
+ f = i + self.CONF_FILE_OFFSET
|
||||||
|
+ v = i + self.CONF_VALUE_OFFSET
|
||||||
|
+ if "/proc/" in profile_conf[f]:
|
||||||
|
+ if self._pid <= 0:
|
||||||
|
+ continue
|
||||||
|
+ file = profile_conf[f] % self._pid
|
||||||
|
+ else:
|
||||||
|
+ file = profile_conf[f]
|
||||||
|
+
|
||||||
|
+ self._log("_set_profile: %s %s" % (file, profile_conf[v]))
|
||||||
|
+ if os.path.exists(file):
|
||||||
|
+ self._cmd.write_to_file(file, profile_conf[v])
|
||||||
|
+ return
|
||||||
|
+
|
||||||
|
+ def _profile_pid_on(self):
|
||||||
|
+ if self._profile_names == None or self._pid <= 0:
|
||||||
|
+ return
|
||||||
|
+ for profile in self._profile_names:
|
||||||
|
+ profile_conf = self._get_profile(profile)
|
||||||
|
+ self._set_profile(profile_conf)
|
||||||
|
+ return
|
||||||
|
+
|
||||||
|
+ def _profile_pid_off(self):
|
||||||
|
+ for profile in self._all_proflie_conf:
|
||||||
|
+ profile_conf = self._get_profile(profile)
|
||||||
|
+ self._set_profile(profile_conf)
|
||||||
|
+ return
|
||||||
|
+
|
||||||
|
+ def profile_pid_active(self):
|
||||||
|
+ is_exit = False;
|
||||||
|
+ if self._action_name == "off":
|
||||||
|
+ self._profile_pid_off()
|
||||||
|
+ elif self._action_name == "profile":
|
||||||
|
+ self._profile_pid_on()
|
||||||
|
+ is_exit = True;
|
||||||
|
+ return is_exit
|
||||||
|
--
|
||||||
|
2.33.0
|
||||||
|
|
||||||
@ -12,6 +12,7 @@ should be dropped in several profiles.
|
|||||||
Resolves: rhbz#1957829
|
Resolves: rhbz#1957829
|
||||||
|
|
||||||
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
|
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
|
||||||
|
|
||||||
---
|
---
|
||||||
profiles/latency-performance/tuned.conf | 13 -------------
|
profiles/latency-performance/tuned.conf | 13 -------------
|
||||||
profiles/sap-hana/tuned.conf | 4 ----
|
profiles/sap-hana/tuned.conf | 4 ----
|
||||||
@ -20,14 +21,13 @@ Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
|
|||||||
4 files changed, 45 deletions(-)
|
4 files changed, 45 deletions(-)
|
||||||
|
|
||||||
diff --git a/profiles/latency-performance/tuned.conf b/profiles/latency-performance/tuned.conf
|
diff --git a/profiles/latency-performance/tuned.conf b/profiles/latency-performance/tuned.conf
|
||||||
index 66f06ae..da1e357 100644
|
index 585c836..c780602 100644
|
||||||
--- a/profiles/latency-performance/tuned.conf
|
--- a/profiles/latency-performance/tuned.conf
|
||||||
+++ b/profiles/latency-performance/tuned.conf
|
+++ b/profiles/latency-performance/tuned.conf
|
||||||
@@ -32,16 +32,3 @@ vm.dirty_background_ratio=3
|
@@ -36,18 +36,5 @@ vm.dirty_background_ratio=3
|
||||||
# 100 tells the kernel to aggressively swap processes out of physical memory
|
|
||||||
# and move them to swap cache
|
# and move them to swap cache
|
||||||
vm.swappiness=10
|
vm.swappiness=10
|
||||||
-
|
|
||||||
-[scheduler]
|
-[scheduler]
|
||||||
-# ktune sysctl settings for rhel6 servers, maximizing i/o throughput
|
-# ktune sysctl settings for rhel6 servers, maximizing i/o throughput
|
||||||
-#
|
-#
|
||||||
@ -40,8 +40,11 @@ index 66f06ae..da1e357 100644
|
|||||||
-# "cache hot" and thus less likely to be re-migrated
|
-# "cache hot" and thus less likely to be re-migrated
|
||||||
-# (system default is 500000, i.e. 0.5 ms)
|
-# (system default is 500000, i.e. 0.5 ms)
|
||||||
-sched_migration_cost_ns = 5000000
|
-sched_migration_cost_ns = 5000000
|
||||||
|
-
|
||||||
|
[video]
|
||||||
|
panel_power_savings=0
|
||||||
diff --git a/profiles/sap-hana/tuned.conf b/profiles/sap-hana/tuned.conf
|
diff --git a/profiles/sap-hana/tuned.conf b/profiles/sap-hana/tuned.conf
|
||||||
index c91a9ee..81d5930 100644
|
index 8dcee57..aeecf53 100644
|
||||||
--- a/profiles/sap-hana/tuned.conf
|
--- a/profiles/sap-hana/tuned.conf
|
||||||
+++ b/profiles/sap-hana/tuned.conf
|
+++ b/profiles/sap-hana/tuned.conf
|
||||||
@@ -20,7 +20,3 @@ kernel.numa_balancing = 0
|
@@ -20,7 +20,3 @@ kernel.numa_balancing = 0
|
||||||
@ -53,10 +56,10 @@ index c91a9ee..81d5930 100644
|
|||||||
-sched_min_granularity_ns = 3000000
|
-sched_min_granularity_ns = 3000000
|
||||||
-sched_wakeup_granularity_ns = 4000000
|
-sched_wakeup_granularity_ns = 4000000
|
||||||
diff --git a/profiles/throughput-performance/tuned.conf b/profiles/throughput-performance/tuned.conf
|
diff --git a/profiles/throughput-performance/tuned.conf b/profiles/throughput-performance/tuned.conf
|
||||||
index ebb3f7d..98c6b26 100644
|
index 738a8a0..734fedc 100644
|
||||||
--- a/profiles/throughput-performance/tuned.conf
|
--- a/profiles/throughput-performance/tuned.conf
|
||||||
+++ b/profiles/throughput-performance/tuned.conf
|
+++ b/profiles/throughput-performance/tuned.conf
|
||||||
@@ -58,31 +58,9 @@ vm.dirty_background_ratio = 10
|
@@ -66,21 +66,6 @@ vm.swappiness=10
|
||||||
# on older kernels
|
# on older kernels
|
||||||
net.core.somaxconn=>2048
|
net.core.somaxconn=>2048
|
||||||
|
|
||||||
@ -78,18 +81,21 @@ index ebb3f7d..98c6b26 100644
|
|||||||
# Marvell ThunderX
|
# Marvell ThunderX
|
||||||
[sysctl.thunderx]
|
[sysctl.thunderx]
|
||||||
type=sysctl
|
type=sysctl
|
||||||
uname_regex=aarch64
|
@@ -88,12 +73,5 @@ uname_regex=aarch64
|
||||||
cpuinfo_regex=${thunderx_cpuinfo_regex}
|
cpuinfo_regex=${thunderx_cpuinfo_regex}
|
||||||
kernel.numa_balancing=0
|
kernel.numa_balancing=0
|
||||||
-
|
|
||||||
-# AMD
|
-# AMD
|
||||||
-[scheduler.amd]
|
-[scheduler.amd]
|
||||||
-type=scheduler
|
-type=scheduler
|
||||||
-uname_regex=x86_64
|
-uname_regex=x86_64
|
||||||
-cpuinfo_regex=${amd_cpuinfo_regex}
|
-cpuinfo_regex=${amd_cpuinfo_regex}
|
||||||
-sched_migration_cost_ns=5000000
|
-sched_migration_cost_ns=5000000
|
||||||
|
-
|
||||||
|
[video]
|
||||||
|
panel_power_savings=0
|
||||||
diff --git a/profiles/virtual-host/tuned.conf b/profiles/virtual-host/tuned.conf
|
diff --git a/profiles/virtual-host/tuned.conf b/profiles/virtual-host/tuned.conf
|
||||||
index 3358105..c1942da 100644
|
index 74a5fb0..5301d9f 100644
|
||||||
--- a/profiles/virtual-host/tuned.conf
|
--- a/profiles/virtual-host/tuned.conf
|
||||||
+++ b/profiles/virtual-host/tuned.conf
|
+++ b/profiles/virtual-host/tuned.conf
|
||||||
@@ -14,9 +14,3 @@ vm.dirty_background_ratio = 5
|
@@ -14,9 +14,3 @@ vm.dirty_background_ratio = 5
|
||||||
|
|||||||
@ -1,12 +1,11 @@
|
|||||||
diff --git a/profiles/latency-performance/tuned.conf b/profiles/latency-performance/tuned.conf
|
diff --git a/profiles/latency-performance/tuned.conf b/profiles/latency-performance/tuned.conf
|
||||||
index d200b5c..877229f 100644
|
index c780602..585c836 100644
|
||||||
--- a/profiles/latency-performance/tuned.conf
|
--- a/profiles/latency-performance/tuned.conf
|
||||||
+++ b/profiles/latency-performance/tuned.conf
|
+++ b/profiles/latency-performance/tuned.conf
|
||||||
@@ -32,3 +32,16 @@ vm.dirty_background_ratio=3
|
@@ -36,5 +36,18 @@ vm.dirty_background_ratio=3
|
||||||
# 100 tells the kernel to aggressively swap processes out of physical memory
|
|
||||||
# and move them to swap cache
|
# and move them to swap cache
|
||||||
vm.swappiness=10
|
vm.swappiness=10
|
||||||
+
|
|
||||||
+[scheduler]
|
+[scheduler]
|
||||||
+# ktune sysctl settings for rhel6 servers, maximizing i/o throughput
|
+# ktune sysctl settings for rhel6 servers, maximizing i/o throughput
|
||||||
+#
|
+#
|
||||||
@ -19,6 +18,9 @@ index d200b5c..877229f 100644
|
|||||||
+# "cache hot" and thus less likely to be re-migrated
|
+# "cache hot" and thus less likely to be re-migrated
|
||||||
+# (system default is 500000, i.e. 0.5 ms)
|
+# (system default is 500000, i.e. 0.5 ms)
|
||||||
+sched_migration_cost_ns = 5000000
|
+sched_migration_cost_ns = 5000000
|
||||||
|
+
|
||||||
|
[video]
|
||||||
|
panel_power_savings=0
|
||||||
diff --git a/profiles/sap-hana/tuned.conf b/profiles/sap-hana/tuned.conf
|
diff --git a/profiles/sap-hana/tuned.conf b/profiles/sap-hana/tuned.conf
|
||||||
index aeecf53..8dcee57 100644
|
index aeecf53..8dcee57 100644
|
||||||
--- a/profiles/sap-hana/tuned.conf
|
--- a/profiles/sap-hana/tuned.conf
|
||||||
@ -32,10 +34,10 @@ index aeecf53..8dcee57 100644
|
|||||||
+sched_min_granularity_ns = 3000000
|
+sched_min_granularity_ns = 3000000
|
||||||
+sched_wakeup_granularity_ns = 4000000
|
+sched_wakeup_granularity_ns = 4000000
|
||||||
diff --git a/profiles/throughput-performance/tuned.conf b/profiles/throughput-performance/tuned.conf
|
diff --git a/profiles/throughput-performance/tuned.conf b/profiles/throughput-performance/tuned.conf
|
||||||
index 98c6b26..ebb3f7d 100644
|
index b5e266d..8fb7c04 100644
|
||||||
--- a/profiles/throughput-performance/tuned.conf
|
--- a/profiles/throughput-performance/tuned.conf
|
||||||
+++ b/profiles/throughput-performance/tuned.conf
|
+++ b/profiles/throughput-performance/tuned.conf
|
||||||
@@ -58,9 +58,31 @@ vm.dirty_background_ratio = 10
|
@@ -66,6 +66,21 @@ vm.swappiness=10
|
||||||
# on older kernels
|
# on older kernels
|
||||||
net.core.somaxconn=>2048
|
net.core.somaxconn=>2048
|
||||||
|
|
||||||
@ -57,16 +59,19 @@ index 98c6b26..ebb3f7d 100644
|
|||||||
# Marvell ThunderX
|
# Marvell ThunderX
|
||||||
[sysctl.thunderx]
|
[sysctl.thunderx]
|
||||||
type=sysctl
|
type=sysctl
|
||||||
uname_regex=aarch64
|
@@ -73,5 +88,12 @@ uname_regex=aarch64
|
||||||
cpuinfo_regex=${thunderx_cpuinfo_regex}
|
cpuinfo_regex=${thunderx_cpuinfo_regex}
|
||||||
kernel.numa_balancing=0
|
kernel.numa_balancing=0
|
||||||
+
|
|
||||||
+# AMD
|
+# AMD
|
||||||
+[scheduler.amd]
|
+[scheduler.amd]
|
||||||
+type=scheduler
|
+type=scheduler
|
||||||
+uname_regex=x86_64
|
+uname_regex=x86_64
|
||||||
+cpuinfo_regex=${amd_cpuinfo_regex}
|
+cpuinfo_regex=${amd_cpuinfo_regex}
|
||||||
+sched_migration_cost_ns=5000000
|
+sched_migration_cost_ns=5000000
|
||||||
|
+
|
||||||
|
[video]
|
||||||
|
panel_power_savings=0
|
||||||
diff --git a/profiles/virtual-host/tuned.conf b/profiles/virtual-host/tuned.conf
|
diff --git a/profiles/virtual-host/tuned.conf b/profiles/virtual-host/tuned.conf
|
||||||
index 5301d9f..74a5fb0 100644
|
index 5301d9f..74a5fb0 100644
|
||||||
--- a/profiles/virtual-host/tuned.conf
|
--- a/profiles/virtual-host/tuned.conf
|
||||||
@ -81,3 +86,6 @@ index 5301d9f..74a5fb0 100644
|
|||||||
+# "cache hot" and thus less likely to be re-migrated
|
+# "cache hot" and thus less likely to be re-migrated
|
||||||
+# (system default is 500000, i.e. 0.5 ms)
|
+# (system default is 500000, i.e. 0.5 ms)
|
||||||
+sched_migration_cost_ns = 5000000
|
+sched_migration_cost_ns = 5000000
|
||||||
|
--
|
||||||
|
2.43.0
|
||||||
|
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
diff --git a/profiles/cpu-partitioning/script.sh b/profiles/cpu-partitioning/script.sh
|
diff --git a/profiles/cpu-partitioning/script.sh b/profiles/cpu-partitioning/script.sh
|
||||||
index 84e04fd..8677050 100755
|
index ec422ca..6e004a3 100755
|
||||||
--- a/profiles/cpu-partitioning/script.sh
|
--- a/profiles/cpu-partitioning/script.sh
|
||||||
+++ b/profiles/cpu-partitioning/script.sh
|
+++ b/profiles/cpu-partitioning/script.sh
|
||||||
@@ -2,6 +2,38 @@
|
@@ -2,6 +2,38 @@
|
||||||
@ -41,17 +41,16 @@ index 84e04fd..8677050 100755
|
|||||||
start() {
|
start() {
|
||||||
mkdir -p "${TUNED_tmpdir}/etc/systemd"
|
mkdir -p "${TUNED_tmpdir}/etc/systemd"
|
||||||
mkdir -p "${TUNED_tmpdir}/usr/lib/dracut/hooks/pre-udev"
|
mkdir -p "${TUNED_tmpdir}/usr/lib/dracut/hooks/pre-udev"
|
||||||
@@ -9,6 +41,9 @@ start() {
|
@@ -9,6 +41,8 @@ start() {
|
||||||
cp 00-tuned-pre-udev.sh "${TUNED_tmpdir}/usr/lib/dracut/hooks/pre-udev/"
|
cp 00-tuned-pre-udev.sh "${TUNED_tmpdir}/usr/lib/dracut/hooks/pre-udev/"
|
||||||
setup_kvm_mod_low_latency
|
setup_kvm_mod_low_latency
|
||||||
disable_ksm
|
disable_ksm
|
||||||
+
|
|
||||||
+ echo "$TUNED_no_balance_cores_expanded" | sed 's/,/ /g' > $no_balance_cpus_file
|
+ echo "$TUNED_no_balance_cores_expanded" | sed 's/,/ /g' > $no_balance_cpus_file
|
||||||
+ disable_balance_domains
|
+ disable_balance_domains
|
||||||
return "$?"
|
return "$?"
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -18,6 +53,7 @@ stop() {
|
@@ -18,6 +52,7 @@ stop() {
|
||||||
teardown_kvm_mod_low_latency
|
teardown_kvm_mod_low_latency
|
||||||
enable_ksm
|
enable_ksm
|
||||||
fi
|
fi
|
||||||
@ -60,7 +59,7 @@ index 84e04fd..8677050 100755
|
|||||||
}
|
}
|
||||||
|
|
||||||
diff --git a/profiles/cpu-partitioning/tuned.conf b/profiles/cpu-partitioning/tuned.conf
|
diff --git a/profiles/cpu-partitioning/tuned.conf b/profiles/cpu-partitioning/tuned.conf
|
||||||
index 979e40b..842e2bd 100644
|
index 11f03cf..a682c9c 100644
|
||||||
--- a/profiles/cpu-partitioning/tuned.conf
|
--- a/profiles/cpu-partitioning/tuned.conf
|
||||||
+++ b/profiles/cpu-partitioning/tuned.conf
|
+++ b/profiles/cpu-partitioning/tuned.conf
|
||||||
@@ -35,8 +35,6 @@ no_balance_cores_expanded=${f:cpulist_unpack:${no_balance_cores}}
|
@@ -35,8 +35,6 @@ no_balance_cores_expanded=${f:cpulist_unpack:${no_balance_cores}}
|
||||||
@ -69,12 +68,15 @@ index 979e40b..842e2bd 100644
|
|||||||
|
|
||||||
-cmd_isolcpus=${f:regex_search_ternary:${no_balance_cores}:\s*[0-9]: isolcpus=${no_balance_cores}:}
|
-cmd_isolcpus=${f:regex_search_ternary:${no_balance_cores}:\s*[0-9]: isolcpus=${no_balance_cores}:}
|
||||||
-
|
-
|
||||||
[sysctl]
|
[sysfs]
|
||||||
kernel.hung_task_timeout_secs = 600
|
/sys/bus/workqueue/devices/writeback/cpumask = ${not_isolated_cpumask}
|
||||||
kernel.nmi_watchdog = 0
|
/sys/devices/virtual/workqueue/cpumask = ${not_isolated_cpumask}
|
||||||
@@ -68,4 +66,4 @@ priority=10
|
@@ -62,4 +60,4 @@ priority=10
|
||||||
initrd_remove_dir=True
|
initrd_remove_dir=True
|
||||||
initrd_dst_img=tuned-initrd.img
|
initrd_dst_img=tuned-initrd.img
|
||||||
initrd_add_dir=${tmpdir}
|
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} intel_pstate=disable nosoftlockup
|
||||||
+cmdline_cpu_part=+nohz=on nohz_full=${isolated_cores} rcu_nocbs=${isolated_cores} tuned.non_isolcpus=${not_isolated_cpumask} intel_pstate=disable nosoftlockup
|
+cmdline_cpu_part=+nohz=on nohz_full=${isolated_cores} rcu_nocbs=${isolated_cores} tuned.non_isolcpus=${not_isolated_cpumask} intel_pstate=disable nosoftlockup
|
||||||
|
--
|
||||||
|
2.43.0
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
BIN
tuned-2.24.1.tar.gz
Normal file
BIN
tuned-2.24.1.tar.gz
Normal file
Binary file not shown.
40
tuned.spec
40
tuned.spec
@ -1,7 +1,7 @@
|
|||||||
Summary: A system tuning service for Linux
|
Summary: A system tuning service for Linux
|
||||||
Name: tuned
|
Name: tuned
|
||||||
Version: 2.20.0
|
Version: 2.24.1
|
||||||
Release: 2
|
Release: 3
|
||||||
License: GPLv2+
|
License: GPLv2+
|
||||||
Source0: https://github.com/redhat-performance/%{name}/archive/refs/tags/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
|
Source0: https://github.com/redhat-performance/%{name}/archive/refs/tags/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
|
||||||
URL: http://www.tuned-project.org/
|
URL: http://www.tuned-project.org/
|
||||||
@ -36,6 +36,9 @@ Patch2: tuned-2.18.0-sd-load-balance.patch
|
|||||||
Patch3: change-the-default-percentage-when-dirty-data-starts.patch
|
Patch3: change-the-default-percentage-when-dirty-data-starts.patch
|
||||||
Patch4: tuned-add-app-sensor-profile.patch
|
Patch4: tuned-add-app-sensor-profile.patch
|
||||||
Patch5: profiles-drop-sched_-tuning-where-appropriate.patch
|
Patch5: profiles-drop-sched_-tuning-where-appropriate.patch
|
||||||
|
Patch6: bugfix-check_positive-has-some-contradictions.patch
|
||||||
|
Patch7: bugfix-expand-variables-in-Plugin.patch
|
||||||
|
Patch8: profiles-add-spark-omni.patch
|
||||||
|
|
||||||
Provides: tuned-gtk = %{version}-%{release}
|
Provides: tuned-gtk = %{version}-%{release}
|
||||||
Provides: tuned-utils = %{version}-%{release}
|
Provides: tuned-utils = %{version}-%{release}
|
||||||
@ -223,6 +226,7 @@ fi
|
|||||||
%dir %{_datadir}/%{name}
|
%dir %{_datadir}/%{name}
|
||||||
%dir %{_sysconfdir}/%{name}
|
%dir %{_sysconfdir}/%{name}
|
||||||
%dir %{_sysconfdir}/%{name}/recommend.d
|
%dir %{_sysconfdir}/%{name}/recommend.d
|
||||||
|
%dir %{_sysconfdir}/tuned/profiles
|
||||||
%dir %{_libexecdir}/%{name}
|
%dir %{_libexecdir}/%{name}
|
||||||
%dir %{_localstatedir}/log/%{name}
|
%dir %{_localstatedir}/log/%{name}
|
||||||
%dir %{_var}/lib/%{name}
|
%dir %{_var}/lib/%{name}
|
||||||
@ -241,9 +245,9 @@ fi
|
|||||||
%{_sbindir}/diskdevstat
|
%{_sbindir}/diskdevstat
|
||||||
%{_sbindir}/scomes
|
%{_sbindir}/scomes
|
||||||
|
|
||||||
%exclude %{_prefix}/lib/%{name}/realtime
|
%exclude %{_prefix}/lib/%{name}/profiles/realtime
|
||||||
%exclude %{_prefix}/lib/%{name}/realtime-virtual-guest
|
%exclude %{_prefix}/lib/%{name}/profiles/realtime-virtual-guest
|
||||||
%exclude %{_prefix}/lib/%{name}/realtime-virtual-host
|
%exclude %{_prefix}/lib/%{name}/profiles/realtime-virtual-host
|
||||||
%{_prefix}/lib/%{name}
|
%{_prefix}/lib/%{name}
|
||||||
|
|
||||||
%config(noreplace) %{_sysconfdir}/%{name}/cpu-partitioning-variables.conf
|
%config(noreplace) %{_sysconfdir}/%{name}/cpu-partitioning-variables.conf
|
||||||
@ -257,7 +261,7 @@ fi
|
|||||||
%{_libexecdir}/%{name}/defirqaffinity*
|
%{_libexecdir}/%{name}/defirqaffinity*
|
||||||
%{_libexecdir}/%{name}/pmqos-static*
|
%{_libexecdir}/%{name}/pmqos-static*
|
||||||
%{python3_sitelib}/%{name}
|
%{python3_sitelib}/%{name}
|
||||||
%{_sysconfdir}/dbus-1/system.d/com.redhat.%{name}.conf
|
%{_datadir}/dbus-1/system.d/com.redhat.%{name}.conf
|
||||||
%verify(not size mtime md5) %{_sysconfdir}/modprobe.d/%{name}.conf
|
%verify(not size mtime md5) %{_sysconfdir}/modprobe.d/%{name}.conf
|
||||||
%{_tmpfilesdir}/%{name}.conf
|
%{_tmpfilesdir}/%{name}.conf
|
||||||
%{_unitdir}/%{name}.service
|
%{_unitdir}/%{name}.service
|
||||||
@ -280,11 +284,11 @@ fi
|
|||||||
|
|
||||||
%files profiles-devel
|
%files profiles-devel
|
||||||
%config(noreplace) %{_sysconfdir}/%{name}/realtime-variables.conf
|
%config(noreplace) %{_sysconfdir}/%{name}/realtime-variables.conf
|
||||||
%{_prefix}/lib/%{name}/realtime
|
%{_prefix}/lib/%{name}/profiles/realtime
|
||||||
%config(noreplace) %{_sysconfdir}/%{name}/realtime-virtual-guest-variables.conf
|
%config(noreplace) %{_sysconfdir}/%{name}/realtime-virtual-guest-variables.conf
|
||||||
%{_prefix}/lib/%{name}/realtime-virtual-guest
|
%{_prefix}/lib/%{name}/profiles/realtime-virtual-guest
|
||||||
%config(noreplace) %{_sysconfdir}/%{name}/realtime-virtual-host-variables.conf
|
%config(noreplace) %{_sysconfdir}/%{name}/realtime-virtual-host-variables.conf
|
||||||
%{_prefix}/lib/%{name}/realtime-virtual-host
|
%{_prefix}/lib/%{name}/profiles/realtime-virtual-host
|
||||||
%{_mandir}/man7/%{name}-profiles-realtime.7*
|
%{_mandir}/man7/%{name}-profiles-realtime.7*
|
||||||
%{_mandir}/man7/%{name}-profiles-nfv-guest.7*
|
%{_mandir}/man7/%{name}-profiles-nfv-guest.7*
|
||||||
%{_mandir}/man7/%{name}-profiles-nfv-host.7*
|
%{_mandir}/man7/%{name}-profiles-nfv-host.7*
|
||||||
@ -295,6 +299,24 @@ fi
|
|||||||
%{_mandir}/man7/tuned-profiles-spectrumscale-ece.7*
|
%{_mandir}/man7/tuned-profiles-spectrumscale-ece.7*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Mar 25 2025 liuxinhao <liuxinhao@kylinsec.com.cn> - 2.24.1-3
|
||||||
|
- ensure SYSTEM_PROFILES_DIR exists(#IBVZW8)
|
||||||
|
|
||||||
|
* Wed Mar 19 2025 LemmyHuang <huangliming5@huawei.com> - 2.24.1-2
|
||||||
|
- profiles: add spark-omni
|
||||||
|
|
||||||
|
* Wed Nov 27 2024 ZhaoYu Jiang <jiangzhaoyu@kylinos.cn> - 2.24.1-1
|
||||||
|
- Upgrade to 2.24.1:
|
||||||
|
- fixed privileged execution of arbitrary scripts by active local user. (CVE-2024-52336)
|
||||||
|
- added sanity checks for API methods parameters. (CVE-2024-52337)
|
||||||
|
- tuned-ppd: fixed controller init to correctly set_on_battery
|
||||||
|
|
||||||
|
* Fri Sep 20 2024 dufuhang <dufuhang@kylinos.cn> - 2.20.0-4
|
||||||
|
- bugfix: expand variables in Plugin._verify_all_device_commands
|
||||||
|
|
||||||
|
* Thu Sep 19 2024 dufuhang <dufuhang@kylinos.cn> - 2.20.0-3
|
||||||
|
- bugfix: check_positive has some contradictions
|
||||||
|
|
||||||
* Fri Apr 12 2024 liuchao <liuchao173@huawei.com> - 2.20.0-2
|
* Fri Apr 12 2024 liuchao <liuchao173@huawei.com> - 2.20.0-2
|
||||||
- profiles: drop sched_ tuning where appropriate
|
- profiles: drop sched_ tuning where appropriate
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user