Compare commits

..

No commits in common. "rawhide" and "f31" have entirely different histories.

8 changed files with 143 additions and 156 deletions

12
.gitignore vendored
View file

@ -5,15 +5,3 @@ atop-1.23.tar.gz
/atop-2.2-3.tar.gz
/atop-2.3.0.tar.gz
/atop-2.4.0.tar.gz
/atop-2.5.0.tar.gz
/atop-2.6.0.tar.gz
/atop-2.7.0.tar.gz
/atop-2.7.1.tar.gz
/atop-2.8.0.tar.gz
/atop-2.8.1.tar.gz
/atop-2.9.0.tar.gz
/atop-2.10.0.tar.gz
/atop-2.11.0.tar.gz
/atop-2.11.1.tar.gz
/atop-2.12.0.tar.gz
/atop-2.12.1.tar.gz

View file

@ -0,0 +1,35 @@
From 7bf30c52a37118ff4f211e67e1736099f3d1dcb3 Mon Sep 17 00:00:00 2001
From: Gerlof Langeveld <gerlof.langeveld@atoptool.nl>
Date: Sat, 22 Sep 2018 11:50:50 +0200
Subject: [PATCH] Own macro's added to determine major/minor of logical volume.
The standard 'minor' and 'major' macro's are not available any more in gcc8.
---
photosyst.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/photosyst.c b/photosyst.c
index 19cbbe1..019b9e0 100644
--- a/photosyst.c
+++ b/photosyst.c
@@ -184,6 +184,9 @@ static const char rcsid[] = "$Id: photosyst.c,v 1.38 2010/11/19 07:40:40 gerlof
#define MAXCNT 64
+#define MAJOR(x) ((((unsigned long long)x>>8)&0xfff)|((unsigned int)((unsigned long long)x>>32)&~0xfff))
+#define MINOR(x) ((x&0xff)|((unsigned int)((unsigned long long)x>>12)&~0xff))
+
/* return value of isdisk() */
#define NONTYPE 0
#define DSKTYPE 1
@@ -1479,8 +1482,8 @@ lvmmapname(unsigned int major, unsigned int minor,
*/
strncpy(dmp->name, dentry->d_name, MAXDKNAM);
dmp->name[MAXDKNAM-1] = 0;
- dmp->major = major(statbuf.st_rdev);
- dmp->minor = minor(statbuf.st_rdev);
+ dmp->major = MAJOR(statbuf.st_rdev);
+ dmp->minor = MINOR(statbuf.st_rdev);
hashix = DMHASH(dmp->major, dmp->minor);

6
atop-2.3.0-restart.patch Normal file
View file

@ -0,0 +1,6 @@
--- atop.cronsystemd~ 2017-03-25 04:00:03.000000000 -0500
+++ atop.cronsystemd 2017-12-11 12:05:26.269480824 -0600
@@ -1,2 +1,2 @@
# daily restart of atop at midnight
-0 0 * * * root systemctl restart atop
+0 0 * * * root systemctl try-restart atop

35
atop-2.4.0-python3.patch Normal file
View file

@ -0,0 +1,35 @@
--- atopgpud.orig 2019-01-12 16:37:19.000000000 -0600
+++ atopgpud 2019-09-05 10:40:24.909804909 -0500
@@ -1,4 +1,4 @@
-#!/usr/bin/python -Es
+#!/usr/bin/python3 -Es
# ==============================================================
# Daemon that gathers statistical information from all
@@ -181,7 +181,7 @@
self.stats.procstats[pid].memcum += proc.usedGpuMemory//1024
self.stats.procstats[pid].sample += 1
- if self.stats.tasksupport & ACCOUNT:
+ if self.stats.tasksupport & ACCOUNT:
try:
stats = pynvml.nvmlDeviceGetAccountingStats(self.gpuhandle, pid)
@@ -503,7 +503,7 @@
# active processes for
# this GPU
# ---------------------
- for pid, stat in s.procstats.items():
+ for pid, stat in list(s.procstats.items()):
strbuf += "#A {:d} {:d} {:d} {:d} {:d} {:d} {:d}".format(pid,
stat.gpubusy, stat.membusy, stat.timems,
stat.memnow, stat.memcum, stat.sample)
@@ -512,7 +512,7 @@
# terminated processes
# for this GPU
# ---------------------
- for pid, stat in cliterm[clisock].items():
+ for pid, stat in list(cliterm[clisock].items()):
strbuf += "#E {:d} {:d} {:d} {:d} {:d} {:d} {:d}".format(pid,
stat.gpubusy, stat.membusy, stat.timems,
stat.memnow, stat.memcum, stat.sample)

185
atop.spec
View file

@ -1,23 +1,27 @@
%define _hardened_build 1
Name: atop
Version: 2.12.1
Release: 2%{?dist}
Version: 2.4.0
Release: 4%{?dist}
Summary: An advanced interactive monitor to view the load on system and process level
License: GPL-2.0-or-later
URL: https://www.atoptool.nl
Source0: https://www.atoptool.nl/download/%{name}-%{version}.tar.gz
Source1: atop.d
License: GPLv2+
URL: http://www.atcomputing.nl/Tools/atop/
Source0: http://www.atcomputing.nl/download/%{name}-%{version}.tar.gz
Source4: atop.sysconfig
Source5: atop.d
Patch0: atop-sysconfig.patch
Patch0: nvme_support.patch
Patch1: atop-sysconfig.patch
Patch2: atop-2.3.0-restart.patch
Patch3: atop-2.3.0-newer-gcc.patch
Patch4: atop-2.4.0-python3.patch
BuildRequires: gcc
BuildRequires: zlib-devel
BuildRequires: ncurses-devel
BuildRequires: glib2-devel
BuildRequires: ncurses-devel
BuildRequires: systemd
BuildRequires: make
Requires: python3-py3nvml
Requires(post): systemd
Requires(preun): systemd
@ -37,16 +41,21 @@ performance-monitors:
- Watch deviations only
- Accumulated process activity per user
- Accumulated process activity per program
For more informations: http://www.atcomputing.nl/Tools/atop
The package does not make use of the patches available at
http://www.atcomputing.nl/Tools/atop/kernpatch.html
%prep
%setup -q
%patch -P 0 -p0 -b .sysconfig
# Correct unit file path
sed -i "s|/etc/default/atop|/etc/sysconfig/atop|g" atop.service
%patch0 -p0 -b .nvme
%patch1 -p0 -b .sysconfig
%patch2 -p0 -b .cron
%patch3 -p1 -b .newer-gcc
%patch4 -p0 -b .py3
%build
make %{?_smp_mflags} CFLAGS="$RPM_OPT_FLAGS $(pkg-config --cflags glib-2.0) -I. -std=gnu17"
make %{?_smp_mflags} CFLAGS="$RPM_OPT_FLAGS"
%install
install -Dp -m 0755 atop $RPM_BUILD_ROOT%{_bindir}/atop
@ -54,37 +63,31 @@ install -Dp -m 0755 atopconvert $RPM_BUILD_ROOT%{_bindir}/atopconvert
ln -s atop $RPM_BUILD_ROOT%{_bindir}/atopsar
install -Dp -m 0644 man/atop.1 $RPM_BUILD_ROOT%{_mandir}/man1/atop.1
install -Dp -m 0644 man/atopsar.1 $RPM_BUILD_ROOT%{_mandir}/man1/atopsar.1
install -Dp -m 0644 man/atopacctd.8 $RPM_BUILD_ROOT%{_mandir}/man8/atopacctd.8
install -Dp -m 0644 atop.cronsystemd $RPM_BUILD_ROOT%{_sysconfdir}/cron.d/atop
install -Dp -m 0755 atop.daily $RPM_BUILD_ROOT%{_datadir}/atop/atop.daily
install -Dp -m 0644 atop.default $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/atop
install -Dp -m 0755 %{SOURCE1} $RPM_BUILD_ROOT%{_bindir}/atopd
install -Dp -m 0644 %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/atop
install -Dp -m 0755 %{SOURCE5} $RPM_BUILD_ROOT%{_bindir}/atopd
install -Dp -m 0644 atop.service $RPM_BUILD_ROOT%{_unitdir}/atop.service
install -d $RPM_BUILD_ROOT%{_localstatedir}/log/atop
install -Dp -m 0755 atopacctd $RPM_BUILD_ROOT%{_sbindir}/atopacctd
install -Dp -m 0644 atopacct.service $RPM_BUILD_ROOT%{_unitdir}/atopacct.service
#%%if 0%%{?rhel} >= 8 || 0%%{?fedora}
#install -Dp -m 0755 atopgpud $RPM_BUILD_ROOT%%{_sbindir}/atopgpud
#install -Dp -m 0644 atopgpu.service $RPM_BUILD_ROOT%%{_unitdir}/atopgpu.service
#%%endif
install -Dp -m 0644 atop-rotate.* $RPM_BUILD_ROOT%{_unitdir}/
install -Dp -m 0755 atopgpud $RPM_BUILD_ROOT%{_sbindir}/atopgpud
install -Dp -m 0644 atopgpu.service $RPM_BUILD_ROOT%{_unitdir}/atopgpu.service
%post
%systemd_post atop.service atopacct.service atop-rotate.timer
#%%if 0%%{?rhel} >= 8 || 0%%{?fedora}
#%%systemd_post atopgpu.service
#%%endif
%systemd_post atop.service
%systemd_post atopacct.service
%systemd_post atopgpu.service
%preun
%systemd_preun atop.service atopacct.service atop-rotate.timer
#%%if 0%%{?rhel} >= 8 || 0%%{?fedora}
#%%systemd_preun atopgpu.service
#%%endif
%systemd_preun atop.service
%systemd_preun atopacct.service
%systemd_preun atopgpu.service
%postun
%systemd_postun_with_restart atop.service atopacct.service atop-rotate.timer
#%%if 0%%{?rhel} >= 8 || 0%%{?fedora}
#%%systemd_postun_with_restart atopgpu.service
#%%endif
%systemd_postun_with_restart atop.service
%systemd_postun_with_restart atopacct.service
%systemd_postun_with_restart atopgpu.service
%files
@ -93,7 +96,8 @@ install -Dp -m 0644 atop-rotate.* $RPM_BUILD_ROOT%{_unitdir}/
%else
%license COPYING
%endif
%doc README*
%doc AUTHOR README ChangeLog
%config(noreplace) %{_sysconfdir}/cron.d/atop
%config(noreplace) %{_sysconfdir}/sysconfig/atop
%{_bindir}/atopsar
%{_bindir}/atop
@ -101,120 +105,15 @@ install -Dp -m 0644 atop-rotate.* $RPM_BUILD_ROOT%{_unitdir}/
%{_bindir}/atopconvert
%{_mandir}/man1/atop.1.gz
%{_mandir}/man1/atopsar.1.gz
%{_mandir}/man8/atopacctd.8.gz
%attr(0755,root,root) %dir %{_localstatedir}/log/atop
%{_unitdir}/atop*.service
%{_unitdir}/atop*.timer
%{_datadir}/atop/atop.daily
%{_sbindir}/atopacctd
#%%if 0%%{?rhel} >= 8 || 0%%{?fedora}
#%%{_sbindir}/atopgpud
#%%endif
%{_sbindir}/atopgpud
%changelog
* Fri Jan 16 2026 Fedora Release Engineering <releng@fedoraproject.org> - 2.12.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
* Tue Sep 23 2025 Gwyn Ciesla <gwync@protonmail.com> - 2.12.1-1
- 2.12.1
* Wed Jul 23 2025 Fedora Release Engineering <releng@fedoraproject.org> - 2.12.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Mon Jun 16 2025 Gwyn Ciesla <gwync@protonmail.com> - 2.12.0-1
- 2.12.0
* Mon Mar 31 2025 Gwyn Ciesla <gwync@protonmail.com> - 2.11.1-1
- 2.11.1
* Thu Jan 16 2025 Fedora Release Engineering <releng@fedoraproject.org> - 2.11.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Mon Jul 29 2024 Gwyn Ciesla <gwync@protonmail.com> - 2.11.0-1
- 2.11.0
* Wed Jul 17 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.10.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Mon Jan 22 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.10.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.10.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Thu Jan 04 2024 Gwyn Ciesla <gwync@protonmail.com> - 2.10.0-1
- 2.10.0
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.9.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Mon May 15 2023 Gwyn Ciesla <gwync@protonmail.com> - 2.9.0-1
- 2.9.0
* Sun Mar 05 2023 Gwyn Ciesla <gwync@protonmail.com> - 2.8.1-3
- migrated to SPDX license
* Wed Jan 18 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.8.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Mon Jan 09 2023 Gwyn Ciesla <gwync@protonmail.com> - 2.8.1-1
- 2.8.1
* Tue Jan 03 2023 Gwyn Ciesla <gwync@protonmail.com> - 2.8.0-1
- 2.8.0
* Wed Dec 07 2022 Gwyn Ciesla <gwync@protonmail.com> - 2.7.1-4
- Include atopacctd man page
* Wed Jul 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.7.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Wed Jan 19 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.7.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Tue Jan 11 2022 Gwyn Ciesla <gwync@protonmail.com> - 2.7.1-1
- 2.7.1
- Drop atopgpud as it requires proprietary NVIDIA drivers.
* Mon Dec 20 2021 Gwyn Ciesla <gwync@protonmail.com> - 2.7.0-1
- 2.7.0
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.6.0-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Tue Apr 13 2021 Gwyn Ciesla <gwync@protonmail.com> - 2.6.0-6
- Upstream patch to fix service file.
* Tue Mar 23 2021 Gwyn Ciesla <gwync@protonmail.com> - 2.6.0-5
- Use upstream sysconfig file.
* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 2.6.0-4
- Rebuilt for updated systemd-rpm-macros
See https://pagure.io/fesco/issue/2583.
* Mon Feb 22 2021 Gwyn Ciesla <gwync@protonmail.com> - 2.6.0-3
- Don't ship atopgpud on EL-7
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.6.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Mon Dec 21 2020 Gwyn Ciesla <gwync@protonmail.com> - 2.6.0-1
- 2.6.0
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.5.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Fri May 29 2020 Gwyn Ciesla <gwync@protonmail.com> - 2.5.1-1
- Fix unit file path.
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.5.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Sun Nov 03 2019 Gwyn Ciesla <gwync@protonmail.com> - 2.5.0-1
- 2.5.0
* Thu Sep 05 2019 Gwyn Ciesla <gwync@protonmail.com> - 2.4.0-4
- Package atopacctd.
- Package atopacctd and atopgpud.
* Wed Aug 28 2019 Gwyn Ciesla <gwync@protonmail.com> - 2.4.0-3
- Fix LOGINTERVAL in sysconfig.

13
atop.sysconfig Normal file
View file

@ -0,0 +1,13 @@
# sysconfig atop
#
# Current Day format
CURDAY=`date +%Y%m%d`
# Log files path
LOGPATH=/var/log/atop
# Binaries path
BINPATH=/usr/bin
# PID File
PIDFILE=/var/run/atop.pid
# interval (default 10 minutes)
LOGINTERVAL=600

11
nvme_support.patch Normal file
View file

@ -0,0 +1,11 @@
diff -up ./photosyst.c.orig ./photosyst.c
--- ./photosyst.c.orig 2017-03-25 11:00:03.000000003 +0200
+++ ./photosyst.c 2017-12-08 01:31:13.795157092 +0200
@@ -1537,6 +1537,7 @@ static struct {
{ "^dasd[a-z][a-z]*$", {0}, nullmodname, DSKTYPE, },
{ "^mmcblk[0-9][0-9]*$", {0}, nullmodname, DSKTYPE, },
{ "^emcpower[a-z][a-z]*$", {0}, nullmodname, DSKTYPE, },
+ { "^nvme[0-9][a-z][0-9]*$", {0}, nullmodname, DSKTYPE, },
};
static int

View file

@ -1 +1 @@
SHA512 (atop-2.12.1.tar.gz) = e01db51bf025598e7bad585f62761e10d23a77f6c7be96418bc8919a72c74628851ae5cbdc0c12ed752f80b44f5b72f2102692dbbb3210cacc59b32340107ce7
SHA512 (atop-2.4.0.tar.gz) = 2d0bbecc13bd64427263372b50f50d3278d1e0401e7f2eefe6ff20a874da6315271c885cef3492cde60a2955d1c8db4d8522c3374edcedf1a6992b8fa97c8f18