5ac222
Name:           irqbalance
28e03f
Version:        1.0.7
547a7f
Release:        12%{?dist}
a69bc0
Epoch:          3
5ac222
Summary:        IRQ balancing daemon
5ac222
5ac222
Group:          System Environment/Base
5ac222
License:        GPLv2
1a5ee7
Url:            https://github.com/Irqbalance/irqbalance
1a5ee7
Source0:        https://github.com/Irqbalance/irqbalance/archive/v%{version}.tar.gz
5ac222
Source1:        irqbalance.sysconfig
5ac222
5ac222
BuildRequires:  autoconf automake libtool libcap-ng
5ac222
BuildRequires:  glib2-devel pkgconfig libcap-ng-devel
5ac222
%ifnarch %{arm}
5ac222
BuildRequires:  numactl-devel
5ac222
BuildRequires:  systemd-units
5ac222
Requires: numactl-libs
5ac222
%endif
5ac222
Requires(post): systemd-units
5ac222
Requires(postun):systemd-units
5ac222
Requires(preun):systemd-units
5ac222
#Requires(triggerun):systemd-units
5ac222
5ac222
%define _hardened_build 1
5ac222
28e03f
ExclusiveArch: %{ix86} x86_64 ia64 ppc ppc64 ppc64le %{arm} aarch64
5ac222
5ac222
Patch1: irqbalance-1.0.4-env-file-path.patch
28e03f
Patch2: irqbalance-1.0.6-man_IRQBALANCE_BANNED_CPUS.patch
28e03f
Patch3: irqbalance-1.0.7-ignore_affinity_hint.patch
a69bc0
Patch4: irqbalance-1.0.8-removing-unused-variable-cache_stat.patch
a69bc0
Patch5: irqbalance-1.0.8-Manpage-note-about-ignoring-of-pid-in-some-cases.patch
a69bc0
Patch6: irqbalance-1.0.8-irqbalance-signal-handling-tuning.patch
a69bc0
Patch7: irqbalance-1.0.8-Warning-when-irqbalance-hasn-t-root-privileges.patch
a69bc0
Patch8: irqbalance-1.0.7-manpage-hostname.patch
a69bc0
Patch9: irqbalance-1.0.8-import-__bitmap_parselist-from-Linux-kernel.patch
a69bc0
Patch10:irqbalance-1.0.8-fix-cpulist_parse-definition-to-match-bitmap_parseli.patch
a69bc0
Patch11:irqbalance-1.0.8-parse-isolcpus-from-proc-cmdline-to-set-up-banned_cp.patch
a69bc0
Patch12:irqbalance-1.0.8-fix-memory-leak-in-classify-code.patch
a69bc0
Patch13:irqbalance-1.0.8-separate-cmomand-line-banned-irqs.patch
25610a
Patch14:irqbalance-1.0.8-parse-isolcpus-and-nohz-cpus-from-sysfs.patch
17fbfe
Patch15:irqbalance-1.0.8-Invalid-parsing-for-isolated-and-nohz_full-cpu-masks.patch
f4e338
Patch16:irqbalance-1.0.9-irqbalance-set-IRQBALANCE_DEBUG-variable-implies-for.patch
f4e338
Patch17:irqbalance-node-package.patch
e9cd91
Patch18:irqbalance-1.0.8-Balance-correctly-IRQs-reappearing.patch
547a7f
Patch19:irqbalance-1.5.0-Refine-document-about-IRQBALANCE_BANNED_CPUS.patch
5ac222
5ac222
%description
5ac222
irqbalance is a daemon that evenly distributes IRQ load across
5ac222
multiple CPUs for enhanced performance.
5ac222
5ac222
%prep
5ac222
%setup -q
5ac222
%patch1 -p1
5ac222
%patch2 -p1
5ac222
%patch3 -p1
0a7ab0
%patch4 -p1
a69bc0
%patch5 -p1
a69bc0
%patch6 -p1
a69bc0
%patch7 -p1
a69bc0
%patch8 -p1
a69bc0
%patch9 -p1
a69bc0
%patch10 -p1
a69bc0
%patch11 -p1
a69bc0
%patch12 -p1
a69bc0
%patch13 -p1
25610a
%patch14 -p1
17fbfe
%patch15 -p1
f4e338
%patch16 -p1
f4e338
%patch17 -p1
e9cd91
%patch18 -p1
547a7f
%patch19 -p1
5ac222
5ac222
%build
1a5ee7
./autogen.sh
5ac222
%{configure}
5ac222
CFLAGS="%{optflags}" make %{?_smp_mflags}
5ac222
5ac222
%install
5ac222
install -D -p -m 0755 %{name} %{buildroot}%{_sbindir}/%{name}
5ac222
install -D -p -m 0644 ./misc/irqbalance.service %{buildroot}%{_unitdir}/irqbalance.service
5ac222
install -D -p -m 0644 %{SOURCE1} %{buildroot}%{_sysconfdir}/sysconfig/%{name}
5ac222
5ac222
install -d %{buildroot}%{_mandir}/man1/
5ac222
install -p -m 0644 ./irqbalance.1 %{buildroot}%{_mandir}/man1/
5ac222
5ac222
%files
5ac222
%defattr(-,root,root)
5ac222
%doc COPYING AUTHORS
5ac222
%{_sbindir}/irqbalance
5ac222
%{_unitdir}/irqbalance.service
5ac222
%{_mandir}/man1/*
5ac222
%config(noreplace) %{_sysconfdir}/sysconfig/irqbalance
5ac222
5ac222
%post
5ac222
%systemd_post irqbalance.service
5ac222
5ac222
%preun
5ac222
%systemd_preun irqbalance.service
5ac222
5ac222
%postun
5ac222
%systemd_postun_with_restart irqbalance.service
5ac222
5ac222
%triggerun -- irqbalance < 2:0.56-3
5ac222
if /sbin/chkconfig --level 3 irqbalance ; then
5ac222
    /bin/systemctl enable irqbalance.service >/dev/null 2>&1 || :
5ac222
fi
5ac222
/sbin/chkconfig --del irqbalance >/dev/null 2>&1 || :
5ac222
5ac222
%changelog
547a7f
* Fri Mar 1 2019 Kairui Song <kasong@redhat.com> - 3:1.0.7-12
547a7f
- Refine document for IRQBALANCE_BANNED_CPUS
547a7f
- Resolves: #1361654
547a7f
547a7f
* Mon Feb 05 2018 Petr Oros <poros@redhat.com> - 3:1.0.7-11
e9cd91
- Balance correctly IRQs reappearing
547a7f
- Resolves: #1536373
e9cd91
f4e338
* Tue May 16 2017 Petr Oros <poros@redhat.com> - 3:1.0.7-10
f4e338
- irqbalance node package patch
f4e338
- Resolves: #1444195
f4e338
f4e338
* Tue Apr 4 2017 Petr Oros <poros@redhat.com> - 3:1.0.7-9
f4e338
- set IRQBALANCE_DEBUG variable implies foreground mode
f4e338
- Resolves: #1361211
f4e338
f4e338
* Tue Dec 20 2016 Petr Oros <poros@redhat.com> - 3:1.0.7-8
f4e338
- Fix Epoch in version
f4e338
- Resolves: #1393539
f4e338
f4e338
* Wed Nov 30 2016 Petr Oros <poros@redhat.com> - 2:1.0.7-7
17fbfe
- Fix Invalid parsing for isolated and nohz_full cpu masks
f4e338
- Resolves: #1393539
17fbfe
25610a
* Tue Feb 02 2016 Petr Holasek <pholasek@redhat.com> - 2:1.0.7-6
25610a
- nohz and isolated cpus are read from sysfs (#1264130)
25610a
a69bc0
* Mon Jul 13 2015 Petr Holasek <pholasek@redhat.com> - 2:1.0.7-5
a69bc0
- banned irqs aren't touched (#1237356)
a69bc0
a69bc0
* Fri Jun 12 2015 Petr Holasek <pholasek@redhat.com> - 2:1.0.7-4
a69bc0
- fixed memory leak in pci bus parsing code (#1225319)
a69bc0
a69bc0
* Tue May 05 2015 Petr Holasek <pholasek@redhat.com> - 2:1.0.7-3
a69bc0
- fixed putting irqs on isolated cpus (#1201552)
a69bc0
a69bc0
* Tue Jan 06 2015 Petr Holasek <pholasek@redhat.com> - 2:1.0.7-2
a69bc0
- fixed unused variable revealed by covscan
a69bc0
- fixed ignored pid argument (#1155632)
a69bc0
- warning when irqbalance started under non-root (#1155799)
a69bc0
- more robust signal handling (#1158937)
a69bc0
- fixed hostname in manpage (#1162251)
0a7ab0
28e03f
* Tue Aug 19 2014 Petr Holasek <pholasek@redhat.com> - 2:1.0.7-1
28e03f
- Rebased to version 1.0.7 (#1018140)
28e03f
28e03f
* Mon Aug 04 2014 Petr Holasek <pholasek@redhat.com> - 2:1.0.6-7
28e03f
- ppc64le has been added to exclusive archs (#1125551)
28e03f
28e03f
* Tue Jul 29 2014 Petr Holasek <pholasek@redhat.com> - 2:1.0.6-6
28e03f
- aarch64 has been added to exclusive archs (#1055729)
28e03f
1a5ee7
* Mon Feb 10 2014 Petr Holasek <pholasek@redhat.com> - 2:1.0.6-5
1a5ee7
- Fixed irqbalance web adresses in spec (bz1060810)
1a5ee7
- Default hintpolicy adjusted (bz1060814)
1a5ee7
- Missing autogen.sh call fixed
1a5ee7
1a5ee7
* Fri Dec 27 2013 Daniel Mach <dmach@redhat.com> - 2:1.0.6-4
1a5ee7
- Mass rebuild 2013-12-27
1a5ee7
5ac222
* Thu Oct 31 2013 Petr Holasek <pholasek@redhat.com> - 2:1.0.6-3
5ac222
- Fixed env variable man page description (bz1020633)
5ac222
5ac222
* Tue Sep 10 2013 Petr Holasek <pholasek@redhat.com> - 2:1.0.6-2
5ac222
- Fixed CPU hotplug/hotunplug sigsegv (bz998494)
5ac222
5ac222
* Mon Aug 12 2013 Petr Holasek <pholasek@redhat.com> - 2:1.0.6-1
5ac222
- Rebased to version 1.0.6 (bz996171)
5ac222
5ac222
* Tue Jul 30 2013 Petr Holasek <pholasek@redhat.com> - 2:1.0.5-5
5ac222
- Man page and --help output were fixed (bz948372)
5ac222
5ac222
* Fri Jul 26 2013 Petr Holasek <pholasek@redhat.com> - 2:1.0.5-4
5ac222
- Hardened build
5ac222
5ac222
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2:1.0.5-2
5ac222
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
5ac222
5ac222
* Mon Jan 21 2013 Petr Holasek <pholasek@redhat.com> - 2:1.0.5-1
5ac222
- Rebased to version 1.0.5
5ac222
5ac222
* Wed Aug 29 2012 Petr Holasek <pholasek@redhat.com> - 2:1.0.4-2
5ac222
- Env file path edited
5ac222
5ac222
* Mon Aug 27 2012 Petr Holasek <pholasek@redhat.com> - 2:1.0.4-1
5ac222
- Rebased to version 1.0.4
5ac222
5ac222
* Wed Aug 22 2012 Petr Holasek <pholasek@redhat.com> - 2:1.0.3-5
5ac222
- Make irqbalance scan for new irqs when it detects new irqs (bz832815)
5ac222
- Fixes SIGFPE crash for some banning configuration (bz849792)
5ac222
- Fixes affinity_hint values processing (bz832815)
5ac222
- Adds banirq and bansript options (bz837049)
5ac222
- imake isn't needed for building any more (bz844359)
5ac222
- Fixes clogging of syslog (bz837646)
5ac222
- Added IRQBALANCE_ARGS variable for passing arguments via systemd(bz837048)
5ac222
- Fixes --hint-policy=subset behavior (bz844381)
5ac222
5ac222
* Sun Apr 15 2012 Petr Holasek <pholasek@redhat.com> - 2:1.0.3-4
5ac222
- Updated libnuma dependencies
5ac222
5ac222
* Sun Feb  5 2012 Peter Robinson <pbrobinson@fedoraproject.org> - 2:1.0.3-3
5ac222
- Build on ARM
5ac222
5ac222
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2:1.0.3-2
5ac222
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
5ac222
5ac222
* Fri Dec 02 2011 Neil Horman <nhorman@redhat.com> - 2:1.0.3-1
5ac222
- Updated to latest upstream release
5ac222
5ac222
* Fri Nov 04 2011 Neil Horman <nhorman@redhat.com> - 2:1.0.2-1
5ac222
- Updated to latest upstream release
5ac222
5ac222
* Wed Oct 26 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2:1.0-4
5ac222
- Rebuilt for glibc bug#747377
5ac222
5ac222
* Fri Oct 21 2011 Neil Horman <nhorman@redhat.com> - 2:1.0-3
5ac222
- Fix another crash on non-numa systems (bz 748070)
5ac222
5ac222
* Mon Oct 17 2011 Neil Horman <nhorman@redhat.com> - 2:1.0-2
5ac222
- Fix crash for systems with no numa node support
5ac222
5ac222
* Wed Oct 12 2011 Neil Horman <nhorman@redhat.com> - 2:1.0-1
5ac222
- Update irqbalance to latest upstream version
5ac222
5ac222
* Fri May  6 2011 Bill Nottingham <notting@redhat.com> - 2:0.56-4
5ac222
- fix upgrade trigger
5ac222
5ac222
* Fri Apr  8 2011 Peter Robinson <pbrobinson@gmail.com> - 2:0.56-3
5ac222
- Fix build in rawhide
5ac222
- Add license file to rpm
5ac222
- Cleanup spec file
5ac222
5ac222
* Fri Mar 25 2011 Anton Arapov <anton@redhat.com> - 2:0.56-3
5ac222
- rework init in order to respect systemd. (bz 659622)
5ac222
5ac222
* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2:0.56-2
5ac222
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
5ac222
5ac222
* Thu Jun 10 2010 Neil Horman <nhorman@redhat.com> - 2:0.56-1
5ac222
- Updated to latest upstream version
5ac222
5ac222
* Wed Sep 09 2009 Neil Horman <nhorman@redhat.com> - 2:0.55-25
5ac222
- Fixing BuildRequires
5ac222
5ac222
* Fri Sep 04 2009 Neil Horman <nhorman@redhat.com> - 2:0.55-24
5ac222
- Fixing irqbalance initscript (bz 521246)
5ac222
5ac222
* Wed Sep 02 2009 Neil Horman <nhorman@redhat.com> - 2:0.55-23
5ac222
- Fixing BuildRequires for new config script
5ac222
5ac222
* Tue Sep 01 2009 Neil Horman <nhorman@redhat.com> - 2:0.55-22
5ac222
- Fixing BuildRequires for new config script
5ac222
5ac222
* Tue Sep 01 2009 Neil Horman <nhorman@redhat.com> - 2:0.55-21
5ac222
- Fixing BuildRequires for new config script
5ac222
5ac222
* Tue Sep 01 2009 Neil Horman <nhorman@redhat.com> - 2:0.55-20
5ac222
- Fixing BuildRequires for new config script
5ac222
5ac222
* Tue Sep 01 2009 Neil Horman <nhorman@redhat.com> - 2:0.55-19
5ac222
- Incorporate capng (bz 520699)
5ac222
5ac222
* Fri Jul 31 2009 Peter Lemenkov <lemenkov@gmail.com> - 2:0.55-18
5ac222
- Added back accidentaly forgotten imake
5ac222
5ac222
* Fri Jul 31 2009 Peter Lemenkov <lemenkov@gmail.com> - 2:0.55-17
5ac222
- Cosmetic fixes in spec-file
5ac222
- Fixed rpmlint error in the init-script
5ac222
5ac222
* Tue Jul 28 2009 Peter Lemenkov <lemenkov@gmail.com> - 2:0.55-16
5ac222
- Many imrovements in spec-file
5ac222
5ac222
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2:0.55-15
5ac222
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
5ac222
5ac222
* Fri Mar 6 2009 Neil Horman <nhorman@redhat.com>
5ac222
- Update spec file to build for i586 as per new build guidelines (bz 488849)
5ac222
5ac222
* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2:0.55-13
5ac222
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
5ac222
5ac222
* Fri Dec 12 2008 Neil Norman <nhorman@redhat.com> - 2:0.55-12
5ac222
- Remove odd Netorking dependence from irqbalance (bz 476179)
5ac222
5ac222
* Fri Aug 01 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 2:0.55-11
5ac222
- fix license tag
5ac222
1a5ee7
* Wed Jun 04 2008 Neil Horman <nhorman@redhat.com> - 2:0.55-10
5ac222
- Update man page to explain why irqbalance exits on single cache (bz 449949)
5ac222
5ac222
* Tue Mar 18 2008 Neil Horman <nhorman@redhat.com> - 2:0.55-9
5ac222
- Rediff pid-file patch to not remove initial parse_cpu_tree (bz 433270)
5ac222
5ac222
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 2:0.55-8
5ac222
- Autorebuild for GCC 4.3
5ac222
5ac222
* Thu Nov 01 2007 Neil Horman <nhorman@redhat.com> - 2:0.55-7
5ac222
- Update to properly hadndle pid files (bz 355231)
5ac222
5ac222
* Thu Oct 04 2007 Neil Horman <nhorman@redhat.com> - 2:0.55-6
5ac222
- Fix irqbalance init script (bz 317219)
5ac222
5ac222
* Fri Sep 28 2007 Neil Horman <nhorman@redhat.com> - 2:0.55-5
5ac222
- Install pie patch
5ac222
- Grab Ulis cpuparse cleanup (bz 310821)
5ac222
5ac222
* Wed Aug 29 2007 Fedora Release Engineering <rel-eng at fedoraproject dot org> - 2:0.55-4
5ac222
- Rebuild for selinux ppc32 issue.
5ac222
5ac222
* Thu Jul 05 2007 Neil Horman <nhorman@redhat.com> - 0.55.3
5ac222
- Fixing LSB requirements (bz 246959)
5ac222
5ac222
* Tue Dec 12 2006 Neil Horman <nhorman@redhat.com> - 0.55-2
5ac222
- Fixing typos in spec file (bz 219301)
5ac222
5ac222
* Tue Dec 12 2006 Neil Horman <nhorman@redhat.com> - 0.55-1
5ac222
- Updating to version 0.55
5ac222
5ac222
* Mon Dec 11 2006 Neil Horman <nhorman@redhat.com> - 0.54-1
5ac222
- Update irqbalance to new version released at www.irqbalance.org
5ac222
5ac222
* Wed Nov 15 2006 Neil Horman <nhorman@redhat.com> - 1.13-8
5ac222
- Add ability to set default affinity mask (bz 211148)
5ac222
5ac222
* Wed Nov 08 2006 Neil Horman <nhorman@redhat.com> - 1.13-7
5ac222
- fix up irqbalance to detect multicore (not ht) (bz 211183)
5ac222
5ac222
* Thu Nov 02 2006 Neil Horman <nhorman@redhat.com> - 1.13-6
5ac222
- bumping up MAX_INTERRUPTS to support xen kernels
5ac222
- rediffing patch1 and patch3 to remove fuzz
5ac222
5ac222
* Tue Oct 17 2006 Neil Horman <nhorman@redhat.com> - 1.13-5
5ac222
- Making oneshot mean oneshot always (bz 211178)
5ac222
5ac222
* Wed Sep 13 2006 Peter Jones <pjones@redhat.com> - 1.13-4
5ac222
- Fix subsystem locking
5ac222
5ac222
* Fri Aug 18 2006 Jesse Keating <jkeating@redhat.com> - 1.13-2
5ac222
- rebuilt with latest binutils to pick up 64K -z commonpagesize on ppc*
5ac222
  (#203001)
5ac222
- Remove hack to use cvs checkin ID as release as it doesn't follow
5ac222
  packaging guidelines
5ac222
5ac222
* Tue Aug 01 2006 Neil Horman <nhorman@redhat.com>
5ac222
- Change license to GPL in version 0.13
5ac222
5ac222
* Sat Jul 29 2006 Dave Jones <davej@redhat.com>
5ac222
- identify a bunch more classes.
5ac222
5ac222
* Fri Jul 14 2006 Jesse Keating <jkeating@redhat.com>
5ac222
- rebuild
5ac222
5ac222
* Tue Jul 11 2006 Dave Jones <davej@redhat.com>
5ac222
- Further lazy rebalancing tweaks.
5ac222
5ac222
* Sun Feb 26 2006 Dave Jones <davej@redhat.com>
5ac222
- Don't rebalance IRQs where no interrupts have occured.
5ac222
5ac222
* Sun Feb 12 2006 Dave Jones <davej@redhat.com>
5ac222
- Build for ppc[64] too.
5ac222
5ac222
* Thu Feb 09 2006 Dave Jones <davej@redhat.com>
5ac222
- rebuild.
5ac222
5ac222
* Fri Dec 16 2005 Jesse Keating <jkeating@redhat.com>
5ac222
- rebuilt for new gcj
5ac222
5ac222
* Fri Dec 09 2005 Jesse Keating <jkeating@redhat.com>
5ac222
- rebuilt
5ac222
5ac222
* Tue Mar  1 2005 Dave Jones <davej@redhat.com>
5ac222
- Rebuild with gcc4
5ac222
5ac222
* Tue Feb  8 2005 Dave Jones <davej@redhat.com>
5ac222
- Build as pie, also -D_FORTIFY_SOURCE=2
5ac222
5ac222
* Tue Jan 11 2005 Dave Jones <davej@redhat.com>
5ac222
- Add missing Obsoletes: kernel-utils.
5ac222
5ac222
* Mon Jan 10 2005 Dave Jones <davej@redhat.com>
5ac222
- Start irqbalance in runlevel 2 too. (#102064)
5ac222
5ac222
* Sat Dec 18 2004 Dave Jones <davej@redhat.com>
5ac222
- Initial packaging, based on kernel-utils.
5ac222