97e186
%define _hardened_build 1
97e186
f9b92c
Name:			rasdaemon
f9b92c
Version:		0.4.1
0b5545
Release:		24%{?dist}
f9b92c
Summary:		Utility to receive RAS error tracings
f9b92c
Group:			Applications/System
f9b92c
License:		GPLv2
f9b92c
URL:			https://git.fedorahosted.org/git/rasdaemon.git
f9b92c
Source0:		http://mchehab.fedorapeople.org/%{name}-%{version}.tar.bz2
f9b92c
97e186
ExclusiveArch:		%{ix86} x86_64 aarch64 %{power64}
f9b92c
BuildRoot:		%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) 
f9b92c
BuildRequires:		autoconf, automake, gettext-devel, libtool, sqlite-devel
f9b92c
Requires:		hwdata, perl-DBD-SQLite
f9b92c
%ifnarch %{arm}
71e2cb
%ifnarch %{power64}
f9b92c
Requires:		dmidecode
f9b92c
%endif
97e186
%endif
f9b92c
f9b92c
Requires(post):		systemd-units
f9b92c
Requires(preun):	systemd-units
f9b92c
Requires(postun):	systemd-units
f9b92c
97e186
Patch1: 0001-ras-mc-ctl-Improve-error-summary-to-show-label-and-m.patch
97e186
Patch2: 0002-ras-record-make-the-code-more-generic.patch
97e186
Patch3: 0003-ras-record-rename-stmt-to-stmt_mc_event.patch
97e186
Patch4: 0004-ras-record-reorder-functions.patch
97e186
Patch5: 0005-ras-record-Make-the-code-easier-to-add-support-for-o.patch
97e186
Patch6: 0006-Add-support-to-record-AER-events.patch
97e186
Patch7: 0007-Add-support-to-store-MCE-events-at-the-database.patch
97e186
Patch8: 0008-ras-mc-ctl-add-summary-for-MCE-and-PCIe-AER-errors.patch
97e186
Patch9: 0009-ras-mc-ctl-report-errors-also-for-PCIe-AER-and-MCE.patch
97e186
Patch10: 0010-ras-mc-ctl-Fix-the-name-of-the-error-table-data.patch
97e186
Patch11: 0013-ras-mc-ctl-Improve-parser.patch
97e186
Patch12: 0014-ras-mc-ctl-Fix-label-register-with-2-layers.patch
97e186
Patch13: 0015-Add-an-example-of-labels-file.patch
97e186
Patch14: 0017-ras-mc-ctl-Fix-the-DIMM-layout-display.patch
97e186
Patch15: 0019-ras-mc-ctl-remove-completely-use-of-modprobe.patch
97e186
Patch16: 0022-mce-amd-k8.c-fix-a-warning.patch
97e186
Patch17: 0023-add-abrt-suppport-for-rasdaemon.patch
97e186
Patch18: 0026-rasdaemon-Add-record-option-to-rasdaemon-man-page.patch
97e186
Patch19: 0027-ras-mc-ctl-Print-useful-message-when-run-without-ras.patch
97e186
Patch20: 0028-Make-paths-in-the-systemd-services-configurable.patch
97e186
Patch21: 0031-Correct-ABRT-report-data.patch
97e186
Patch22: 0032-rasdaemon-handle-failures-of-snprintf.patch
97e186
Patch23: 0033-rasdaemon-correct-range-while-parsing-top-middle-and.patch
97e186
Patch24: 0034-rasdaemon-enable-recording-by-default.patch
97e186
Patch25: 0035-eMCA-support.patch
97e186
Patch26: 0036-rasdaemon-fix-some-errors-in-sqlite.patch
97e186
Patch27: 0037-rasdaemon-sqlite-truncates-some-MCE-fields-to-32-bit.patch
97e186
Patch28: 0038-rasdaemon-fix-mce-numfield-decoded-error.patch
97e186
Patch29: 0039-rasdaemon-do-not-assume-dimmX-directories-will-be-pr.patch
97e186
Patch30: 0040-rasdaemon-add-more-dell-labels.patch
a0ebc9
Patch31: 0041-rasdaemon-add-support-for-Haswell.patch
a0ebc9
Patch32: 0042-rasdaemon-decode-new-simple-error-code-number-6.patch
a0ebc9
Patch33: 0043-rasdaemon-Add-missing-entry-to-Ivy-Bridge-memory-con.patch
a0ebc9
Patch34: 0044-rasdaemon-Identify-Ivy-Bridge-properly.patch
a0ebc9
Patch35: 0045-rasdaemon-add-support-for-Broadwell.patch
a0ebc9
Patch36: 0046-rasdaemon-add-support-for-Knights-Landing.patch
a0ebc9
Patch37: 0047-rasdaemon-properly-pring-message-strings-in-decode_b.patch
a0ebc9
Patch38: 0048-rasdaemon-add-missing-semicolon-in-hsw_decode_model.patch
a0ebc9
Patch39: 0049-rasdaemon-enable-IMC-status-usage-for-Haswell-E.patch
a0ebc9
Patch40: 0050-rasdaemon-make-sure-the-error-is-valid-before-handli.patch
71e2cb
Patch41: 0051-rasdaemon-add-support-to-match-the-machine-by-system.patch
71e2cb
Patch42: 0052-rasdaemon-add-internal-errors-of-IA32_MC4_STATUS-for.patch
71e2cb
Patch43: 0053-rasdaemon-remove-a-space-from-mcgstatus_msg.patch
71e2cb
Patch44: 0054-rasdaemon-unnecessary-comma-for-empty-mc_location-st.patch
71e2cb
Patch45: 0055-rasdaemon-use-MCA-error-msg-as-error_msg.patch
71e2cb
Patch46: 0056-x86-rasdaemon-Add-support-to-log-Local-Machine-Check.patch
71e2cb
Patch47: 0057-rasdaemon-add-support-for-haswell-ex.patch
0b5545
Patch48: 0058-rasdaemon-fix-typos-on-ras-mc-ctl-man-page.patch
0b5545
Patch49: 0059-rasdaemon-Add-support-for-Knights-Landing-processor.patch
0b5545
Patch50: 0060-mce-intel-knl-Fix-CodingStyle.patch
0b5545
Patch51: 0061-Add-Broadwell-DE-MSCOD-values.patch
0b5545
Patch52: 0062-Add-Broadwell-EP-EX-MSCOD-values.patch
0b5545
# Patch53 was submitted upstream but not merged yet
0b5545
Patch53: rasdaemon-dont_use_memerror_log_enable_on_knl.patch
7896d5
f9b92c
%description
f9b92c
%{name} is a RAS (Reliability, Availability and Serviceability) logging tool.
f9b92c
It currently records memory errors, using the EDAC tracing events.
f9b92c
EDAC is drivers in the Linux kernel that handle detection of ECC errors
f9b92c
from memory controllers for most chipsets on i386 and x86_64 architectures.
f9b92c
EDAC drivers for other architectures like arm also exists.
f9b92c
This userspace component consists of an init script which makes sure
f9b92c
EDAC drivers and DIMM labels are loaded at system startup, as well as
f9b92c
an utility for reporting current error counts from the EDAC sysfs files.
f9b92c
f9b92c
%prep
f9b92c
%setup -q
97e186
%patch1 -p1
97e186
%patch2 -p1
97e186
%patch3 -p1
97e186
%patch4 -p1
97e186
%patch5 -p1
97e186
%patch6 -p1
97e186
%patch7 -p1
97e186
%patch8 -p1
97e186
%patch9 -p1
97e186
%patch10 -p1
97e186
%patch11 -p1
97e186
%patch12 -p1
97e186
%patch13 -p1
97e186
%patch14 -p1
97e186
%patch15 -p1
97e186
%patch16 -p1
97e186
%patch17 -p1
97e186
%patch18 -p1
97e186
%patch19 -p1
97e186
%patch20 -p1
97e186
%patch21 -p1
97e186
%patch22 -p1
97e186
%patch23 -p1
97e186
%patch24 -p1
97e186
%patch25 -p1
97e186
%patch26 -p1
97e186
%patch27 -p1
97e186
%patch28 -p1
97e186
%patch29 -p1
97e186
%patch30 -p1
a0ebc9
%patch31 -p1
a0ebc9
%patch32 -p1
a0ebc9
%patch33 -p1
a0ebc9
%patch34 -p1
a0ebc9
%patch35 -p1
a0ebc9
%patch36 -p1
a0ebc9
%patch37 -p1
a0ebc9
%patch38 -p1
a0ebc9
%patch39 -p1
a0ebc9
%patch40 -p1
71e2cb
%patch41 -p1
71e2cb
%patch42 -p1
71e2cb
%patch43 -p1
71e2cb
%patch44 -p1
71e2cb
%patch45 -p1
71e2cb
%patch46 -p1
71e2cb
%patch47 -p1
0b5545
%patch48 -p1
0b5545
%patch49 -p1
0b5545
%patch50 -p1
0b5545
%patch51 -p1
0b5545
%patch52 -p1
0b5545
%patch53 -p1
f9b92c
f9b92c
%build
f9b92c
autoreconf -vfi
97e186
%configure --enable-mce --enable-aer --enable-sqlite3 --enable-extlog
f9b92c
make %{?_smp_mflags}
f9b92c
f9b92c
%install
f9b92c
make install DESTDIR=%{buildroot}
f9b92c
install -D -p -m 0644 misc/rasdaemon.service %{buildroot}/%{_unitdir}/rasdaemon.service
f9b92c
install -D -p -m 0644 misc/ras-mc-ctl.service %{buildroot}%{_unitdir}/ras-mc-ctl.service
97e186
install -D -p -m 0655 labels/* %{buildroot}%{_sysconfdir}/ras/dimm_labels.d
f9b92c
rm INSTALL %{buildroot}/usr/include/*.h
f9b92c
f9b92c
%clean
f9b92c
rm -rf %{buildroot}
f9b92c
f9b92c
%files
f9b92c
%defattr(-,root,root) 
f9b92c
%doc AUTHORS ChangeLog COPYING README TODO
f9b92c
%{_sbindir}/rasdaemon
f9b92c
%{_sbindir}/ras-mc-ctl
f9b92c
%{_mandir}/*/*
f9b92c
%{_unitdir}/*.service
f9b92c
%{_sharedstatedir}/rasdaemon
f9b92c
%{_sysconfdir}/ras/dimm_labels.d
f9b92c
f9b92c
%changelog
0b5545
* Wed Aug 24 2016 Aristeu Rozanski <aris@redaht.com> 0.4.1-24.el7
0b5545
- don't use MemError Log Enable on Knights Landing [1273326]
0b5545
0b5545
* Fri Apr 15 2016 Aristeu Rozanski <aris@redhat.com> 0.4.1-23.el7
0b5545
- add Broadwell DE/EP/EX MSCOD values [1299512]
0b5545
0b5545
* Mon Feb 08 2016 Aristeu Rozanski <aris@redhat.com> 0.4.1-22.el7
0b5545
- add missing upstream patches for Knights Landing [1273326]
0b5545
- fix documentation typos [1247562]
0b5545
0b5545
* Thu Dec 03 2015 Aristeu Rozanski <aris@redhat.com> 0.4.1-21.el7
0b5545
- add support for Knights Landing [1273326]
0b5545
71e2cb
* Wed Sep 30 2015 Aristeu Rozanski <aris@redhat.com> 0.4.1-20.el7
71e2cb
- add support for Haswell EP/EX [1267137]
71e2cb
71e2cb
* Mon Jul 27 2015 Aristeu Rozanski <aris@redhat.com> 0.4.1-19.el7
71e2cb
- pull latest fixes by Seiichi Ikarashi from upstream [1243941]
71e2cb
71e2cb
* Mon Jul 27 2015 Aristeu Rozanski <aris@redhat.com> 0.4.1-18.el7
71e2cb
- don't depend on dmidecode on ppc64, fix typo [1244593]
71e2cb
71e2cb
* Wed Jul 22 2015 Aristeu Rozanski <aris@redhat.com> 0.4.1-17.el7
71e2cb
- don't depend on dmidecode on ppc64 [1244593]
71e2cb
71e2cb
* Wed Jul 08 2015 Aristeu Rozanski <aris@redhat.com> 0.4.1-16.el7
71e2cb
- allow label files to specify by system product name [1168340]
71e2cb
71e2cb
* Wed Jun 03 2015 Aristeu Rozanski <aris@redhat.com> 0.4.1-15.el7
71e2cb
- add support to Haswell and newer processors [1221912]
a0ebc9
97e186
* Tue Dec 16 2014 Aristeu Rozanski <aris@redhat.com> 0.4.1-14.el7
97e186
- properly install the labels so it can be packaged [1073090]
97e186
97e186
* Tue Dec 02 2014 Aristeu Rozanski <aris@redhat.com> 0.4.1-13.el7
97e186
- updated labels patch to the new version submitted upstream [1073090]
97e186
97e186
* Tue Nov 25 2014 Aristeu Rozanski <aris@redhat.com> 0.4.1-12.el7
97e186
- fix on how sysfs tree is parsed for DIMMs [1073090]
97e186
- include new Dell labels [1073090]
97e186
97e186
* Fri Oct 10 2014 Aristeu Rozanski <aris@redhat.com> 0.4.1-11.el7
97e186
- don't require dmidecode for ppc64le [1151385]
97e186
97e186
* Fri Aug 22 2014 Aristeu Rozanski <aris@redhat.com> 0.4.1-10.el7
97e186
- use power64 macro instead, we have a driver enabled on ppc64 [1125663]
97e186
97e186
* Mon Aug 18 2014 Aristeu Rozanski <aris@redhat.com> 0.4.1-9.el7
97e186
- eMCA support [1085519]
97e186
- enable ppc64le [1125663]
97e186
97e186
* Mon Jun 09 2014 Aristeu Rozanski <aris@redhat.com> 0.4.1-8.el7
97e186
- Revert patch in 0.4.1-7.el7, replaced by a better patch
97e186
- Fix sizeof() usage on pointer [1035742]
97e186
- Added macro to build the package with stack protector [1092558]
97e186
- Handle failures of snprintf() [1035741]
97e186
- Fix range checking on signed char variables [1035746]
97e186
- Added aarch64 as architecture [1070973]
97e186
- Start recording by default [1117366] [1117367]
97e186
7896d5
* Fri Jan 17 2014 Aristeu Rozanski <aris@redhat.com> 0.4.1-7.el7
7896d5
- Fixed rasdaemon.service executable path [1043478]
7896d5
 
7896d5
* Fri Dec 27 2013 Daniel Mach <dmach@redhat.com> - 0.4.1-6
7896d5
- Mass rebuild 2013-12-27
7896d5
f9b92c
* Tue Aug 20 2013 Aristeu Rozanski <aris@redhat.com> 0.4.1-5.el7
f9b92c
- Applied Jarod Wilson fixes required to pass rpmlint tests
f9b92c
f9b92c
* Thu Aug 15 2013 Aristeu Rozanski <aris@redhat.com> 0.4.1-4.el7
f9b92c
- Rebuild
f9b92c
f9b92c
* Sun Jun  2 2013 Peter Robinson <pbrobinson@fedoraproject.org> 0.4.1-3
f9b92c
- ARM has EDMA drivers (currently supported in Calxeda highbank)
f9b92c
f9b92c
* Tue May 28 2013 Mauro Carvalho Chehab <mchehab@redhat.com> 0.4.1-2
f9b92c
- Fix the name of perl-DBD-SQLite package
f9b92c
f9b92c
* Tue May 28 2013 Mauro Carvalho Chehab <mchehab@redhat.com> 0.4.1-1
f9b92c
- Updated to version 0.4.1 with contains some bug fixes
f9b92c
f9b92c
* Mon May 27 2013 Mauro Carvalho Chehab <mchehab@redhat.com> 0.4.0-1
f9b92c
- Updated to version 0.4.0 and added support for mce, aer and sqlite3 storage
f9b92c
f9b92c
* Mon May 20 2013 Mauro Carvalho Chehab <mchehab@redhat.com> 0.3.0-1
f9b92c
- Package created
f9b92c