d10306
Name:           irqbalance
9425f0
Version:        1.9.0
6ad21a
Release:        4%{?dist}
d10306
Epoch:          2
d10306
Summary:        IRQ balancing daemon
d10306
d10306
Group:          System Environment/Base
d10306
License:        GPLv2
d10306
Url:            https://github.com/Irqbalance/irqbalance
d10306
Source0:        https://github.com/Irqbalance/irqbalance/archive/irqbalance-%{version}.tar.gz
d10306
Source1:        irqbalance.sysconfig
d10306
d10306
BuildRequires:  autoconf automake libtool libcap-ng
d10306
BuildRequires:  glib2-devel pkgconf libcap-ng-devel
d10306
BuildRequires:  systemd ncurses-devel
d10306
Requires: ncurses-libs
d10306
%ifnarch %{arm}
d10306
BuildRequires:  numactl-devel
d10306
Requires: numactl-libs
d10306
%endif
d10306
d10306
%define _hardened_build 1
d10306
d10306
ExcludeArch: s390 s390x
d10306
9425f0
Patch1: irqbalance-1.8.0-env-file-path.patch
9425f0
Patch2: 0001-get-irq-module-relationship-from-sys-bus-pci-driver.patch
9425f0
Patch3: 0002-check-whether-savedptr-is-NULL-before-invoking-strle.patch
9425f0
Patch4: 0003-add-meson.patch
9425f0
Patch5: 0004-Prepare-to-handle-thermal-event.patch
9425f0
Patch6: 0005-Implement-Netlink-helper-functions-to-subscribe-ther.patch
9425f0
Patch7: 0006-Handle-thermal-events-to-mask-CPUs.patch
9425f0
Patch8: 0007-add-keep_going-check-to-prevent-irqbalance-from-fail.patch
9425f0
Patch9: 0008-parse_proc_interrupts-fix-parsing-interrupt-counts.patch
9425f0
Patch10: 0009-irqbalance-ui-move-ASSIGNED-TO-CPUS-to-the-last-colu.patch
9425f0
Patch11: 0010-irqbalance-ui-can-t-change-window-when-in-editing-st.patch
9425f0
Patch12: 0011-fix-memory-leak-in-ui-ui.c.patch
9425f0
Patch13: 0012-irqbalance-ui-support-scroll-under-tui-mode-of-irqba.patch
9425f0
Patch14: 0013-irqbalance-ui-print-cpulist-in-SETUP-IRQS.patch
9425f0
Patch15: 0014-Improve-documentation-and-logging-for-banned-cpus.patch
9425f0
Patch16: 0001-irqbalance-ui-skip-in-parse_setup-to-avoid-coredump.patch
6ad21a
Patch17: 0001-revert-Confine-irqbalance-to-systems-where-it-is-useful.patch
d10306
d10306
%description
d10306
irqbalance is a daemon that evenly distributes IRQ load across
d10306
multiple CPUs for enhanced performance.
d10306
d10306
%prep
d10306
%setup -q
d10306
%patch1 -p1
d10306
%patch2 -p1
d10306
%patch3 -p1
d10306
%patch4 -p1
d10306
%patch5 -p1
03926f
%patch6 -p1
3f927f
%patch7 -p1
7dbb15
%patch8 -p1
7dbb15
%patch9 -p1
439219
%patch10 -p1
9425f0
%patch11 -p1
9425f0
%patch12 -p1
9425f0
%patch13 -p1
9425f0
%patch14 -p1
9425f0
%patch15 -p1
9425f0
%patch16 -p1
6ad21a
%patch17 -p1
d10306
d10306
%build
d10306
./autogen.sh
d10306
%configure
d10306
CFLAGS="%{optflags}" make %{?_smp_mflags}
d10306
d10306
%install
d10306
install -D -p -m 0755 %{name} %{buildroot}%{_sbindir}/%{name}
9425f0
install -D -p -m 0755 %{name}-ui %{buildroot}%{_sbindir}/%{name}-ui
d10306
install -D -p -m 0644 ./misc/irqbalance.service %{buildroot}/%{_unitdir}/irqbalance.service
d10306
install -D -p -m 0644 %{SOURCE1} %{buildroot}%{_sysconfdir}/sysconfig/%{name}
d10306
d10306
install -d %{buildroot}%{_mandir}/man1/
d10306
install -p -m 0644 ./irqbalance.1 %{buildroot}%{_mandir}/man1/
d10306
d10306
%check
d10306
make check
d10306
d10306
%files
d10306
%doc COPYING AUTHORS
d10306
%{_sbindir}/irqbalance
9425f0
%{_sbindir}/irqbalance-ui
d10306
%{_unitdir}/irqbalance.service
d10306
%{_mandir}/man1/*
d10306
%config(noreplace) %{_sysconfdir}/sysconfig/irqbalance
d10306
d10306
%post
d10306
%systemd_post irqbalance.service
d10306
d10306
%preun
d10306
%systemd_preun irqbalance.service
d10306
d10306
%postun
d10306
%systemd_postun_with_restart irqbalance.service
d10306
d10306
%triggerun -- irqbalance < 2:0.56-3
d10306
if /sbin/chkconfig --level 3 irqbalance ; then
d10306
    /bin/systemctl enable irqbalance.service >/dev/null 2>&1 || :
d10306
fi
d10306
/sbin/chkconfig --del irqbalance >/dev/null 2>&1 || :
d10306
d10306
%changelog
6ad21a
* Tue Jul 19 2022 Tao Liu <ltao@redhat.com> - 2:1.9.0-4
6ad21a
- revert Confine irqbalance to systems where it is useful (bz2115230)
6ad21a
9425f0
* Tue Jul 19 2022 Tao Liu <ltao@redhat.com> - 2:1.9.0-3
9425f0
- Rebase to latest upstream commit (c8d1fff0f1)
9425f0
9425f0
* Thu Jul 14 2022 Tao Liu <ltao@redhat.com> - 2:1.9.0-2
9425f0
- Rebase to latest upstream commit (167580790c)
9425f0
9425f0
* Fri Jul 1 2022 Tao Liu <ltao@redhat.com> - 2:1.9.0-1
9425f0
- Rebase to latest upstream release v1.9.0. Resolves:rhbz2098629
9425f0
439219
* Fri Jan 29 2021 Kairui Song <kasong@redhat.com> 2:1.4.0-6
439219
- Also fetch node info for non-PCI devices
439219
439219
* Wed Nov 04 2020 Kairui Song <kasong@redhat.com> 2:1.4.0-5
439219
- Add some examples for IRQBALANCE_BANNED_CPUS (bz1730546)
439219
3f927f
* Wed Jul 31 2019 Kairui Song <kasong@redhat.com> 2:1.4.0-4
3f927f
- Fix ambiguous parsing of *node* entries in /sys. (bz1730546)
3f927f
03926f
* Mon Mar 25 2019 Kairui Song <kasong@redhat.com> 2:1.4.0-3
03926f
- Update document and remove dead options to fix manpage scan warning (bz1612706)
03926f
- Fix gating test error (bz1680619)
03926f
d10306
* Tue Nov 6 2018 Kairui Song <kasong@redhat.com> 2:1.4.0-2
d10306
- Fix several memleak problems found by covscan (bz1606969)
d10306
- Fix an possible overflow error (bz1606969)
d10306
- Don't leak socket fd on connection error (bz1606969)
d10306
- Check xen-dyn-event more flexible (bz1576164)
d10306
d10306
* Mon May 14 2018 Neil Horman <nhorman@redhat.com> 2:1.4.0-1
d10306
- Update to latest upstream release
d10306
- Add CI harness
d10306
d10306
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2:1.3.0-2
d10306
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
d10306
d10306
* Tue Nov 14 2017 Neil Horman <nhorman@redhat.com> - 2:1.3.0-1
d10306
- Update to latest upstream
d10306
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2:1.2.0-4
d10306
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
d10306
d10306
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2:1.2.0-3
d10306
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
d10306
d10306
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2:1.2.0-2
d10306
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
d10306
d10306
* Fri Jan 13 2017 Petr Holasek <holasekp@gmail.com> - 2:1.2.0-1
d10306
- Rebased to v1.2.0 (bz1411554)
d10306
d10306
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 2:1.1.0-3
d10306
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
d10306
d10306
* Tue Dec 15 2015 Marcin Juszkiewicz <mjuszkiewicz@redhat.com> - 2:1.1.0-2
d10306
- Fixed AArch64 support.
d10306
d10306
* Mon Dec 07 2015 Petr Holasek <pholasek@redhat.com> - 2:1.1.0-1
d10306
- Rebased to v1.1.0 (bz1288674)
d10306
d10306
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2:1.0.9-2
d10306
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
d10306
d10306
* Wed Mar 18 2015 Petr Holasek <pholasek@redhat.com> - 2:1.0.9-1
d10306
- Rebased to v1.0.9
d10306
d10306
* Mon Jan 05 2015 Petr Holasek <pholasek@redhat.com> - 2:1.0.8-1
d10306
- Rebased to v1.0.8 (bz1176898)
d10306
d10306
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2:1.0.7-8
d10306
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
d10306
d10306
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2:1.0.7-7
d10306
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
d10306
d10306
* Sun May 11 2014 Peter Robinson <pbrobinson@fedoraproject.org> 2:1.0.7-6
d10306
- Switch ExclusiveArch to ExcludeArch as all but s390 is supported (also build for aarch64)
d10306
d10306
* Thu May 08 2014 Petr Holasek <pholasek@redhat.com> - 2:1.0.7-5
d10306
- Fixed memory leak (bz1095915)
d10306
d10306
* Mon Feb 10 2014 Petr Holasek <pholasek@redhat.com> - 2:1.0.7-4
d10306
- Missing autogen.sh call fixed
d10306
d10306
* Mon Feb 10 2014 Petr Holasek <pholasek@redhat.com> - 2:1.0.7-3
d10306
- Irqbalance website address was fixed
d10306
d10306
* Fri Jan 10 2014 Petr Holasek <pholasek@redhat.com> - 2:1.0.7-2
d10306
- ppc64le architecture support was enabled
d10306
d10306
* Fri Oct 11 2013 Petr Holasek <pholasek@redhat.com> - 2:1.0.7-1
d10306
- Rebased to version 1.0.7
d10306
d10306
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2:1.0.6-4
d10306
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
d10306
d10306
* Mon Jul 22 2013 Peter Robinson <pbrobinson@fedoraproject.org> 2:1.0.6-3
d10306
- Fix FTBFS on ARM, minor spec cleanups
d10306
d10306
* Thu Jul 18 2013 Petr Holasek <pholasek@redhat.com> - 2:1.0.6-2
d10306
- Hardened build
d10306
d10306
* Mon Jun 10 2013 Petr Holasek <pholasek@redhat.com> - 2:1.0.6-1
d10306
- Rebased to version 1.0.6
d10306
d10306
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2:1.0.5-2
d10306
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
d10306
d10306
* Mon Jan 21 2013 Petr Holasek <pholasek@redhat.com> - 2:1.0.5-1
d10306
- Rebased to version 1.0.5
d10306
d10306
* Wed Aug 29 2012 Petr Holasek <pholasek@redhat.com> - 2:1.0.4-2
d10306
- Env file path edited
d10306
d10306
* Mon Aug 27 2012 Petr Holasek <pholasek@redhat.com> - 2:1.0.4-1
d10306
- Rebased to version 1.0.4
d10306
d10306
* Wed Aug 22 2012 Petr Holasek <pholasek@redhat.com> - 2:1.0.3-5
d10306
- Make irqbalance scan for new irqs when it detects new irqs (bz832815)
d10306
- Fixes SIGFPE crash for some banning configuration (bz849792)
d10306
- Fixes affinity_hint values processing (bz832815)
d10306
- Adds banirq and bansript options (bz837049)
d10306
- imake isn't needed for building any more (bz844359)
d10306
- Fixes clogging of syslog (bz837646)
d10306
- Added IRQBALANCE_ARGS variable for passing arguments via systemd(bz837048)
d10306
- Fixes --hint-policy=subset behavior (bz844381)
d10306
d10306
* Sun Apr 15 2012 Petr Holasek <pholasek@redhat.com> - 2:1.0.3-4
d10306
- Updated libnuma dependencies
d10306
d10306
* Sun Feb  5 2012 Peter Robinson <pbrobinson@fedoraproject.org> - 2:1.0.3-3
d10306
- Build on ARM
d10306
d10306
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2:1.0.3-2
d10306
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
d10306
d10306
* Fri Dec 02 2011 Neil Horman <nhorman@redhat.com> - 2:1.0.3-1
d10306
- Updated to latest upstream release
d10306
d10306
* Fri Nov 04 2011 Neil Horman <nhorman@redhat.com> - 2:1.0.2-1
d10306
- Updated to latest upstream release
d10306
d10306
* Wed Oct 26 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2:1.0-4
d10306
- Rebuilt for glibc bug#747377
d10306
d10306
* Fri Oct 21 2011 Neil Horman <nhorman@redhat.com> - 2:1.0-3
d10306
- Fix another crash on non-numa systems (bz 748070)
d10306
d10306
* Mon Oct 17 2011 Neil Horman <nhorman@redhat.com> - 2:1.0-2
d10306
- Fix crash for systems with no numa node support
d10306
d10306
* Wed Oct 12 2011 Neil Horman <nhorman@redhat.com> - 2:1.0-1
d10306
- Update irqbalance to latest upstream version
d10306
d10306
* Fri May  6 2011 Bill Nottingham <notting@redhat.com> - 2:0.56-4
d10306
- fix upgrade trigger
d10306
d10306
* Fri Apr  8 2011 Peter Robinson <pbrobinson@gmail.com> - 2:0.56-3
d10306
- Fix build in rawhide
d10306
- Add license file to rpm
d10306
- Cleanup spec file
d10306
d10306
* Fri Mar 25 2011 Anton Arapov <anton@redhat.com> - 2:0.56-3
d10306
- rework init in order to respect systemd. (bz 659622)
d10306
d10306
* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2:0.56-2
d10306
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
d10306
d10306
* Thu Jun 10 2010 Neil Horman <nhorman@redhat.com> - 2:0.56-1
d10306
- Updated to latest upstream version
d10306
d10306
* Wed Sep 09 2009 Neil Horman <nhorman@redhat.com> - 2:0.55-25
d10306
- Fixing BuildRequires
d10306
d10306
* Fri Sep 04 2009 Neil Horman <nhorman@redhat.com> - 2:0.55-24
d10306
- Fixing irqbalance initscript (bz 521246)
d10306
d10306
* Wed Sep 02 2009 Neil Horman <nhorman@redhat.com> - 2:0.55-23
d10306
- Fixing BuildRequires for new config script
d10306
d10306
* Tue Sep 01 2009 Neil Horman <nhorman@redhat.com> - 2:0.55-22
d10306
- Fixing BuildRequires for new config script
d10306
d10306
* Tue Sep 01 2009 Neil Horman <nhorman@redhat.com> - 2:0.55-21
d10306
- Fixing BuildRequires for new config script
d10306
d10306
* Tue Sep 01 2009 Neil Horman <nhorman@redhat.com> - 2:0.55-20
d10306
- Fixing BuildRequires for new config script
d10306
d10306
* Tue Sep 01 2009 Neil Horman <nhorman@redhat.com> - 2:0.55-19
d10306
- Incorporate capng (bz 520699)
d10306
d10306
* Fri Jul 31 2009 Peter Lemenkov <lemenkov@gmail.com> - 2:0.55-18
d10306
- Added back accidentaly forgotten imake
d10306
d10306
* Fri Jul 31 2009 Peter Lemenkov <lemenkov@gmail.com> - 2:0.55-17
d10306
- Cosmetic fixes in spec-file
d10306
- Fixed rpmlint error in the init-script
d10306
d10306
* Tue Jul 28 2009 Peter Lemenkov <lemenkov@gmail.com> - 2:0.55-16
d10306
- Many imrovements in spec-file
d10306
d10306
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2:0.55-15
d10306
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
d10306
d10306
* Fri Mar 6 2009 Neil Horman <nhorman@redhat.com>
d10306
- Update spec file to build for i586 as per new build guidelines (bz 488849)
d10306
d10306
* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2:0.55-13
d10306
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
d10306
d10306
* Fri Dec 12 2008 Neil Norman <nhorman@redhat.com> - 2:0.55-12
d10306
- Remove odd Netorking dependence from irqbalance (bz 476179)
d10306
d10306
* Fri Aug 01 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 2:0.55-11
d10306
- fix license tag
d10306
d10306
* Wed Jun 04 2008 Neil Horman <nhorman@redhat.com> - 2:0.55-10
d10306
- Update man page to explain why irqbalance exits on single cache (bz 449949)
d10306
d10306
* Tue Mar 18 2008 Neil Horman <nhorman@redhat.com> - 2:0.55-9
d10306
- Rediff pid-file patch to not remove initial parse_cpu_tree (bz 433270)
d10306
d10306
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 2:0.55-8
d10306
- Autorebuild for GCC 4.3
d10306
d10306
* Thu Nov 01 2007 Neil Horman <nhorman@redhat.com> - 2:0.55-7
d10306
- Update to properly hadndle pid files (bz 355231)
d10306
d10306
* Thu Oct 04 2007 Neil Horman <nhorman@redhat.com> - 2:0.55-6
d10306
- Fix irqbalance init script (bz 317219)
d10306
d10306
* Fri Sep 28 2007 Neil Horman <nhorman@redhat.com> - 2:0.55-5
d10306
- Install pie patch
d10306
- Grab Ulis cpuparse cleanup (bz 310821)
d10306
d10306
* Wed Aug 29 2007 Fedora Release Engineering <rel-eng at fedoraproject dot org> - 2:0.55-4
d10306
- Rebuild for selinux ppc32 issue.
d10306
d10306
* Thu Jul 05 2007 Neil Horman <nhorman@redhat.com> - 0.55.3
d10306
- Fixing LSB requirements (bz 246959)
d10306
d10306
* Tue Dec 12 2006 Neil Horman <nhorman@redhat.com> - 0.55-2
d10306
- Fixing typos in spec file (bz 219301)
d10306
d10306
* Tue Dec 12 2006 Neil Horman <nhorman@redhat.com> - 0.55-1
d10306
- Updating to version 0.55
d10306
d10306
* Mon Dec 11 2006 Neil Horman <nhorman@redhat.com> - 0.54-1
d10306
- Update irqbalance to new version released at www.irqbalance.org
d10306
d10306
* Wed Nov 15 2006 Neil Horman <nhorman@redhat.com> - 1.13-8
d10306
- Add ability to set default affinity mask (bz 211148)
d10306
d10306
* Wed Nov 08 2006 Neil Horman <nhorman@redhat.com> - 1.13-7
d10306
- fix up irqbalance to detect multicore (not ht) (bz 211183)
d10306
d10306
* Thu Nov 02 2006 Neil Horman <nhorman@redhat.com> - 1.13-6
d10306
- bumping up MAX_INTERRUPTS to support xen kernels
d10306
- rediffing patch1 and patch3 to remove fuzz
d10306
d10306
* Tue Oct 17 2006 Neil Horman <nhorman@redhat.com> - 1.13-5
d10306
- Making oneshot mean oneshot always (bz 211178)
d10306
d10306
* Wed Sep 13 2006 Peter Jones <pjones@redhat.com> - 1.13-4
d10306
- Fix subsystem locking
d10306
d10306
* Fri Aug 18 2006 Jesse Keating <jkeating@redhat.com> - 1.13-2
d10306
- rebuilt with latest binutils to pick up 64K -z commonpagesize on ppc*
d10306
  (#203001)
d10306
- Remove hack to use cvs checkin ID as release as it doesn't follow
d10306
  packaging guidelines
d10306
d10306
* Tue Aug 01 2006 Neil Horman <nhorman@redhat.com>
d10306
- Change license to GPL in version 0.13
d10306
d10306
* Sat Jul 29 2006 Dave Jones <davej@redhat.com>
d10306
- identify a bunch more classes.
d10306
d10306
* Fri Jul 14 2006 Jesse Keating <jkeating@redhat.com>
d10306
- rebuild
d10306
d10306
* Tue Jul 11 2006 Dave Jones <davej@redhat.com>
d10306
- Further lazy rebalancing tweaks.
d10306
d10306
* Sun Feb 26 2006 Dave Jones <davej@redhat.com>
d10306
- Don't rebalance IRQs where no interrupts have occured.
d10306
d10306
* Sun Feb 12 2006 Dave Jones <davej@redhat.com>
d10306
- Build for ppc[64] too.
d10306
d10306
* Thu Feb 09 2006 Dave Jones <davej@redhat.com>
d10306
- rebuild.
d10306
d10306
* Fri Dec 16 2005 Jesse Keating <jkeating@redhat.com>
d10306
- rebuilt for new gcj
d10306
d10306
* Fri Dec 09 2005 Jesse Keating <jkeating@redhat.com>
d10306
- rebuilt
d10306
d10306
* Tue Mar  1 2005 Dave Jones <davej@redhat.com>
d10306
- Rebuild with gcc4
d10306
d10306
* Tue Feb  8 2005 Dave Jones <davej@redhat.com>
d10306
- Build as pie, also -D_FORTIFY_SOURCE=2
d10306
d10306
* Tue Jan 11 2005 Dave Jones <davej@redhat.com>
d10306
- Add missing Obsoletes: kernel-utils.
d10306
d10306
* Mon Jan 10 2005 Dave Jones <davej@redhat.com>
d10306
- Start irqbalance in runlevel 2 too. (#102064)
d10306
d10306
* Sat Dec 18 2004 Dave Jones <davej@redhat.com>
d10306
- Initial packaging, based on kernel-utils.
d10306