irqbalance: new package
PATCH 1/1 irqbalance: new package
New package: irqbalance
Irqbalance is a daemon to help balance the cpu load generated by interrupts across all of a systems cpus.
Signed-off-by Karoly Kasza <[email protected]>
--- package/Config.in | 1 + package/irqbalance/Config.in | 9 +++++++++ package/irqbalance/S13irqbalance | 34 ++++++++++++++++++++++++++++++++ package/irqbalance/irqbalance.mk | 35 +++++++++++++++++++++++++++++++++ package/irqbalance/irqbalance.service | 9 +++++++++ 5 files changed, 88 insertions(+) create mode 100644 package/irqbalance/Config.in create mode 100644 package/irqbalance/S13irqbalance create mode 100644 package/irqbalance/irqbalance.mk create mode 100644 package/irqbalance/irqbalance.service
package/Config.in +1 -0
@@ -1249,6 +1249,7 @@ endif source "package/getent/Config.in" source "package/htop/Config.in" source "package/iprutils/Config.in" + source "package/irqbalance/Config.in" source "package/keyutils/Config.in" source "package/kmod/Config.in" source "package/lxc/Config.in"
package/irqbalance/Config.in new file +9 -0
@@ -0,0 +1,9 @@ +config BR2_PACKAGE_IRQBALANCE + bool "irqbalance" + help + Irqbalance is a daemon to help balance the cpu load generated + by interrupts across all of a systems cpus. + Irqbalance identifies the highest volume interrupt sources, + and isolates them to a single unique cpu, so that load is + spread as much as possible over an entire processor set, while + minimizing cache hit rates for irq handlers.
package/irqbalance/S13irqbalance new file +34 -0
@@ -0,0 +1,34 @@ +#!/bin/sh +# +# Starts irqbalance +# + +EXEC="/usr/sbin/irqbalance" +ARGS="" +PID="/var/run/irqbalance.pid" + +case "$1" in + start) + echo -n "Starting irqbalance: " + start-stop-daemon -S -q -x $EXEC -- $ARGS + if [ $? != 0 ]; then + echo "FAILED" + exit 1 + else + echo "OK" + fi + pidof irqbalance > $PID + ;; + stop) + echo -n "Stopping irqbalance: " + start-stop-daemon -K -q -p $PID + echo "OK" + ;; + restart|reload) + $0 stop + $0 start + ;; + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 +esac
package/irqbalance/irqbalance.mk new file +35 -0
@@ -0,0 +1,35 @@ +################################################################################ +# +# irqbalance +# +################################################################################ + +IRQBALANCE_VERSION = v1.0.8 +IRQBALANCE_SITE = $(call github,irqbalance,irqbalance,$(IRQBALANCE_VERSION)) +IRQBALANCE_LICENSE = GPLv2 +IRQBALANCE_LICENSE_FILES = COPYING +IRQBALANCE_DEPENDENCIES = host-pkgconf +# Autoreconf needed because package is distributed without a configure script +IRQBALANCE_AUTORECONF = YES + +# This would be done by the package's autogen.sh script +define IRQBALANCE_PRECONFIGURE + mkdir -p $(@D)/m4 +endef + +IRQBALANCE_PRE_CONFIGURE_HOOKS += IRQBALANCE_PRECONFIGURE + +define IRQBALANCE_INSTALL_INIT_SYSV + $(INSTALL) -D -m 755 package/irqbalance/S13irqbalance \ + $(TARGET_DIR)/etc/init.d/S13irqbalance +endef + +define IRQBALANCE_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 644 package/irqbalance/irqbalance.service \ + $(TARGET_DIR)/etc/systemd/system/irqbalance.service + mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants + ln -fs ../irqbalance.service \ + $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/irqbalance.service +endef + +$(eval $(autotools-package))
package/irqbalance/irqbalance.service new file +9 -0
@@ -0,0 +1,9 @@ +[Unit] +Description=irqbalance daemon +After=syslog.target + +[Service] +ExecStart=/usr/sbin/irqbalance --foreground + +[Install] +WantedBy=multi-user.target
Signature · 1 line
1.7.10.4
Thomas Petazzoni
AppliedPATCH 1/1 irqbalance: new package
Dear Karoly Kasza,
Quoted 6 lines · Karoly Kasza
New package: irqbalance
Irqbalance is a daemon to help balance the cpu load generated by interrupts across all of a systems cpus.
Signed-off-by Karoly Kasza <[email protected]>
Thanks, applied with minor changes:
[Thomas:
- Add upstream URL in Config.in help text.
- Fix indentation of init script.]
Best regards,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com