97e186
%define _hardened_build 1
97e186
f9b92c
Name:			rasdaemon
f9b92c
Version:		0.4.1
714f59
Release:		37%{?dist}
f9b92c
Summary:		Utility to receive RAS error tracings
f9b92c
Group:			Applications/System
f9b92c
License:		GPLv2
b18917
URL:			https://pagure.io/rasdaemon
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
2e11a1
Patch54: 0063-add_support_for_knights_mill.patch
2e11a1
Patch55: 0064-add_support_for_skylake.patch
b18917
Patch56: 0065-rasdaemon-Update-DIMM-labels-for-Dell-Servers.patch
b18917
Patch57: 0066-rasdaemon-Update-DIMM-labels-for-Intel-Skylake-serve.patch
b18917
Patch58: 0067-rasdaemon-add-support-for-non-standard-CPER-section-.patch
b18917
Patch59: 0068-rasdaemon-add-support-for-non-standard-error-decoder.patch
b18917
Patch60: 0069-rasdaemon-add-support-for-ARM-events.patch
b18917
Patch61: 0070-rasdaemon-ARM-fully-initialize-ras_arm_event.patch
431d88
Patch62: 0071-rasdaemon-ras-mc-ctl-add-option-to-show-error-counts.patch
714f59
Patch63: 9baae41e14b825b487c80a743a21bfdf6175bd19.patch
714f59
Patch64: 008125849f94a5c7d8ccbd56ed1156f49169d273.patch
714f59
Patch65: 3dca35f17effa102b7140d5554401ef2292425b7.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
2e11a1
%patch54 -p1
2e11a1
%patch55 -p1
b18917
%patch56 -p1
b18917
%patch57 -p1
b18917
%patch58 -p1
b18917
%patch59 -p1
b18917
%patch60 -p1
b18917
%patch61 -p1
431d88
%patch62 -p1
714f59
%patch63 -p1
714f59
%patch64 -p1
714f59
%patch65 -p1
f9b92c
f9b92c
%build
f9b92c
autoreconf -vfi
26a187
%configure --enable-mce --enable-aer --enable-sqlite3 --enable-extlog \
26a187
	--enable-arm --enable-non-standard
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
714f59
* Wed Mar 18 2020 Aristeu Rozanski <aris@redhat.com> 0.4.1-37.el7
714f59
- rasdaemon: fix error handling in ras_mc_event_opendb [1694748]
714f59
714f59
* Fri Jan 10 2020 Aristeu Rozanski <aris@redhat.com> 0.4.1-36.el7
714f59
- ras-mce-handler: fix mcgstatus message print [1525210]
714f59
431d88
* Fri Jan 25 2019 Aristeu Rozanski <aris@redhat.com> 0.4.1-35.el7
431d88
- Add support to show error counts only [1573686]
431d88
431d88
* Wed Jul 11 2018 Aristeu Rozanski <aris@redhat.com> 0.4.1-34.el7
431d88
- Rebuilt [1558575]
26a187
26a187
* Mon Mar 19 2018 Aristeu Rozanski <aris@redhat.com> 0.4.1-33.el7
26a187
- Enabled not standard errors [1520602]
26a187
b18917
* Fri Feb 02 2018 Aristeu Rozanski <aris@redhat.com> 0.4.1-32.el7
b18917
- Fixed covscan error [1520602]
b18917
b18917
* Wed Jan 24 2018 Aristeu Rozanski <aris@redhat.com> 0.4.1-31.el7
b18917
- Added ARM support [1520602]
b18917
b18917
* Thu Oct 19 2017 Aristeu Rozanski <aris@redhat.com> 0.4.1-30.el7
b18917
- Updated project url [1502400]
b18917
b18917
* Wed Aug 23 2017 Aristeu Rozanski <aris@redhat.com> 0.4.1-29.el7
b18917
- Updating Dell labels [1458938]
b18917
2e11a1
* Tue May 30 2017 Aristeu Rozanski <aris@redhat.com> 0.4.1-28.el7
2e11a1
- Bump release [1448113]
2e11a1
2e11a1
* Tue May 30 2017 Aristeu Rozanski <aris@redhat.com> 0.4.1-28.el7
2e11a1
- Identify as Knights Mill systems as such [1448113]
2e11a1
2e11a1
* Mon May 8 2017 Aristeu Rozanski <aris@redhat.com> 0.4.1-27.el7
2e11a1
- Fixed error found by covscan in the last patch [1377467]
2e11a1
2e11a1
* Tue Apr 11 2017 Aristeu Rozanski <aris@redhat.com> 0.4.1-26.el7
2e11a1
- add support for Skylake client and server [1377467]
2e11a1
2e11a1
* Wed Mar 22 2017 Aristeu Rozanski <aris@redhat.com> 0.4.1-25.el7
2e11a1
- add support for Knights Mill [1433862]
2e11a1
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