commit
0b13520784
BIN
aer-inject-2010.03.10.tar.bz2
Normal file
BIN
aer-inject-2010.03.10.tar.bz2
Normal file
Binary file not shown.
BIN
mce-inject-2013.01.19.tar.bz2
Normal file
BIN
mce-inject-2013.01.19.tar.bz2
Normal file
Binary file not shown.
58
mcelog.conf
Normal file
58
mcelog.conf
Normal file
@ -0,0 +1,58 @@
|
||||
#
|
||||
# config file for mcelog
|
||||
# For further options, see the mcelog manpage and documentation
|
||||
#
|
||||
|
||||
# Filter out known broken events by default
|
||||
filter = yes
|
||||
# don't log memory errors individually
|
||||
#filter-memory-errors = yes
|
||||
|
||||
# output in undecoded raw format to be easier machine readable
|
||||
#raw = yes
|
||||
|
||||
[server]
|
||||
# An upstream bug prevents this from being disabled
|
||||
# Only allow root to connect by default
|
||||
client-user = root
|
||||
# Path to socket client uses to connect
|
||||
socket-path = /var/run/mcelog-client
|
||||
|
||||
[dimm]
|
||||
# Enable DIMM-tracking
|
||||
dimm-tracking-enabled = yes
|
||||
# Disable DIMM DMI pre-population unless supported on your system
|
||||
dmi-prepopulate = no
|
||||
|
||||
# execute these triggers when the rate of corrected or uncorrected
|
||||
# errors per DIMM exceeds the threshold
|
||||
uc-error-trigger = dimm-error-trigger
|
||||
uc-error-threshold = 1 / 24h
|
||||
ce-error-trigger = dimm-error-trigger
|
||||
ce-error-threshold = 10 / 24h
|
||||
|
||||
[socket]
|
||||
# Memory error accounting per socket
|
||||
socket-tracing-enabled = yes
|
||||
mem-uc-error-threshold = 100 / 24h
|
||||
mem-ce-error-trigger = socket-memory-error-trigger
|
||||
mem-ce-error-threshold = 100 / 24h
|
||||
mem-ce-error-log = yes
|
||||
|
||||
[cache]
|
||||
# Attempt to off-line CPUs causing cache errors
|
||||
cache-threshold-trigger = cache-error-trigger
|
||||
cache-threshold-log = yes
|
||||
|
||||
[page]
|
||||
# Try to soft-offline a 4K page if it exceeds the threshold
|
||||
memory-ce-threshold = 10 / 24h
|
||||
memory-ce-trigger = page-error-trigger
|
||||
memory-ce-log = yes
|
||||
memory-ce-action = soft
|
||||
|
||||
[trigger]
|
||||
# Maximum number of running triggers
|
||||
children-max = 2
|
||||
directory = /etc/mcelog/triggers
|
||||
|
||||
79
mcelog.spec
Normal file
79
mcelog.spec
Normal file
@ -0,0 +1,79 @@
|
||||
%define last_tar_version 168
|
||||
%define mce_inject_ver 2013.01.19
|
||||
%define aer_inject_ver 2010.03.10
|
||||
|
||||
Name: mcelog
|
||||
Version: 168
|
||||
Release: 1
|
||||
Epoch: 3
|
||||
Summary: Linux kernel machine check handling middleware
|
||||
License: GPLv2
|
||||
URL: https://github.com/andikleen/mcelog
|
||||
Source0: v%{last_tar_version}.tar.gz
|
||||
Source1: mce-inject-%{mce_inject_ver}.tar.bz2
|
||||
Source2: aer-inject-%{aer_inject_ver}.tar.bz2
|
||||
Source3: mcelog.conf
|
||||
ExclusiveArch: i686 x86_64
|
||||
BuildRequires: bison flex systemd
|
||||
Requires(post): systemd
|
||||
Requires(preun): systemd
|
||||
Requires(postun): systemd
|
||||
|
||||
%description
|
||||
mcelog logs and accounts machine checks (in particular memory, IO, and
|
||||
CPU hardware errors) on modern x86 Linux systems.
|
||||
mce-inject allows to inject machine check errors on the software level
|
||||
into a running Linux kernel. This is intended for validation of the
|
||||
kernel machine check handler.
|
||||
aer-inject allows to inject PCIE AER errors on the software level into
|
||||
a running Linux kernel. This is intended for validation of the PCIE
|
||||
driver error recovery handler and PCIE AER core handler.
|
||||
|
||||
%prep
|
||||
%setup -q -n %{name}-%{last_tar_version} -a 1 -a 2
|
||||
|
||||
%build
|
||||
make CFLAGS="$RPM_OPT_FLAGS -Wl,-z,relro,-z,now -fpie" LDFLAGS="-Wl,-z,relro,-z,now -fpie -pie"
|
||||
make CFLAGS="$RPM_OPT_FLAGS -g" -C mce-inject-%{mce_inject_ver}
|
||||
make CFLAGS="$RPM_OPT_FLAGS -g -D_GNU_SOURCE" -C aer-inject-%{aer_inject_ver}
|
||||
|
||||
%install
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
mkdir -p $RPM_BUILD_ROOT
|
||||
mkdir -p $RPM_BUILD_ROOT/%{_unitdir}
|
||||
mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/mcelog/triggers
|
||||
DESTDIR=$RPM_BUILD_ROOT make install
|
||||
# Replace mcelog.conf in mcelog tarball
|
||||
install -p -m644 %{SOURCE3} $RPM_BUILD_ROOT/%{_sysconfdir}/mcelog/mcelog.conf
|
||||
mv $RPM_BUILD_ROOT/%{_sysconfdir}/mcelog/*-trigger $RPM_BUILD_ROOT/%{_sysconfdir}/mcelog/triggers
|
||||
install -p -m644 mcelog.service $RPM_BUILD_ROOT%{_unitdir}/mcelog.service
|
||||
destdir=$RPM_BUILD_ROOT make -C mce-inject-%{mce_inject_ver} install
|
||||
install -p -m755 aer-inject-%{aer_inject_ver}/aer-inject $RPM_BUILD_ROOT/%{_sbindir}/aer-inject
|
||||
|
||||
%clean
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
%post
|
||||
%systemd_post mcelog.service
|
||||
|
||||
%preun
|
||||
%systemd_preun mcelog.service
|
||||
|
||||
%postun
|
||||
%systemd_postun_with_restart mcelog.service
|
||||
|
||||
%files
|
||||
%doc README.md
|
||||
%license LICENSE
|
||||
%{_sbindir}/mce-inject
|
||||
%{_sbindir}/aer-inject
|
||||
%{_sbindir}/mcelog
|
||||
%dir %{_sysconfdir}/mcelog
|
||||
%{_sysconfdir}/mcelog/triggers
|
||||
%config(noreplace) %{_sysconfdir}/mcelog/mcelog.conf
|
||||
%{_unitdir}/mcelog.service
|
||||
%attr(0644,root,root) %{_mandir}/*/*
|
||||
|
||||
%changelog
|
||||
* Thu Feb 27 2020 openEuler Buildteam <buildteam@openeuler.org> - 168-1
|
||||
- Package init
|
||||
BIN
v168.tar.gz
Normal file
BIN
v168.tar.gz
Normal file
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user