Compare commits
No commits in common. "c8" and "c9" have entirely different histories.
2
.gitignore
vendored
2
.gitignore
vendored
@ -1 +1 @@
|
|||||||
SOURCES/tuna-0.18.tar.xz
|
SOURCES/tuna-0.19.tar.xz
|
||||||
|
1
.tuna.metadata
Normal file
1
.tuna.metadata
Normal file
@ -0,0 +1 @@
|
|||||||
|
4b8a04d219536ff295ef8ed188c6efcd0f74ee38 SOURCES/tuna-0.19.tar.xz
|
@ -1,4 +1,4 @@
|
|||||||
From 8c9b74f89c616a7aebbbd159e71aeb3c49979472 Mon Sep 17 00:00:00 2001
|
From fbde2418c84e57723ae1698acfe5932a11f4d611 Mon Sep 17 00:00:00 2001
|
||||||
From: Clark Williams <clrkwllms@kernel.org>
|
From: Clark Williams <clrkwllms@kernel.org>
|
||||||
Date: Thu, 17 Aug 2023 08:12:38 -0500
|
Date: Thu, 17 Aug 2023 08:12:38 -0500
|
||||||
Subject: [PATCH 1/2] Add SPDX license identifiers
|
Subject: [PATCH 1/2] Add SPDX license identifiers
|
||||||
@ -81,15 +81,15 @@ index 2ca87e9edc62..a65117637160 100755
|
|||||||
import getopt
|
import getopt
|
||||||
import sys
|
import sys
|
||||||
diff --git a/setup.py b/setup.py
|
diff --git a/setup.py b/setup.py
|
||||||
index f3e36529fefb..a00adb9721a8 100755
|
index db0f00735524..f119e75abdeb 100755
|
||||||
--- a/setup.py
|
--- a/setup.py
|
||||||
+++ b/setup.py
|
+++ b/setup.py
|
||||||
@@ -1,4 +1,5 @@
|
@@ -1,4 +1,5 @@
|
||||||
#!/usr/bin/python3
|
#!/usr/bin/python3
|
||||||
+# SPDX-License-Identifier: GPL-2.0-only
|
+# SPDX-License-Identifier: GPL-2.0-only
|
||||||
from distutils.sysconfig import get_python_lib
|
import os
|
||||||
from distutils.core import setup
|
import sysconfig
|
||||||
from os.path import isfile, join
|
from os.path import isfile, relpath
|
||||||
diff --git a/testuna b/testuna
|
diff --git a/testuna b/testuna
|
||||||
index 4bf91ebdb76f..cb98640c0167 100755
|
index 4bf91ebdb76f..cb98640c0167 100755
|
||||||
--- a/testuna
|
--- a/testuna
|
||||||
@ -130,7 +130,7 @@ index 4bf91ebdb76f..cb98640c0167 100755
|
|||||||
die_if_conf_changed 'Restoring kernel thread sched policy'
|
die_if_conf_changed 'Restoring kernel thread sched policy'
|
||||||
|
|
||||||
diff --git a/tuna-cmd.py b/tuna-cmd.py
|
diff --git a/tuna-cmd.py b/tuna-cmd.py
|
||||||
index f5dafa739da2..38e7017336a5 100755
|
index 6a980598526f..e953869c4f48 100755
|
||||||
--- a/tuna-cmd.py
|
--- a/tuna-cmd.py
|
||||||
+++ b/tuna-cmd.py
|
+++ b/tuna-cmd.py
|
||||||
@@ -5,14 +5,7 @@
|
@@ -5,14 +5,7 @@
|
||||||
@ -147,7 +147,7 @@ index f5dafa739da2..38e7017336a5 100755
|
|||||||
-# General Public License for more details.
|
-# General Public License for more details.
|
||||||
+# SPDX-License-Identifier: GPL-2.0-only
|
+# SPDX-License-Identifier: GPL-2.0-only
|
||||||
|
|
||||||
""" tuna - Application Tuning GUI """
|
""" tuna - Application Tuning Program"""
|
||||||
|
|
||||||
diff --git a/tuna.desktop b/tuna.desktop
|
diff --git a/tuna.desktop b/tuna.desktop
|
||||||
index 603011f79467..87ca3a35ce63 100644
|
index 603011f79467..87ca3a35ce63 100644
|
||||||
@ -296,7 +296,7 @@ index 1c903e106a44..cd2377a8df26 100755
|
|||||||
classes for /sys/devices/system/cpu/
|
classes for /sys/devices/system/cpu/
|
||||||
so we can get topology information and do CPU hotplug operations
|
so we can get topology information and do CPU hotplug operations
|
||||||
diff --git a/tuna/tuna.py b/tuna/tuna.py
|
diff --git a/tuna/tuna.py b/tuna/tuna.py
|
||||||
index e64211b88fc3..464d7f73212e 100755
|
index e527facb151c..bd678e2dc7ae 100755
|
||||||
--- a/tuna/tuna.py
|
--- a/tuna/tuna.py
|
||||||
+++ b/tuna/tuna.py
|
+++ b/tuna/tuna.py
|
||||||
@@ -1,5 +1,6 @@
|
@@ -1,5 +1,6 @@
|
||||||
@ -306,7 +306,7 @@ index e64211b88fc3..464d7f73212e 100755
|
|||||||
|
|
||||||
import copy
|
import copy
|
||||||
import errno
|
import errno
|
||||||
@@ -649,12 +650,12 @@ def generate_rtgroups(filename, kthreads, nr_cpus):
|
@@ -647,12 +648,12 @@ def generate_rtgroups(filename, kthreads, nr_cpus):
|
||||||
f.write('''# Generated by tuna
|
f.write('''# Generated by tuna
|
||||||
#
|
#
|
||||||
# Use it with rtctl:
|
# Use it with rtctl:
|
||||||
@ -321,7 +321,7 @@ index e64211b88fc3..464d7f73212e 100755
|
|||||||
# scheduling policy.
|
# scheduling policy.
|
||||||
#
|
#
|
||||||
# Format is: <groupname>:<sched>:<prio>:<regex>
|
# Format is: <groupname>:<sched>:<prio>:<regex>
|
||||||
@@ -663,7 +664,7 @@ def generate_rtgroups(filename, kthreads, nr_cpus):
|
@@ -661,7 +662,7 @@ def generate_rtgroups(filename, kthreads, nr_cpus):
|
||||||
# sched must be one of: 'f' (fifo)
|
# sched must be one of: 'f' (fifo)
|
||||||
# 'b' (batch)
|
# 'b' (batch)
|
||||||
# 'r' (round-robin)
|
# 'r' (round-robin)
|
||||||
|
@ -1,175 +0,0 @@
|
|||||||
From 9dfaafe278f6cccf6911cddef413dc59e87722e7 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Leah Leshchinsky <lleshchi@redhat.com>
|
|
||||||
Date: Wed, 16 Nov 2022 10:38:10 -0500
|
|
||||||
Subject: [PATCH] tuna: Adapt show_threads cgroup output to terminal size
|
|
||||||
|
|
||||||
Passing the --cgroup flag for the --show_threads command currently displays
|
|
||||||
long cgroup strings on the thread output and decreases readability.
|
|
||||||
|
|
||||||
Adapt the show_threads output to account for output string and terminal
|
|
||||||
size, and format output accordingly to improve readability. Add
|
|
||||||
--spaced flag to --show_threads to print cgroups spacing in
|
|
||||||
between thread outputs.
|
|
||||||
|
|
||||||
Signed-off-by: Leah Leshchinsky <lleshchi@redhat.com>
|
|
||||||
|
|
||||||
---
|
|
||||||
target branch: getopt
|
|
||||||
|
|
||||||
Signed-off-by: Leah Leshchinsky <lleshchi@redhat.com>
|
|
||||||
|
|
||||||
diff --git a/docs/tuna.8 b/docs/tuna.8
|
|
||||||
index 3a06556..218ba14 100644
|
|
||||||
--- a/docs/tuna.8
|
|
||||||
+++ b/docs/tuna.8
|
|
||||||
@@ -80,6 +80,9 @@ Disable display of selected CPUs in \fB--gui\fR. Requires \fB-c\R.
|
|
||||||
\fB\-G\fR, \fB\-\-cgroup\fR
|
|
||||||
Display the processes with the type of cgroups they are in. Requires \fB-P\R.
|
|
||||||
.TP
|
|
||||||
+\fB\-z\fR, \fB\-\-spaced\fR
|
|
||||||
+Display spaced view for cgroups. Requires \fB-G\R.
|
|
||||||
+.TP
|
|
||||||
\fB\-K\fR, \fB\-\-no_kthreads\fR
|
|
||||||
Operations will not affect kernel threads.
|
|
||||||
.TP
|
|
||||||
diff --git a/tuna-cmd.py b/tuna-cmd.py
|
|
||||||
index 75b63da..54dc567 100755
|
|
||||||
--- a/tuna-cmd.py
|
|
||||||
+++ b/tuna-cmd.py
|
|
||||||
@@ -99,6 +99,8 @@ def usage():
|
|
||||||
print(fmt % ('-g, --gui', _('Start the GUI')))
|
|
||||||
print(fmt % ('-G, --cgroup',
|
|
||||||
_('Display the processes with the type of cgroups they are in')))
|
|
||||||
+ print(fmt % ('-z, --spaced',
|
|
||||||
+ "Display spaced view for cgroups"))
|
|
||||||
print(fmt % ('-c, --cpus=' + _('CPU-LIST'), _('%(cpulist)s affected by commands') %
|
|
||||||
{"cpulist": _('CPU-LIST')}))
|
|
||||||
print(fmt % ('-C, --affect_children',
|
|
||||||
@@ -249,7 +251,7 @@ def format_affinity(affinity):
|
|
||||||
return ",".join(str(hex(a)) for a in procfs.hexbitmask(affinity, get_nr_cpus()))
|
|
||||||
|
|
||||||
def ps_show_thread(pid, affect_children, ps, has_ctxt_switch_info, sock_inodes,
|
|
||||||
- sock_inode_re, cgroups):
|
|
||||||
+ sock_inode_re, cgroups, columns=None, compact=True):
|
|
||||||
global irqs
|
|
||||||
try:
|
|
||||||
affinity = format_affinity(os.sched_getaffinity(pid))
|
|
||||||
@@ -286,10 +288,20 @@ def ps_show_thread(pid, affect_children, ps, has_ctxt_switch_info, sock_inodes,
|
|
||||||
nonvoluntary_ctxt_switches)
|
|
||||||
|
|
||||||
# Indent affected children
|
|
||||||
- print(" %-5d " % pid if affect_children else " %-5d" % pid, end=' ')
|
|
||||||
- print("%6s %5d %8s%s %15s %s" % (sched, rtprio, affinity,
|
|
||||||
- ctxt_switch_info, cmd, users), end=' ')
|
|
||||||
- print(" %9s" % cgout if cgroups else "")
|
|
||||||
+ s1 = " %-5d " % pid if affect_children else " %-5d" % pid
|
|
||||||
+ print(s1, end=' ')
|
|
||||||
+ s2 = "%6s %5d %8s%s %15s %s" % (sched, rtprio, affinity,
|
|
||||||
+ ctxt_switch_info, cmd, users)
|
|
||||||
+ print(s2, end=' ')
|
|
||||||
+
|
|
||||||
+ if cgroups:
|
|
||||||
+ length = int(columns) - len(s1 + " ") - len(s2 + " ")
|
|
||||||
+ if len(" %9s" % cgout) <= length:
|
|
||||||
+ print("%s" % cgout)
|
|
||||||
+ else:
|
|
||||||
+ print("\n %s" % cgout + ("" if compact else "\n"))
|
|
||||||
+ else:
|
|
||||||
+ print()
|
|
||||||
|
|
||||||
if sock_inodes:
|
|
||||||
ps_show_sockets(pid, ps, sock_inodes, sock_inode_re,
|
|
||||||
@@ -298,12 +310,12 @@ def ps_show_thread(pid, affect_children, ps, has_ctxt_switch_info, sock_inodes,
|
|
||||||
for tid in list(ps[pid]["threads"].keys()):
|
|
||||||
ps_show_thread(tid, False, ps[pid]["threads"],
|
|
||||||
has_ctxt_switch_info,
|
|
||||||
- sock_inodes, sock_inode_re, cgroups)
|
|
||||||
+ sock_inodes, sock_inode_re, cgroups, columns, compact)
|
|
||||||
|
|
||||||
|
|
||||||
def ps_show(ps, affect_children, thread_list, cpu_list,
|
|
||||||
irq_list_numbers, show_uthreads, show_kthreads,
|
|
||||||
- has_ctxt_switch_info, sock_inodes, sock_inode_re, cgroups):
|
|
||||||
+ has_ctxt_switch_info, sock_inodes, sock_inode_re, cgroups, compact):
|
|
||||||
|
|
||||||
ps_list = []
|
|
||||||
for pid in list(ps.keys()):
|
|
||||||
@@ -340,9 +352,14 @@ def ps_show(ps, affect_children, thread_list, cpu_list,
|
|
||||||
|
|
||||||
ps_list.sort()
|
|
||||||
|
|
||||||
+ # Width of terminal in columns
|
|
||||||
+ columns = None
|
|
||||||
+ if cgroups:
|
|
||||||
+ _, columns = os.popen('stty size', 'r').read().split()
|
|
||||||
+
|
|
||||||
for pid in ps_list:
|
|
||||||
ps_show_thread(pid, affect_children, ps, has_ctxt_switch_info,
|
|
||||||
- sock_inodes, sock_inode_re, cgroups)
|
|
||||||
+ sock_inodes, sock_inode_re, cgroups, columns, compact)
|
|
||||||
|
|
||||||
|
|
||||||
def load_socktype(socktype, inodes):
|
|
||||||
@@ -363,7 +380,7 @@ def load_sockets():
|
|
||||||
|
|
||||||
|
|
||||||
def do_ps(thread_list, cpu_list, irq_list, show_uthreads, show_kthreads,
|
|
||||||
- affect_children, show_sockets, cgroups):
|
|
||||||
+ affect_children, show_sockets, cgroups, compact):
|
|
||||||
ps = procfs.pidstats()
|
|
||||||
if affect_children:
|
|
||||||
ps.reload_threads()
|
|
||||||
@@ -380,7 +397,7 @@ def do_ps(thread_list, cpu_list, irq_list, show_uthreads, show_kthreads,
|
|
||||||
ps_show_header(has_ctxt_switch_info, cgroups)
|
|
||||||
ps_show(ps, affect_children, thread_list,
|
|
||||||
cpu_list, irq_list, show_uthreads, show_kthreads,
|
|
||||||
- has_ctxt_switch_info, sock_inodes, sock_inode_re, cgroups)
|
|
||||||
+ has_ctxt_switch_info, sock_inodes, sock_inode_re, cgroups, compact)
|
|
||||||
except IOError:
|
|
||||||
# 'tuna -P | head' for instance
|
|
||||||
pass
|
|
||||||
@@ -535,13 +552,13 @@ def main():
|
|
||||||
|
|
||||||
i18n_init()
|
|
||||||
try:
|
|
||||||
- short = "a:c:dDCfgGhiIKlmNp:PQq:r:R:s:S:t:UvWxL:"
|
|
||||||
+ short = "a:c:dDCfgGzhiIKlmNp:PQq:r:R:s:S:t:UvWxL:"
|
|
||||||
long = ["cpus=", "affect_children", "filter", "gui", "help",
|
|
||||||
"isolate", "include", "no_kthreads", "move", "nohz_full",
|
|
||||||
"show_sockets", "priority=", "show_threads",
|
|
||||||
"show_irqs", "irqs=",
|
|
||||||
"save=", "sockets=", "threads=", "no_uthreads",
|
|
||||||
- "version", "what_is", "spread", "cgroup", "config_file_apply=",
|
|
||||||
+ "version", "what_is", "spread", "cgroup", "spaced", "config_file_apply=",
|
|
||||||
"config_file_list", "run=", "refresh=", "disable_perf", "logging=", "debug"]
|
|
||||||
if have_inet_diag:
|
|
||||||
short += "n"
|
|
||||||
@@ -556,6 +573,7 @@ def main():
|
|
||||||
kthreads = True
|
|
||||||
uthreads = True
|
|
||||||
cgroups = False
|
|
||||||
+ compact = True
|
|
||||||
cpu_list = None
|
|
||||||
debug = False
|
|
||||||
irq_list = None
|
|
||||||
@@ -623,6 +641,8 @@ def main():
|
|
||||||
affect_children = True
|
|
||||||
elif o in ("-G", "--cgroup"):
|
|
||||||
cgroups = True
|
|
||||||
+ elif o in ("-z", "--spaced"):
|
|
||||||
+ compact = False
|
|
||||||
elif o in ("-t", "--threads"):
|
|
||||||
# The -t - will reset thread list
|
|
||||||
if a == '-':
|
|
||||||
@@ -691,7 +711,7 @@ def main():
|
|
||||||
if thread_list_str or irq_list_str:
|
|
||||||
continue
|
|
||||||
do_ps(thread_list, cpu_list, irq_list, uthreads,
|
|
||||||
- kthreads, affect_children, show_sockets, cgroups)
|
|
||||||
+ kthreads, affect_children, show_sockets, cgroups, compact)
|
|
||||||
elif o in ("-Q", "--show_irqs"):
|
|
||||||
# If the user specified IRQ names that weren't
|
|
||||||
# resolved to IRQs, don't show all IRQs.
|
|
||||||
--
|
|
||||||
2.38.1
|
|
||||||
|
|
@ -1,9 +1,9 @@
|
|||||||
From f2763aaed8f421bcf266a3122a84c41a7441a5d9 Mon Sep 17 00:00:00 2001
|
From 5c2ff1e15bbce8d76a038de55abc20e8b3164bb7 Mon Sep 17 00:00:00 2001
|
||||||
From: John Kacur <jkacur@redhat.com>
|
From: John Kacur <jkacur@redhat.com>
|
||||||
Date: Mon, 11 Dec 2023 16:29:02 -0500
|
Date: Mon, 11 Dec 2023 16:35:03 -0500
|
||||||
Subject: [PATCH] tuna: Don't start the gui if a display is not available
|
Subject: [PATCH] tuna: Don't start the gui if a display is not available
|
||||||
|
|
||||||
This is intended for the getopt branch of tuna
|
This is intended for the main branch of tuna.
|
||||||
|
|
||||||
Don't start the gui if a display is not available.
|
Don't start the gui if a display is not available.
|
||||||
|
|
||||||
@ -13,17 +13,17 @@ Signed-off-by: John Kacur <jkacur@redhat.com>
|
|||||||
1 file changed, 6 insertions(+)
|
1 file changed, 6 insertions(+)
|
||||||
|
|
||||||
diff --git a/tuna-cmd.py b/tuna-cmd.py
|
diff --git a/tuna-cmd.py b/tuna-cmd.py
|
||||||
index 38e7017336a5..ff2920f06d6f 100755
|
index e953869c4f48..f37e286bffdb 100755
|
||||||
--- a/tuna-cmd.py
|
--- a/tuna-cmd.py
|
||||||
+++ b/tuna-cmd.py
|
+++ b/tuna-cmd.py
|
||||||
@@ -821,6 +821,12 @@ def main():
|
@@ -736,6 +736,12 @@ def main():
|
||||||
sys.exit(2)
|
thread_help(tid)
|
||||||
|
|
||||||
if run_gui:
|
elif args.command in ['g', 'gui']:
|
||||||
+ # Don't try to start the gui if no display is available
|
+ # Don't try to start the gui if no display is available
|
||||||
+ display = os.getenv("DISPLAY")
|
+ display = os.getenv("DISPLAY")
|
||||||
+ if not display:
|
+ if not display:
|
||||||
+ usage()
|
+ parser.print_help()
|
||||||
+ return
|
+ return
|
||||||
+
|
+
|
||||||
try:
|
try:
|
||||||
|
@ -1,52 +0,0 @@
|
|||||||
From 3f1fbb092f5ef07d04fef7ddec9e538f36d84450 Mon Sep 17 00:00:00 2001
|
|
||||||
From: John Kacur <jkacur@redhat.com>
|
|
||||||
Date: Fri, 2 Sep 2022 11:55:07 -0400
|
|
||||||
Subject: [PATCH] tuna: Fix matching irqs in ps_show_thread
|
|
||||||
|
|
||||||
The new format to match irqs is "irqs/"
|
|
||||||
We already test this when we call is_irq_thread(cmd):
|
|
||||||
|
|
||||||
With this fix if you do
|
|
||||||
|
|
||||||
tuna show_threads
|
|
||||||
|
|
||||||
You will get nic information that was previously missed such as
|
|
||||||
|
|
||||||
986 FIFO 50 9 69286 2 irq/164-iwlwifi:default_que
|
|
||||||
ue iwlwifi:default_queue
|
|
||||||
|
|
||||||
Signed-off-by: John Kacur <jkacur@redhat.com>
|
|
||||||
---
|
|
||||||
tuna-cmd.py | 15 +++++----------
|
|
||||||
1 file changed, 5 insertions(+), 10 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/tuna-cmd.py b/tuna-cmd.py
|
|
||||||
index b13b25b8a801..80e27523acc6 100755
|
|
||||||
--- a/tuna-cmd.py
|
|
||||||
+++ b/tuna-cmd.py
|
|
||||||
@@ -351,17 +351,12 @@ def ps_show_thread(pid, affect_children, ps, has_ctxt_switch_info, sock_inodes,
|
|
||||||
try:
|
|
||||||
if not irqs:
|
|
||||||
irqs = procfs.interrupts()
|
|
||||||
- if cmd[:4] == "IRQ-":
|
|
||||||
- users = irqs[tuna.irq_thread_number(cmd)]["users"]
|
|
||||||
- for u in users:
|
|
||||||
- if u in get_nics():
|
|
||||||
- users[users.index(u)] = "%s(%s)" % (
|
|
||||||
- u, ethtool.get_module(u))
|
|
||||||
- users = ",".join(users)
|
|
||||||
- else:
|
|
||||||
- u = cmd[cmd.find('-') + 1:]
|
|
||||||
+ users = irqs[tuna.irq_thread_number(cmd)]["users"]
|
|
||||||
+ for u in users:
|
|
||||||
if u in get_nics():
|
|
||||||
- users = ethtool.get_module(u)
|
|
||||||
+ users[users.index(u)] = "%s(%s)" % (
|
|
||||||
+ u, ethtool.get_module(u))
|
|
||||||
+ users = ",".join(users)
|
|
||||||
except:
|
|
||||||
users = "Not found in /proc/interrupts!"
|
|
||||||
|
|
||||||
--
|
|
||||||
2.37.3
|
|
||||||
|
|
@ -1,42 +0,0 @@
|
|||||||
From 613bc73f6ad821db682e9efc097c29af9cb40858 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Leah Leshchinsky <lleshchi@redhat.com>
|
|
||||||
Date: Wed, 23 Nov 2022 14:14:36 -0500
|
|
||||||
Subject: [PATCH] tuna: Fix --show_threads --cgroup without a term
|
|
||||||
|
|
||||||
When tuna --show_threads --cgroups is run without a term,
|
|
||||||
provide a default column size of 80 to fix a traceback
|
|
||||||
that occurred when querying the terminal size.
|
|
||||||
|
|
||||||
Signed-off-by: Leah Leshchinsky <lleshchi@redhat.com>
|
|
||||||
- Edited the commit title
|
|
||||||
- Edited the description
|
|
||||||
Signed-off-by: John Kacur <jkacur@redhat.com>
|
|
||||||
|
|
||||||
diff --git a/tuna-cmd.py b/tuna-cmd.py
|
|
||||||
index 54dc567..f5dafa7 100755
|
|
||||||
--- a/tuna-cmd.py
|
|
||||||
+++ b/tuna-cmd.py
|
|
||||||
@@ -31,6 +31,7 @@ import procfs
|
|
||||||
from tuna import tuna, sysfs
|
|
||||||
import logging
|
|
||||||
import time
|
|
||||||
+import shutil
|
|
||||||
|
|
||||||
def get_loglevel(level):
|
|
||||||
if level.isdigit() and int(level) in range(0,5):
|
|
||||||
@@ -353,9 +354,10 @@ def ps_show(ps, affect_children, thread_list, cpu_list,
|
|
||||||
ps_list.sort()
|
|
||||||
|
|
||||||
# Width of terminal in columns
|
|
||||||
- columns = None
|
|
||||||
+ columns = 80
|
|
||||||
if cgroups:
|
|
||||||
- _, columns = os.popen('stty size', 'r').read().split()
|
|
||||||
+ if os.isatty(sys.stdout.fileno()):
|
|
||||||
+ columns = shutil.get_terminal_size().columns
|
|
||||||
|
|
||||||
for pid in ps_list:
|
|
||||||
ps_show_thread(pid, affect_children, ps, has_ctxt_switch_info,
|
|
||||||
--
|
|
||||||
2.38.1
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
|||||||
From 2d0f78751760bcc737bc4b3530d77b05aaa1c286 Mon Sep 17 00:00:00 2001
|
From 0c93bd0f26c3d7abda51e51a43ea979ecd794cc9 Mon Sep 17 00:00:00 2001
|
||||||
From: John Kacur <jkacur@redhat.com>
|
From: John Kacur <jkacur@redhat.com>
|
||||||
Date: Wed, 18 Oct 2023 10:54:49 -0400
|
Date: Wed, 18 Oct 2023 10:54:49 -0400
|
||||||
Subject: [PATCH 2/2] tuna: Remove spec file from git
|
Subject: [PATCH 2/2] tuna: Remove spec file from git
|
||||||
|
@ -1,104 +0,0 @@
|
|||||||
From ff1963daf4d5a23e5f9476710e983ab781210608 Mon Sep 17 00:00:00 2001
|
|
||||||
From: John Kacur <jkacur@redhat.com>
|
|
||||||
Date: Tue, 27 Sep 2022 12:59:54 -0400
|
|
||||||
Subject: [PATCH 1/2] tuna: Replace python_ethtool with builtin funtionality
|
|
||||||
|
|
||||||
This patch replaces the dependency on python_ethtool with some
|
|
||||||
simplified functions to achieve the same result.
|
|
||||||
|
|
||||||
Reviewed-by: Federico Pellegrin <fede@evolware.org>
|
|
||||||
- return 'tun' only if tun_flags exists
|
|
||||||
Signed-off-by: John Kacur <jkacur@redhat.com>
|
|
||||||
---
|
|
||||||
tuna-cmd.py | 2 +-
|
|
||||||
tuna/gui/irqview.py | 2 +-
|
|
||||||
tuna/new_eth.py | 37 +++++++++++++++++++++++++++++++++++++
|
|
||||||
tuna/tuna.py | 2 +-
|
|
||||||
4 files changed, 40 insertions(+), 3 deletions(-)
|
|
||||||
create mode 100755 tuna/new_eth.py
|
|
||||||
|
|
||||||
diff --git a/tuna-cmd.py b/tuna-cmd.py
|
|
||||||
index bdaa70ffc156..21a70cf1d37d 100755
|
|
||||||
--- a/tuna-cmd.py
|
|
||||||
+++ b/tuna-cmd.py
|
|
||||||
@@ -25,7 +25,7 @@ import fnmatch
|
|
||||||
import gettext
|
|
||||||
import locale
|
|
||||||
from functools import reduce
|
|
||||||
-import ethtool
|
|
||||||
+import tuna.new_eth as ethtool
|
|
||||||
import tuna.tuna_sched as tuna_sched
|
|
||||||
import procfs
|
|
||||||
from tuna import tuna, sysfs
|
|
||||||
diff --git a/tuna/gui/irqview.py b/tuna/gui/irqview.py
|
|
||||||
index 35fc3fd0b0ca..5143d6dc0df5 100755
|
|
||||||
--- a/tuna/gui/irqview.py
|
|
||||||
+++ b/tuna/gui/irqview.py
|
|
||||||
@@ -7,7 +7,7 @@ from gi.repository import Gtk
|
|
||||||
from gi.repository import GObject
|
|
||||||
import os
|
|
||||||
from functools import reduce
|
|
||||||
-import ethtool
|
|
||||||
+import tuna.new_eth as ethtool
|
|
||||||
import tuna.tuna_sched as tuna_sched
|
|
||||||
|
|
||||||
import gi
|
|
||||||
diff --git a/tuna/new_eth.py b/tuna/new_eth.py
|
|
||||||
new file mode 100755
|
|
||||||
index 000000000000..98f9179d5695
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/tuna/new_eth.py
|
|
||||||
@@ -0,0 +1,37 @@
|
|
||||||
+# Copyright (C) 2022 John Kacur
|
|
||||||
+""" A few functions similar to ethtool """
|
|
||||||
+import os
|
|
||||||
+import socket
|
|
||||||
+
|
|
||||||
+def get_active_devices():
|
|
||||||
+ """ return a list of network devices """
|
|
||||||
+ ret = []
|
|
||||||
+
|
|
||||||
+ for device in socket.if_nameindex():
|
|
||||||
+ ret.append(device[1])
|
|
||||||
+
|
|
||||||
+ return ret
|
|
||||||
+
|
|
||||||
+def get_module(intf):
|
|
||||||
+ """ return the kernel module for the given network interface """
|
|
||||||
+ if intf == 'lo':
|
|
||||||
+ return ""
|
|
||||||
+ myp = f'/sys/class/net/{intf}/device/driver'
|
|
||||||
+ if os.path.exists(myp):
|
|
||||||
+ return os.path.basename(os.readlink(myp))
|
|
||||||
+ if os.path.exists(f'/sys/class/net/{intf}/bridge'):
|
|
||||||
+ return 'bridge'
|
|
||||||
+ if os.path.exists(f'/sys/class/net/{intf}/tun_flags'):
|
|
||||||
+ return 'tun'
|
|
||||||
+ return ""
|
|
||||||
+
|
|
||||||
+if __name__ == "__main__":
|
|
||||||
+ nics = get_active_devices()
|
|
||||||
+ print(f'nics = {nics}')
|
|
||||||
+
|
|
||||||
+ for intf in nics:
|
|
||||||
+ driver = get_module(intf)
|
|
||||||
+ if driver:
|
|
||||||
+ print(f'{intf}, {driver}')
|
|
||||||
+ else:
|
|
||||||
+ print(f'{intf}')
|
|
||||||
diff --git a/tuna/tuna.py b/tuna/tuna.py
|
|
||||||
index 31707c9cb69c..84419c957b1b 100755
|
|
||||||
--- a/tuna/tuna.py
|
|
||||||
+++ b/tuna/tuna.py
|
|
||||||
@@ -9,7 +9,7 @@ import sys
|
|
||||||
import shlex
|
|
||||||
import fnmatch
|
|
||||||
import platform
|
|
||||||
-import ethtool
|
|
||||||
+import tuna.new_eth as ethtool
|
|
||||||
import procfs
|
|
||||||
from procfs import utilist
|
|
||||||
from tuna import help
|
|
||||||
--
|
|
||||||
2.37.3
|
|
||||||
|
|
@ -1,66 +0,0 @@
|
|||||||
From e9f60274865475c4e9081ee356ffbc61d1df2ade Mon Sep 17 00:00:00 2001
|
|
||||||
From: Leah Leshchinsky <lleshchi@redhat.com>
|
|
||||||
Date: Wed, 2 Nov 2022 10:57:19 -0400
|
|
||||||
Subject: [PATCH 3/3] tuna: tuna-cmd.py use fstrings
|
|
||||||
|
|
||||||
Add fstrings where possible to improve readabilty
|
|
||||||
|
|
||||||
Due to the discussion regarding dropping the language feature, gettext
|
|
||||||
shorthand _() have been removed.
|
|
||||||
|
|
||||||
Signed-off-by: Leah Leshchinsky <lleshchi@redhat.com>
|
|
||||||
Signed-off-by: John Kacur <jkacur@redhat.com>
|
|
||||||
|
|
||||||
diff --git a/tuna-cmd.py b/tuna-cmd.py
|
|
||||||
index 79e33371837e..75b63da972c2 100755
|
|
||||||
--- a/tuna-cmd.py
|
|
||||||
+++ b/tuna-cmd.py
|
|
||||||
@@ -176,13 +176,16 @@ def thread_help(tid):
|
|
||||||
ps = procfs.pidstats()
|
|
||||||
|
|
||||||
if tid not in ps:
|
|
||||||
- print("tuna: " + _("thread %d doesn't exists!") % tid)
|
|
||||||
+ print(f"tuna: thread {tid} doesn't exist!")
|
|
||||||
return
|
|
||||||
|
|
||||||
pinfo = ps[tid]
|
|
||||||
cmdline = procfs.process_cmdline(pinfo)
|
|
||||||
help, title = tuna.kthread_help_plain_text(tid, cmdline)
|
|
||||||
- print("%s\n\n%s" % (title, _(help)))
|
|
||||||
+ print(title, "\n\n")
|
|
||||||
+ if help.isspace():
|
|
||||||
+ help = "No help description available."
|
|
||||||
+ print(help)
|
|
||||||
|
|
||||||
|
|
||||||
def save(cpu_list, thread_list, filename):
|
|
||||||
@@ -208,7 +211,7 @@ def ps_show_header(has_ctxt_switch_info, cgroups=False):
|
|
||||||
|
|
||||||
def ps_show_sockets(pid, ps, inodes, inode_re, indent=0):
|
|
||||||
header_printed = False
|
|
||||||
- dirname = "/proc/%s/fd" % pid
|
|
||||||
+ dirname = f"/proc/{pid}/fd"
|
|
||||||
try:
|
|
||||||
filenames = os.listdir(dirname)
|
|
||||||
except: # Process died
|
|
||||||
@@ -650,7 +653,7 @@ def main():
|
|
||||||
try:
|
|
||||||
gui_refresh=int(a)
|
|
||||||
except Exception as err:
|
|
||||||
- print("tuna: --refresh %s" % err)
|
|
||||||
+ print(f"tuna: --refresh {err}")
|
|
||||||
sys.exit(2)
|
|
||||||
elif o in ("-d", "--disable_perf"):
|
|
||||||
run_gui = True
|
|
||||||
@@ -679,7 +682,7 @@ def main():
|
|
||||||
try:
|
|
||||||
tuna.threads_set_priority(thread_list, a, affect_children)
|
|
||||||
except OSError as err:
|
|
||||||
- print("tuna: %s" % err)
|
|
||||||
+ print(f"tuna: {err}")
|
|
||||||
sys.exit(2)
|
|
||||||
elif o in ("-P", "--show_threads"):
|
|
||||||
# If the user specified process names that weren't
|
|
||||||
--
|
|
||||||
2.31.1
|
|
||||||
|
|
@ -1,94 +0,0 @@
|
|||||||
From 5f90d8b80a259884d3ca2a647fdf9471b7d7091c Mon Sep 17 00:00:00 2001
|
|
||||||
From: Leah Leshchinsky <lleshchi@redhat.com>
|
|
||||||
Date: Mon, 31 Oct 2022 13:15:07 -0400
|
|
||||||
Subject: [PATCH 1/3] tuna: tuna.py use fstrings
|
|
||||||
|
|
||||||
Add fstrings where possible to improve readabilty
|
|
||||||
|
|
||||||
Signed-off-by: Leah Leshchinsky <lleshchi@redhat.com>
|
|
||||||
Signed-off-by: John Kacur <jkacur@redhat.com>
|
|
||||||
|
|
||||||
diff --git a/tuna/tuna.py b/tuna/tuna.py
|
|
||||||
index 84419c957b1b..e64211b88fc3 100755
|
|
||||||
--- a/tuna/tuna.py
|
|
||||||
+++ b/tuna/tuna.py
|
|
||||||
@@ -58,7 +58,7 @@ def iskthread(pid):
|
|
||||||
# in this function, so that they know that the thread vanished and
|
|
||||||
# can act accordingly, removing entries from tree views, etc
|
|
||||||
try:
|
|
||||||
- f = open("/proc/%d/smaps" % pid)
|
|
||||||
+ f = open(f"/proc/{pid}/smaps")
|
|
||||||
except IOError:
|
|
||||||
# Thread has vanished
|
|
||||||
return True
|
|
||||||
@@ -88,7 +88,7 @@ def is_irq_thread(cmd):
|
|
||||||
return cmd[:4] in ("IRQ-", "irq/")
|
|
||||||
|
|
||||||
def threaded_irq_re(irq):
|
|
||||||
- return re.compile("(irq/%s-.+|IRQ-%s)" % (irq, irq))
|
|
||||||
+ return re.compile(f"(irq/{irq}-.+|IRQ-{irq})")
|
|
||||||
|
|
||||||
# FIXME: Move to python-linux-procfs
|
|
||||||
def has_threaded_irqs(ps):
|
|
||||||
@@ -96,10 +96,10 @@ def has_threaded_irqs(ps):
|
|
||||||
return len(ps.find_by_regex(irq_re)) > 0
|
|
||||||
|
|
||||||
def set_irq_affinity_filename(filename, bitmasklist):
|
|
||||||
- pathname = "/proc/irq/%s" % filename
|
|
||||||
+ pathname = f"/proc/irq/{filename}"
|
|
||||||
f = open(pathname, "w")
|
|
||||||
text = ",".join(["%x" % a for a in bitmasklist])
|
|
||||||
- f.write("%s\n" % text)
|
|
||||||
+ f.write(f"{text}\n")
|
|
||||||
try:
|
|
||||||
f.close()
|
|
||||||
except IOError:
|
|
||||||
@@ -225,7 +225,7 @@ def move_threads_to_cpu(cpus, pid_list, set_affinity_warning=None, spread=False)
|
|
||||||
if pid not in ps:
|
|
||||||
continue
|
|
||||||
|
|
||||||
- threads = procfs.pidstats("/proc/%d/task" % pid)
|
|
||||||
+ threads = procfs.pidstats(f"/proc/{pid}/task")
|
|
||||||
for tid in list(threads.keys()):
|
|
||||||
try:
|
|
||||||
curr_affinity = os.sched_getaffinity(tid)
|
|
||||||
@@ -320,11 +320,11 @@ def affinity_remove_cpus(affinity, cpus, nr_cpus):
|
|
||||||
# Should be moved to python_linux_procfs.interrupts, shared with interrupts.parse_affinity, etc.
|
|
||||||
def parse_irq_affinity_filename(filename, nr_cpus):
|
|
||||||
try:
|
|
||||||
- f = open("/proc/irq/%s" % filename)
|
|
||||||
+ f = open(f"/proc/irq/{filename}")
|
|
||||||
except IOError as err:
|
|
||||||
if procfs.is_s390():
|
|
||||||
print("This operation is not supported on s390", file=sys.stderr)
|
|
||||||
- print("tuna: %s" % err, file=sys.stderr)
|
|
||||||
+ print(f"tuna: {err}", file=sys.stderr)
|
|
||||||
sys.exit(2)
|
|
||||||
|
|
||||||
line = f.readline()
|
|
||||||
@@ -627,19 +627,19 @@ def run_command(cmd, policy, rtprio, cpu_list):
|
|
||||||
try:
|
|
||||||
thread_set_priority(pid, policy, rtprio)
|
|
||||||
except (SystemError, OSError) as err:
|
|
||||||
- print("tuna: %s" % err)
|
|
||||||
+ print(f"tuna: {err}")
|
|
||||||
sys.exit(2)
|
|
||||||
if cpu_list:
|
|
||||||
try:
|
|
||||||
os.sched_setaffinity(pid, cpu_list)
|
|
||||||
except (SystemError, OSError) as err:
|
|
||||||
- print("tuna: %s" % err)
|
|
||||||
+ print(f"tuna: {err}")
|
|
||||||
sys.exit(2)
|
|
||||||
|
|
||||||
try:
|
|
||||||
os.execvp(cmd_list[0], cmd_list)
|
|
||||||
except (SystemError, OSError) as err:
|
|
||||||
- print("tuna: %s" % err)
|
|
||||||
+ print(f"tuna: {err}")
|
|
||||||
sys.exit(2)
|
|
||||||
else:
|
|
||||||
os.waitpid(newpid, 0)
|
|
||||||
--
|
|
||||||
2.31.1
|
|
||||||
|
|
@ -1,26 +0,0 @@
|
|||||||
From f53f77f73199f398713f8edfdfa417cf8b9e1a74 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Leah Leshchinsky <lleshchi@redhat.com>
|
|
||||||
Date: Fri, 28 Oct 2022 13:14:04 -0400
|
|
||||||
Subject: [PATCH 2/3] tuna: tuna_gui.py use fstrings
|
|
||||||
|
|
||||||
Add fstrings where possible to improve readabilty
|
|
||||||
|
|
||||||
Signed-off-by: Leah Leshchinsky <lleshchi@redhat.com>
|
|
||||||
Signed-off-by: John Kacur <jkacur@redhat.com>
|
|
||||||
|
|
||||||
diff --git a/tuna/tuna_gui.py b/tuna/tuna_gui.py
|
|
||||||
index f1f2caacbcba..459f90303ed5 100755
|
|
||||||
--- a/tuna/tuna_gui.py
|
|
||||||
+++ b/tuna/tuna_gui.py
|
|
||||||
@@ -33,7 +33,7 @@ class main_gui:
|
|
||||||
if self.check_root():
|
|
||||||
sys.exit(1)
|
|
||||||
for dir in tuna_glade_dirs:
|
|
||||||
- tuna_glade = "%s/tuna_gui.glade" % dir
|
|
||||||
+ tuna_glade = f"{dir}/tuna_gui.glade"
|
|
||||||
if os.access(tuna_glade, os.F_OK):
|
|
||||||
break
|
|
||||||
self.wtree = Gtk.Builder()
|
|
||||||
--
|
|
||||||
2.31.1
|
|
||||||
|
|
240
SPECS/tuna.spec
240
SPECS/tuna.spec
@ -1,30 +1,21 @@
|
|||||||
Name: tuna
|
Name: tuna
|
||||||
Version: 0.18
|
Version: 0.19
|
||||||
Release: 9%{?dist}
|
Release: 4%{?dist}
|
||||||
License: GPL-2.0-only AND LGPL-2.1-only
|
License: GPL-2.0-only AND LGPL-2.1-only
|
||||||
Summary: Application tuning GUI & command line utility
|
Summary: Application tuning GUI & command line utility
|
||||||
Group: Applications/System
|
|
||||||
Source: https://www.kernel.org/pub/software/utils/tuna/%{name}-%{version}.tar.xz
|
|
||||||
URL: https://git.kernel.org/pub/scm/utils/tuna/tuna.git
|
URL: https://git.kernel.org/pub/scm/utils/tuna/tuna.git
|
||||||
|
Source: https://www.kernel.org/pub/software/utils/%{name}/%{name}-%{version}.tar.xz
|
||||||
|
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
BuildRequires: python3-devel, gettext
|
BuildRequires: python3-devel, gettext
|
||||||
Requires: python3-linux-procfs >= 0.6
|
Requires: python3-linux-procfs >= 0.6
|
||||||
# This really should be a Suggests...
|
# This really should be a Suggests...
|
||||||
# Requires: python-inet_diag
|
# Requires: python-inet_diag
|
||||||
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
|
|
||||||
|
|
||||||
# PATCHES
|
# Patches
|
||||||
Patch1: tuna-Replace-python_ethtool-with-builtin-funtionalit.patch
|
Patch01: Add-SPDX-license-identifiers.patch
|
||||||
Patch2: tuna-Fix-matching-irqs-in-ps_show_thread.patch
|
Patch02: tuna-Remove-spec-file-from-git.patch
|
||||||
Patch3: tuna-tuna.py-use-fstrings.patch
|
Patch03: tuna-Don-t-start-the-gui-if-a-display-is-not-availab.patch
|
||||||
Patch4: tuna-tuna_gui.py-use-fstrings.patch
|
|
||||||
Patch5: tuna-tuna-cmd.py-use-fstrings.patch
|
|
||||||
Patch6: tuna-Adapt-show_threads-cgroup-output-to-terminal-si.patch
|
|
||||||
Patch7: tuna-Fix-show_threads-cgroup-without-a-term.patch
|
|
||||||
Patch8: Add-SPDX-license-identifiers.patch
|
|
||||||
Patch9: tuna-Remove-spec-file-from-git.patch
|
|
||||||
Patch10: tuna-Don-t-start-the-gui-if-a-display-is-not-availab.patch
|
|
||||||
|
|
||||||
%description
|
%description
|
||||||
Provides interface for changing scheduler and IRQ tunables, at whole CPU and at
|
Provides interface for changing scheduler and IRQ tunables, at whole CPU and at
|
||||||
@ -39,11 +30,13 @@ installed.
|
|||||||
%autosetup -p1
|
%autosetup -p1
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%{__python3} setup.py build
|
%py3_build
|
||||||
|
pathfix.py -pni "%{__python3} %{py3_shbang_opts}" tuna/
|
||||||
|
pathfix.py -pni "%{__python3} %{py3_shbang_opts}" tuna-cmd.py
|
||||||
|
|
||||||
%install
|
%install
|
||||||
rm -rf %{buildroot}
|
rm -rf %{buildroot}
|
||||||
%{__python3} setup.py install --skip-build --root %{buildroot}
|
%py3_install
|
||||||
mkdir -p %{buildroot}/%{_sysconfdir}/tuna/
|
mkdir -p %{buildroot}/%{_sysconfdir}/tuna/
|
||||||
mkdir -p %{buildroot}/{%{_bindir},%{_datadir}/tuna/help/kthreads,%{_mandir}/man8}
|
mkdir -p %{buildroot}/{%{_bindir},%{_datadir}/tuna/help/kthreads,%{_mandir}/man8}
|
||||||
mkdir -p %{buildroot}/%{_datadir}/polkit-1/actions/
|
mkdir -p %{buildroot}/%{_datadir}/polkit-1/actions/
|
||||||
@ -55,9 +48,6 @@ install -p -m644 etc/tuna/example.conf %{buildroot}/%{_sysconfdir}/tuna/
|
|||||||
install -p -m644 etc/tuna.conf %{buildroot}/%{_sysconfdir}/
|
install -p -m644 etc/tuna.conf %{buildroot}/%{_sysconfdir}/
|
||||||
install -p -m644 org.tuna.policy %{buildroot}/%{_datadir}/polkit-1/actions/
|
install -p -m644 org.tuna.policy %{buildroot}/%{_datadir}/polkit-1/actions/
|
||||||
|
|
||||||
# Manually fix the shebang
|
|
||||||
pathfix.py -pni "%{__python3}" %{buildroot}%{_bindir}/tuna
|
|
||||||
|
|
||||||
# l10n-ed message catalogues
|
# l10n-ed message catalogues
|
||||||
for lng in `cat po/LINGUAS`; do
|
for lng in `cat po/LINGUAS`; do
|
||||||
po=po/"$lng.po"
|
po=po/"$lng.po"
|
||||||
@ -67,11 +57,7 @@ done
|
|||||||
|
|
||||||
%find_lang %name
|
%find_lang %name
|
||||||
|
|
||||||
%clean
|
|
||||||
rm -rf %{buildroot}
|
|
||||||
|
|
||||||
%files -f %{name}.lang
|
%files -f %{name}.lang
|
||||||
%defattr(-,root,root,-)
|
|
||||||
%doc ChangeLog
|
%doc ChangeLog
|
||||||
%{python3_sitelib}/*.egg-info
|
%{python3_sitelib}/*.egg-info
|
||||||
%{_bindir}/tuna
|
%{_bindir}/tuna
|
||||||
@ -83,122 +69,180 @@ rm -rf %{buildroot}
|
|||||||
%{_datadir}/polkit-1/actions/org.tuna.policy
|
%{_datadir}/polkit-1/actions/org.tuna.policy
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Wed Dec 13 2023 John Kacur <jkacur@redhat.com> - 0.18-9
|
* Wed Dec 13 2023 John Kacur <jkacur@redhat.com> - 0.19-4
|
||||||
|
- Add an rpminspect.yaml file
|
||||||
|
Resolves: RHEL-19396
|
||||||
|
|
||||||
|
* Wed Dec 13 2023 John Kacur <jkacur@redhat.com> - 0.19-3
|
||||||
- Don't start the gui if a display is not available
|
- Don't start the gui if a display is not available
|
||||||
- Revert removing distutils for rhel8
|
- Change to SPDX licence tag in the specfile
|
||||||
- Update the License tag in the specfile to the spdx version
|
Resolves: RHEL-8859
|
||||||
Resolves: RHEL-19179
|
|
||||||
|
|
||||||
* Mon Dec 11 2023 John Kacur <jkacur@redhat.com> - 0.18-8
|
* Thu Nov 02 2023 John Kacur <jkacur@redhat.com> - 0.19-2
|
||||||
- Remove deprecated distutils from setup
|
- Add SPDX licenses
|
||||||
- Adjust SPDX patch to accomdate the removed distutils
|
- Remove the git maintained spec file
|
||||||
Resolves: RHEL-19037
|
Resolves: RHEL-7611
|
||||||
|
|
||||||
* Wed Nov 01 2023 John Kacur <jkacur@redhat.com> - 0.18-7
|
* Thu Nov 02 2023 John Kacur <jkacur@redhat.com> - 0.19-1
|
||||||
- Remove specfile from upstream source
|
- Update to latest upstream version, tuna-0.19
|
||||||
Resolves: RHEL-9197
|
Resolves: RHEL-7862
|
||||||
|
|
||||||
* Wed Nov 23 2022 Leah Leshchinsky <lleshchi@redhat.com> - 0.18-6
|
* Wed Nov 23 2022 Leah Leshchinsky <lleshchi@redhat.com> - 0.18-12
|
||||||
- Fix show_threads --cgroups without a term
|
- Fix show_threads --cgroups run without term
|
||||||
Resolves: rhbz#2121518
|
Resolves: rhbz#2121517
|
||||||
|
|
||||||
* Fri Nov 18 2022 Leah Leshchinsky <lleshchi@redhat.com> - 0.18-5
|
* Fri Nov 18 2022 Leah Leshchinsky <lleshchi@redhat.com> - 0.18-11
|
||||||
- Adapt show_threads cgroup output to terminal size
|
- Adapt show_threads cgroup output to terminal size
|
||||||
Resolves: rhbz#2121518
|
Resolves: rhbz#2121517
|
||||||
|
|
||||||
* Wed Nov 02 2022 Leah Leshchinsky <lleshchi@redhat.com> - 0.18-4
|
* Wed Nov 09 2022 Leah Leshchinsky <lleshchi@redhat.com> - 0.18-10
|
||||||
|
- Edit run_tests.sh to support new CLI changes
|
||||||
|
Resolves: rhbz#2141349
|
||||||
|
|
||||||
|
* Tue Nov 08 2022 Leah Leshchinsky <lleshchi@redhat.com> - 0.18-9
|
||||||
|
- Remove import and fix help message
|
||||||
|
- Update manpages for argparse CLI changes
|
||||||
|
Resolves: rhbz#2138692
|
||||||
|
|
||||||
|
* Wed Nov 02 2022 Leah Leshchinsky <lleshchi@redhat.com> - 0.18-8
|
||||||
- Use f-strings in tuna where possible
|
- Use f-strings in tuna where possible
|
||||||
Resolves: rhbz#2120805
|
Resolves: rhbz#2120803
|
||||||
|
|
||||||
* Mon Oct 03 2022 John Kacur <jkacur@redhat.com> - 0.18-3
|
* Wed Oct 26 2022 Leah Leshchinsky <lleshchi@redhat.com> - 0.18-7
|
||||||
|
- Add sockets command line option
|
||||||
|
Resolves: rhbz#2122781
|
||||||
|
|
||||||
|
* Wed Oct 26 2022 Leah Leshchinsky <lleshchi@redhat.com> - 0.18-6
|
||||||
|
- Update tuna command line interface
|
||||||
|
- Move get_policy_and_rtprio call to parser level
|
||||||
|
- Remove threads print statement
|
||||||
|
Resolves: rhbz#2062865
|
||||||
|
|
||||||
|
* Mon Oct 03 2022 John Kacur <jkacur@redhat.com> - 0.18-5
|
||||||
- Match irqs with "irqs/"
|
- Match irqs with "irqs/"
|
||||||
Resolves: rhbz#2131353
|
Resolves: rhbz#2131343
|
||||||
|
|
||||||
* Fri Sep 30 2022 John Kacur <jkacur@redhat.com> - 0.18-2
|
* Fri Sep 30 2022 John Kacur <jkacur@redhat.com> - 0.18-4
|
||||||
|
- Remove the "Requires" of python-ethtool from the specfile
|
||||||
|
Resolves: rhbz#2123751
|
||||||
|
|
||||||
|
* Fri Sep 30 2022 John Kacur <jkacur@redhat.com> - 0.18-3
|
||||||
- Replace dependency on python-ethtool with built-in functionality
|
- Replace dependency on python-ethtool with built-in functionality
|
||||||
Resolves: rhbz#2123753
|
Resolves: rhbz#2123751
|
||||||
|
|
||||||
|
* Wed Jun 29 2022 Leah Leshchinsky <lleshchi@redhat.com> - 0.18-2
|
||||||
|
- Delete patches
|
||||||
|
Resolves: rhbz#2068629
|
||||||
|
|
||||||
* Wed Jun 29 2022 Leah Leshchinsky <lleshchi@redhat.com> - 0.18-1
|
* Wed Jun 29 2022 Leah Leshchinsky <lleshchi@redhat.com> - 0.18-1
|
||||||
- Rebase to upstream version 0.18
|
- Update to latest upstream tuna-0.18
|
||||||
Resolves: rhbz#2073555
|
Resolves: rhbz#2068629
|
||||||
|
|
||||||
* Thu May 19 2022 Leah Leshchinsky <lleshchi@redhat.com> - 0.17-3
|
* Wed May 11 2022 Leah Leshchinsky <lleshchi@redhat.com> - 0.17-4
|
||||||
- Add logging infrastructure to tuna
|
- Add logging infrastructure to tuna cmd
|
||||||
- Add cleanlogs rule to Makefile
|
- Add cleanlogs rule to Makefile
|
||||||
Resolves: rhbz#2062882
|
Resolves: rhbz#2062881
|
||||||
|
|
||||||
* Mon Apr 11 2022 Leah Leshchinsky <lleshchi@redhat.com> - 0.17-2
|
* Mon Apr 11 2022 Leah Leshchinsky <lleshchi@redhat.com> - 0.17-3
|
||||||
- Fix typo for variable parm
|
- Fix typo for variable parm
|
||||||
- Handle get_policy_and_rtprio exceptions
|
- Handle get_policy_and_rtprio exceptions
|
||||||
- Remove finally block in get_policy_and_rtprio
|
- Remove finally block in get_policy_and_rtprio
|
||||||
Resolves: rhbz#2049746
|
Resolves: rhbz#2049303
|
||||||
|
|
||||||
* Thu Jan 13 2022 Leah Leshchinsky <lleshchi@redhat.com> - 0.17-1
|
* Thu Jan 13 2022 Leah Leshchinsky <lleshchi@redhat.com> - 0.17-2
|
||||||
- Rebase to upstream version 0.17
|
|
||||||
- Fix ModuleNotFoundError
|
- Fix ModuleNotFoundError
|
||||||
Resolves: rhbz#2012306
|
Resolves: rhbz#2012307
|
||||||
|
|
||||||
* Tue Dec 14 2021 John Kacur <jkacur@redhat.com> - 0.16-5
|
* Tue Jan 11 2022 Leah Leshchinsky <lleshchi@redhat.com> - 0.17-1
|
||||||
|
- Rebase to upstream version 0.17
|
||||||
|
Resolves: rhbz#2012307
|
||||||
|
|
||||||
|
* Tue Dec 14 2021 John Kacur <jkacur@redhat.com> - 0.16-6
|
||||||
- Display correct cpu-affinity when a cpu is disabled
|
- Display correct cpu-affinity when a cpu is disabled
|
||||||
Resolves: rhbz#2032614
|
Resolves: rhbz#2032460
|
||||||
|
|
||||||
* Wed Nov 10 2021 John Kacur <jkacur@redhat.com> - 0.16-4
|
* Thu Nov 11 2021 John Kacur <jkacur@redhat.com> - 0.16-5
|
||||||
- Make it clear in online help and man pages that --include and --isolate
|
- Make it clear in online help and man pages that --include and --isolate
|
||||||
affect IRQs as well as threads
|
affect IRQs as well as threads
|
||||||
Resolves: rhbz#1886804
|
Resolves: rhbz#2022142
|
||||||
|
|
||||||
|
* Tue Nov 02 2021 Leah Leshchinsky <lleshchi@redhat.com> - 0.16-4
|
||||||
|
- Add distinction between spread and move to error message
|
||||||
|
Resolves: rhbz#2012243
|
||||||
|
|
||||||
* Thu Oct 28 2021 John Kacur <jkacur@redhat.com> - 0.16-3
|
* Thu Oct 28 2021 John Kacur <jkacur@redhat.com> - 0.16-3
|
||||||
- Print warning if setaffinity causes EBUSY and continue
|
- Print warning if setaffinity causes EBUSY and continue
|
||||||
Resolves: rhbz#2018285
|
Resolves: rhbz#2016540
|
||||||
|
|
||||||
* Tue Oct 26 2021 Leah Leshchinsky <lleshchi@redhat.com> - 0.16-2
|
* Tue Aug 10 2021 Mohan Boddu <mboddu@redhat.com> - 0.16-2
|
||||||
- Add distinction between --spread and --move to error message
|
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
|
||||||
Resolves: rhbz#2012241
|
Related: rhbz#1991688
|
||||||
|
|
||||||
* Wed Jun 30 2021 John Kacur <jkacur@redhat.com> - 0.16-1
|
* Wed Jun 30 2021 John Kacur <jkacur@redhat.com> - 0.16-1
|
||||||
- Upgrade to latest upstream
|
- Update to latest upstream tuna-0.16
|
||||||
Resolves: rhbz#1947069
|
Resolves: rhbz#1890565
|
||||||
|
|
||||||
* Thu Jan 21 2021 John Kacur <jkacur@redhat.com> - 0.15-1
|
* Mon Jun 14 2021 John Kacur <jkacur@redhat.com> - 0.15-3
|
||||||
- Upgrade to latest upstream code
|
- Remove oscilloscope from tuna
|
||||||
- Upstream drops python-schedutils and uses built-in schedutils
|
Resolves: rhbz#1970997
|
||||||
Resolves: rhbz#1890558
|
|
||||||
|
|
||||||
* Tue Apr 02 2019 Clark Williams <williams@redhat.com> - 0.14-4
|
* Fri May 21 2021 John Kacur <jkacur@redhat.com> - 0.15-2
|
||||||
- added OSCI gating framework
|
- Remove python3-schedutils from the Requires in the spec file
|
||||||
Resolves: rhbz#1682423
|
- Update the URL in the spec file
|
||||||
|
Resolves: rhbz#1890541
|
||||||
|
|
||||||
* Fri Feb 01 2019 John Kacur <jkacur@redhat.com> - 0.14-3
|
* Mon May 17 2021 John Kacur <jkacur@redhat.com> - 0.15-1
|
||||||
- fix undefined global name stderr
|
- Rebase to tuna-0.15
|
||||||
Resolves: rhbz#1671440
|
- This includes changes to remove the python-schedutils dependency
|
||||||
|
Resolves: rhbz#1890541
|
||||||
|
|
||||||
* Tue Dec 04 2018 John Kacur <jkacur@redhat.com> - 0.14-2
|
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 0.14.1-5
|
||||||
- Add method to compare class cpu for sorting
|
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
|
||||||
- Use args attributes for exceptions for python3
|
|
||||||
Resolves: rhbz#1651465
|
|
||||||
|
|
||||||
* Fri Aug 10 2018 John Kacur <jkacur@redhat.com> - 0.14-1
|
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.14.1-4
|
||||||
- Sync with upstream and fix URL reference in spec
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||||
Resolves: rhbz#1596855
|
|
||||||
|
|
||||||
* Wed Aug 08 2018 John Kacur <jkacur@redhat.com> - 0.13.3-5
|
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.14.1-3
|
||||||
- Remove some functions that are now available in python-linux-procfs
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||||
Resolves: rhbz#1522865
|
|
||||||
|
|
||||||
* Tue Jul 03 2018 Tomas Orsava <torsava@redhat.com> - 0.13.3-4
|
* Tue May 26 2020 Miro Hrončok <mhroncok@redhat.com> - 0.14.1-2
|
||||||
- Switch hardcoded python3 shebangs into the %%{__python3} macro
|
- Rebuilt for Python 3.9
|
||||||
|
|
||||||
* Thu May 31 2018 John Kacur <jkacur@redhat.com> - 0.13.3-3
|
* Thu May 21 2020 Jiri Kastner <jkastner@fedoraproject.org> - 0.14.1
|
||||||
- Remove deprecated oscilloscope
|
- update to 0.14.1
|
||||||
Resolves: rhbz#1584302
|
- fixes RHBZ#1773339
|
||||||
|
|
||||||
* Fri May 25 2018 John Kacur <jkacur@redhat.com> - 0.13.3-2
|
* Fri Jan 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.14-6
|
||||||
- Correct the dependencies to require python3 package versions
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
||||||
Resolves: rhbz#1581192
|
|
||||||
|
|
||||||
* Wed May 16 2018 John Kacur <jkacur@redhat.com> - 0.13.3-1
|
* Thu Oct 03 2019 Miro Hrončok <mhroncok@redhat.com> - 0.14-5
|
||||||
- Changes for python3
|
- Rebuilt for Python 3.8.0rc1 (#1748018)
|
||||||
Resolves: rhbz#1518679
|
|
||||||
|
* Mon Aug 19 2019 Miro Hrončok <mhroncok@redhat.com> - 0.14-4
|
||||||
|
- Rebuilt for Python 3.8
|
||||||
|
|
||||||
|
* Sat Jul 27 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.14-3
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
||||||
|
|
||||||
|
* Tue Feb 12 2019 Jiri Kastner <jkastner@fedoraproject.org> - 0.14-3
|
||||||
|
- upload patch
|
||||||
|
|
||||||
|
* Tue Feb 12 2019 Jiri Kastner <jkastner@fedoraproject.org> - 0.14-2
|
||||||
|
- oscilloscope gtk3 patch
|
||||||
|
|
||||||
|
* Tue Feb 12 2019 Jiri Kastner <jkastner@fedoraproject.org> - 0.14-1
|
||||||
|
- update to 0.14
|
||||||
|
- switch to python3
|
||||||
|
|
||||||
|
* Sun Feb 03 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.13.1-8
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
||||||
|
|
||||||
|
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.13.1-7
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
||||||
|
|
||||||
|
* Wed Feb 14 2018 Iryna Shcherbina <ishcherb@redhat.com> - 0.13.1-6
|
||||||
|
- Update Python 2 dependency declarations to new packaging standards
|
||||||
|
(See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3)
|
||||||
|
|
||||||
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.13.1-5
|
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.13.1-5
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
||||||
|
Loading…
Reference in New Issue
Block a user