diff options
Diffstat (limited to 'abs/extra/irqbalance')
-rw-r--r-- | abs/extra/irqbalance/Makefile.irqbalance | 13 | ||||
-rw-r--r-- | abs/extra/irqbalance/PKGBUILD | 32 | ||||
-rw-r--r-- | abs/extra/irqbalance/irqbalance.conf.d | 6 | ||||
-rw-r--r-- | abs/extra/irqbalance/irqbalance.rc.d | 46 |
4 files changed, 97 insertions, 0 deletions
diff --git a/abs/extra/irqbalance/Makefile.irqbalance b/abs/extra/irqbalance/Makefile.irqbalance new file mode 100644 index 0000000..fe08dc0 --- /dev/null +++ b/abs/extra/irqbalance/Makefile.irqbalance @@ -0,0 +1,13 @@ +CFLAGS := $(CFLAGS) -D_FORTIFY_SOURCE=2 -Wall -W $(shell pkg-config --cflags glib-2.0) +LDFLAGS := $(shell pkg-config --libs glib-2.0) + +OBJS = bitmap.o irqbalance.o cputree.o procinterrupts.o irqlist.o \ + placement.o activate.o network.o powermode.o numa.o classify.o + +all: irqbalance + +irqbalance: $(OBJS) + $(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS) + +clean: + rm -f irqbalance *~ *.o diff --git a/abs/extra/irqbalance/PKGBUILD b/abs/extra/irqbalance/PKGBUILD new file mode 100644 index 0000000..5d823cd --- /dev/null +++ b/abs/extra/irqbalance/PKGBUILD @@ -0,0 +1,32 @@ +# Maintainer: Dan McGee <dan@archlinux.org> +# Contributor: Martin Striz <ms@poruba.net> + +pkgname=irqbalance +pkgver=0.55 +pkgrel=3 +pkgdesc="IRQ balancing daemon for SMP systems" +arch=('i686' 'x86_64') +url="http://www.irqbalance.org/" +license=('GPL') +depends=(glib2) +makedepends=(pkgconfig) +backup=(etc/conf.d/irqbalance) +source=(http://www.irqbalance.org/releases/$pkgname-$pkgver.tar.gz + Makefile.irqbalance + irqbalance.conf.d + irqbalance.rc.d) +md5sums=('9f6b314ff1fdc14173abeb40592d4edf' + '45bc9e1d041d8547f2dbf12f887216df' + '336c1ee99818f9ecda1687e34c69fd6b' + '96efae052553711f74a61760cefa93b5') + +build() { + cd $srcdir/$pkgname-$pkgver + # use our Makefile instead of one provided which is not quite right + cp ../Makefile.irqbalance Makefile + make || return 1 + + install -D -m755 irqbalance $pkgdir/usr/sbin/irqbalance + install -D -m644 ../irqbalance.conf.d $pkgdir/etc/conf.d/irqbalance + install -D -m755 ../irqbalance.rc.d $pkgdir/etc/rc.d/irqbalance +} diff --git a/abs/extra/irqbalance/irqbalance.conf.d b/abs/extra/irqbalance/irqbalance.conf.d new file mode 100644 index 0000000..ef1bdfd --- /dev/null +++ b/abs/extra/irqbalance/irqbalance.conf.d @@ -0,0 +1,6 @@ +# +# Settings for irqbalance daemon +# + +# one shot mode - set to 1 if you have Pentium 4 with HT +ONESHOT=0 diff --git a/abs/extra/irqbalance/irqbalance.rc.d b/abs/extra/irqbalance/irqbalance.rc.d new file mode 100644 index 0000000..c8d197f --- /dev/null +++ b/abs/extra/irqbalance/irqbalance.rc.d @@ -0,0 +1,46 @@ +#!/bin/bash + +# source application-specific settings +ONESHOT=0 +[ -f /etc/conf.d/irqbalance ] && . /etc/conf.d/irqbalance + +if [ "$ONESHOT" -ne 0 ]; then + ONESHOT_CMD="oneshot" +fi + +. /etc/rc.conf +. /etc/rc.d/functions + +PID=`pidof -o %PPID /usr/sbin/irqbalance` +case "$1" in + start) + stat_busy "Starting IRQ balancing" + [ -z "$PID" ] && /usr/sbin/irqbalance $ONESHOT_CMD + if [ $? -gt 0 ]; then + stat_fail + else + if [ "$ONESHOT" -eq 0 ]; then + add_daemon irqbalance + fi + stat_done + fi + ;; + stop) + stat_busy "Stopping IRQ balancing" + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon irqbalance + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 |