diff options
Diffstat (limited to 'source/a/mcelog')
-rw-r--r-- | source/a/mcelog/doinst.sh | 24 | ||||
-rw-r--r-- | source/a/mcelog/mcelog-1.0pre3.tar.bz2.sign | 8 | ||||
-rwxr-xr-x | source/a/mcelog/mcelog.SlackBuild | 90 | ||||
-rw-r--r-- | source/a/mcelog/mcelog.init.diff | 56 | ||||
-rw-r--r-- | source/a/mcelog/slack-desc | 19 |
5 files changed, 197 insertions, 0 deletions
diff --git a/source/a/mcelog/doinst.sh b/source/a/mcelog/doinst.sh new file mode 100644 index 000000000..fd9d549aa --- /dev/null +++ b/source/a/mcelog/doinst.sh @@ -0,0 +1,24 @@ +#!/bin/sh +config() { + NEW="$1" + OLD="`dirname $NEW`/`basename $NEW .new`" + # If there's no config file by that name, mv it over: + if [ ! -r $OLD ]; then + mv $NEW $OLD + elif [ "`cat $OLD | md5sum`" = "`cat $NEW | md5sum`" ]; then # toss the redundant copy + rm $NEW + fi + # Otherwise, we leave the .new copy for the admin to consider... +} + +# Keep same perms on rc.mcelog.new: +if [ -e etc/rc.d/rc.mcelog ]; then + cp -a etc/rc.d/rc.mcelog etc/rc.d/rc.mcelog.new.incoming + cat etc/rc.d/rc.mcelog.new > etc/rc.d/rc.mcelog.new.incoming + mv etc/rc.d/rc.mcelog.new.incoming etc/rc.d/rc.mcelog.new +fi + +config etc/logrotate.d/mcelog.new +config etc/mcelog/mcelog.conf.new +config etc/rc.d/rc.mcelog.new + diff --git a/source/a/mcelog/mcelog-1.0pre3.tar.bz2.sign b/source/a/mcelog/mcelog-1.0pre3.tar.bz2.sign new file mode 100644 index 000000000..1f9c73a47 --- /dev/null +++ b/source/a/mcelog/mcelog-1.0pre3.tar.bz2.sign @@ -0,0 +1,8 @@ +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.4.9 (GNU/Linux) +Comment: See http://www.kernel.org/signature.html for info + +iD8DBQBLV9g/yGugalF9Dw4RAlheAJ4t2DqUZX1ySR3QH8RdVHLYyePHawCcC/Ct +N94+oQu1HHumOx0V6Ft+2Fo= +=eEE6 +-----END PGP SIGNATURE----- diff --git a/source/a/mcelog/mcelog.SlackBuild b/source/a/mcelog/mcelog.SlackBuild new file mode 100755 index 000000000..0a461cd80 --- /dev/null +++ b/source/a/mcelog/mcelog.SlackBuild @@ -0,0 +1,90 @@ + +#!/bin/sh + +# Copyright 2010 Patrick J. Volkerding, Sebeka, Minnesota, USA +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +PKGNAM=mcelog +VERSION=${VERSION:-$(echo $PKGNAM-*.tar.bz2 | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} +BUILD=${BUILD:-1} + +# Automatically determine the architecture we're building on: +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) export ARCH=i486 ;; + arm*) export ARCH=arm ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) export ARCH=$( uname -m ) ;; + esac +fi + +NUMJOBS=${NUMJOBS:-" -j7 "} + +CWD=$(pwd) +TMP=${TMP:-/tmp} +PKG=$TMP/package-$PKGNAM + +rm -rf $PKG +mkdir -p $TMP $PKG + +cd $TMP +rm -rf $PKGNAM-$VERSION +tar xvf $CWD/$PKGNAM-$VERSION.tar.bz2 || exit 1 +cd $PKGNAM-$VERSION + +zcat $CWD/mcelog.init.diff.gz | patch -p1 --verbose || exit 1 + +chown -R root:root . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \; + +make $NUMJOBS || make || exit 1 + +mkdir -p $PKG/etc/mcelog $PKG/usr/sbin $PKG/usr/man/man8 +install -m 755 -p mcelog $PKG/usr/sbin/mcelog +install -m 644 -p mcelog.8 $PKG/usr/man/man8 +gzip -9 $PKG/usr/man/man8/mcelog.8 +install -m 644 -p -b mcelog.conf $PKG/etc/mcelog/mcelog.conf.new +for i in cache-error-trigger dimm-error-trigger page-error-trigger socket-memory-error-trigger ; do + install -m 755 -p -b triggers/$i $PKG/etc/mcelog +done + +mkdir -p $PKG/etc/rc.d +install -m 755 -p mcelog.init $PKG/etc/rc.d/rc.mcelog.new + +mkdir -p $PKG/etc/logrotate.d +install -m 644 -p mcelog.logrotate $PKG/etc/logrotate.d/mcelog.new + +mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION +cp -a \ + CHANGES README* TODO* *.pdf \ + $PKG/usr/doc/$PKGNAM-$VERSION + +mkdir -p $PKG/install +zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh +cat $CWD/slack-desc > $PKG/install/slack-desc + +cd $PKG +/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz + diff --git a/source/a/mcelog/mcelog.init.diff b/source/a/mcelog/mcelog.init.diff new file mode 100644 index 000000000..cc2eee96b --- /dev/null +++ b/source/a/mcelog/mcelog.init.diff @@ -0,0 +1,56 @@ +--- ./mcelog.init.orig 2010-01-20 20:36:52.000000000 -0600 ++++ ./mcelog.init 2010-09-27 17:23:24.964394022 -0500 +@@ -2,11 +2,6 @@ + # + # Startup script for mcelog + # +-# This should be customized for distribution standards +-# (using rc_status etc.) +-# The paths are hardcoded and are not automatically adjusted +-# for different prefix +-# + ### BEGIN INIT INFO + # Provides: mcelog + # Default-Start: 3 5 +@@ -16,8 +11,6 @@ + # This logs and handles CPU hardware errors on x86 systems. + ### END INIT INFO + +-# put this is sysconfig +- + # mcelog mode + # valid values: daemon, trigger, cron + # Recommended value daemon +@@ -52,8 +45,8 @@ + case "$1" in + start) + if [ "$MCELOG_MODE" = "daemon" ] ; then +- echo "Starting mcelog daemon" +- startproc $MCELOG --daemon $MCELOG_OPTIONS ++ echo "Starting mcelog daemon: $MCELOG --daemon $MCELOG_OPTIONS" ++ $MCELOG --daemon $MCELOG_OPTIONS + elif [ -f "$TRIGGER" ] ; then + echo $MCELOG > "$TRIGGER" + else +@@ -62,8 +55,8 @@ + ;; + stop) + if [ "$MCELOG_MODE" = "daemon" ] ; then +- echo "Stopping mcelog" +- killproc -TERM $MCELOG ++ echo "Stopping mcelog daemon: killall -TERM $MCELOG" ++ killall -TERM $MCELOG + elif [ "$MCELOG_MODE" = "trigger" -a -f "$TRIGGER" ]; then + echo "" > "$TRIGGER" + else +@@ -85,8 +78,8 @@ + ;; + status) + if [ "$MCELOG_MODE" = "daemon" ] ; then +- echo "Checking for mcelog" +- checkproc $MCELOG ++ echo "Checking for mcelog:" ++ ps ax | grep $MCELOG | cut -f 1 -d ' ' + fi + ;; + *) diff --git a/source/a/mcelog/slack-desc b/source/a/mcelog/slack-desc new file mode 100644 index 000000000..0948e2687 --- /dev/null +++ b/source/a/mcelog/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +mcelog: mcelog (Machine Check Event logger) +mcelog: +mcelog: mcelog is the user space backend for logging machine check errors +mcelog: reported by the hardware to the kernel. The kernel does the immediate +mcelog: actions (like killing processes etc.) and mcelog decodes the logs the +mcelog: errors. It primarily handles machine checks and thermal events, which +mcelog: are reported for errors detected by the CPU. It is recommended that +mcelog: mcelog runs on all x86 machines, both 64-bit and 32bit. +mcelog: +mcelog: mcelog home: ftp://ftp.kernel.org:/pub/linux/utils/cpu/mce +mcelog: |