summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-apps/irqbalance/files')
-rw-r--r--sys-apps/irqbalance/files/irqbalance-0.56-build.patch16
-rw-r--r--sys-apps/irqbalance/files/irqbalance.164
-rw-r--r--sys-apps/irqbalance/files/irqbalance.confd15
-rw-r--r--sys-apps/irqbalance/files/irqbalance.confd-119
-rw-r--r--sys-apps/irqbalance/files/irqbalance.init-0.55-r221
-rw-r--r--sys-apps/irqbalance/files/irqbalance.init.212
-rw-r--r--sys-apps/irqbalance/files/irqbalance.init.328
-rw-r--r--sys-apps/irqbalance/files/irqbalance.service11
8 files changed, 186 insertions, 0 deletions
diff --git a/sys-apps/irqbalance/files/irqbalance-0.56-build.patch b/sys-apps/irqbalance/files/irqbalance-0.56-build.patch
new file mode 100644
index 000000000000..b7202a4701f1
--- /dev/null
+++ b/sys-apps/irqbalance/files/irqbalance-0.56-build.patch
@@ -0,0 +1,16 @@
+http://code.google.com/p/irqbalance/issues/detail?id=8
+http://code.google.com/p/irqbalance/issues/detail?id=13
+
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -25,7 +25,9 @@
+
+ INCLUDES = -I${top_srcdir}
+ LIBS = $(CAPNG_LDADD) $(GLIB_LIBS)
+-AM_CFLAGS = -g -Os -W -Wall -Wshadow -Wformat -Wundef $(GLIB_CFLAGS) -D_GNU_SOURCE
++AM_CFLAGS = -W -Wall -Wshadow -Wformat -Wundef
++AM_CPPFLAGS = $(GLIB_CFLAGS) -D_GNU_SOURCE
++dist_man_MANS = irqbalance.1
+ noinst_HEADERS = bitmap.h constants.h cpumask.h irqbalance.h non-atomic.h \
+ types.h
+ sbin_PROGRAMS = irqbalance
diff --git a/sys-apps/irqbalance/files/irqbalance.1 b/sys-apps/irqbalance/files/irqbalance.1
new file mode 100644
index 000000000000..c26c709a01d0
--- /dev/null
+++ b/sys-apps/irqbalance/files/irqbalance.1
@@ -0,0 +1,64 @@
+.\"Generated by db2man.xsl. Don't modify this, modify the source.
+.de Sh \" Subsection
+.br
+.if t .Sp
+.ne 5
+.PP
+\fB\\$1\fR
+.PP
+..
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Ip \" List item
+.br
+.ie \\n(.$>=3 .ne \\$3
+.el .ne 3
+.IP "\\$1" \\$2
+..
+.TH "IRQBALANCE" 1 "Dec 2006" "Linux" "irqbalance"
+.SH NAME
+irqbalance \- distribute hardware interrupts across processors on a multiprocessor system
+.SH "SYNOPSIS"
+
+.nf
+\fBirqbalance\fR
+.fi
+
+.SH "DESCRIPTION"
+
+.PP
+The purpose of \fBirqbalance\fR is distribute hardware interrupts across processors on a multiprocessor system in order to increase performance\&.
+
+.SH "OPTIONS"
+
+.TP
+.B --oneshot
+Causes irqbalance to be run once, after which the daemon exits
+.TP
+
+.B --debug
+Causes irqbalance to run in the foreground and extra debug information to be printed
+
+.SH "ENVIRONMENT VARIABLES"
+.TP
+.B IRQBALANCE_ONESHOT
+Same as --oneshot
+
+.TP
+.B IRQBALANCE_DEBUG
+Same as --debug
+
+.TP
+.B IRQBALANCE_BANNED_CPUS
+Provides a mask of cpus which irqbalance should ignore and never assign interrupts to
+
+.TP
+.B IRQBALANCE_BANNED_INTERRUPTS
+A list of space delimited IRQ numbers that irqbalance should not touch
+
+.SH "Homepage"
+http://www.irqbalance.org
+
+
diff --git a/sys-apps/irqbalance/files/irqbalance.confd b/sys-apps/irqbalance/files/irqbalance.confd
new file mode 100644
index 000000000000..152dd7988652
--- /dev/null
+++ b/sys-apps/irqbalance/files/irqbalance.confd
@@ -0,0 +1,15 @@
+# /etc/conf.d/irqbalance: config file for /etc/init.d/irqbalance
+# These are envvars used by irqbalance itself. For more info,
+# please see the irqbalance manpage.
+
+# Run irqbalance once and then exit
+#IRQBALANCE_ONESHOT="0"
+
+# Include debug messages in output
+#IRQBALANCE_DEBUG="0"
+
+# List of cpus to not include in balancing
+#IRQBALANCE_BANNED_CPUS=""
+
+# List of interrupts to not include in balancing
+#IRQBALANCE_BANNED_INTERRUPTS=""
diff --git a/sys-apps/irqbalance/files/irqbalance.confd-1 b/sys-apps/irqbalance/files/irqbalance.confd-1
new file mode 100644
index 000000000000..2761cfcd3596
--- /dev/null
+++ b/sys-apps/irqbalance/files/irqbalance.confd-1
@@ -0,0 +1,19 @@
+# /etc/conf.d/irqbalance: config file for /etc/init.d/irqbalance
+
+# Additional options to pass to irqbalance itself.
+IRQBALANCE_OPTS=""
+
+# These are envvars used by irqbalance itself, so make sure the "export"
+# is retained. For more info, please see the irqbalance manpage.
+
+# Run irqbalance once and then exit
+#export IRQBALANCE_ONESHOT="0"
+
+# Include debug messages in output
+#export IRQBALANCE_DEBUG="0"
+
+# List of cpus to not include in balancing
+#export IRQBALANCE_BANNED_CPUS=""
+
+# List of interrupts to not include in balancing
+#export IRQBALANCE_BANNED_INTERRUPTS=""
diff --git a/sys-apps/irqbalance/files/irqbalance.init-0.55-r2 b/sys-apps/irqbalance/files/irqbalance.init-0.55-r2
new file mode 100644
index 000000000000..476ba7c755ab
--- /dev/null
+++ b/sys-apps/irqbalance/files/irqbalance.init-0.55-r2
@@ -0,0 +1,21 @@
+#!/sbin/runscript
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License, v2 or later
+# $Id$
+
+depend() {
+ need localmount
+ after bootmisc
+}
+
+start() {
+ ebegin "Starting irqbalance"
+ start-stop-daemon --start --exec /sbin/irqbalance
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping irqbalance"
+ start-stop-daemon --stop --exec /sbin/irqbalance
+ eend $?
+}
diff --git a/sys-apps/irqbalance/files/irqbalance.init.2 b/sys-apps/irqbalance/files/irqbalance.init.2
new file mode 100644
index 000000000000..909800a9b3d9
--- /dev/null
+++ b/sys-apps/irqbalance/files/irqbalance.init.2
@@ -0,0 +1,12 @@
+#!/sbin/runscript
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License, v2 or later
+# $Id$
+
+depend() {
+ need localmount
+ after bootmisc
+}
+
+command="/usr/sbin/irqbalance"
+command_args="${IRQBALANCE_OPTS}"
diff --git a/sys-apps/irqbalance/files/irqbalance.init.3 b/sys-apps/irqbalance/files/irqbalance.init.3
new file mode 100644
index 000000000000..84cdb83af267
--- /dev/null
+++ b/sys-apps/irqbalance/files/irqbalance.init.3
@@ -0,0 +1,28 @@
+#!/sbin/runscript
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License, v2 or later
+# $Id$
+
+depend() {
+ need localmount
+ after bootmisc
+}
+
+command="/usr/sbin/irqbalance"
+command_args="${IRQBALANCE_OPTS}"
+
+check_sysfs() {
+ if grep -q MSI /proc/interrupts 2>/dev/null && \
+ test -z "$(find /sys/devices -type d -name msi_irqs 2>/dev/null)"; then
+ eerror "MSI interrupts found in /proc/interrupts but none found in sysfs."
+ eerror "You need to update your kernel."
+ return 1
+ fi
+}
+
+start() {
+ check_sysfs || return 1
+ ebegin "Starting irqbalance"
+ start-stop-daemon --exec ${command} --start -- ${IRQBALANCE_OPTS}
+ eend $?
+}
diff --git a/sys-apps/irqbalance/files/irqbalance.service b/sys-apps/irqbalance/files/irqbalance.service
new file mode 100644
index 000000000000..b7b589f2294c
--- /dev/null
+++ b/sys-apps/irqbalance/files/irqbalance.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=CPU Interrupt Balancer
+
+[Service]
+ExecStart=/usr/sbin/irqbalance --debug
+# --debug implies a lot of cruft
+# but it's the only way to get foregrounding
+StandardOutput=null
+
+[Install]
+WantedBy=multi-user.target