#! /bin/bash # # irqbalance Start/Stop irq balancing daemon # # chkconfig: 345 13 87 # description: The irqbalance daemon will distribute interrupts across \ # the cpu's on a multiprocessor system with the purpose of \ # spreading the load. \ # processname: irqbalance # config: /etc/sysconfig/irqbalance # pidfile: /var/run/irqbalance.pid # Source function library. . /etc/init.d/functions RETVAL=0 # See how we were called. prog="irqbalance" [ -f /usr/sbin/irqbalance ] || exit 0 # fetch configuration if it exists # ONESHOT=yes says to wait for a minute, then look at the interrupt # load and balance it once; after balancing exit and do not change # it again. # The default is to keep rebalancing once every 10 seconds. ONESHOT= [ -f /etc/sysconfig/irqbalance ] && . /etc/sysconfig/irqbalance case "$ONESHOT" in y*|Y*|on) ONESHOT=--oneshot ;; *) ONESHOT= ;; esac start() { gprintf "Starting %s: " "$prog" daemon irqbalance $ONESHOT RETVAL=$? echo [ $RETVAL -eq 0 ] && touch /var/lock/subsys/irqbalance return $RETVAL } stop() { gprintf "Stopping %s: " "$prog" killproc irqbalance RETVAL=$? echo [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/irqbalance return $RETVAL } rhstatus() { status irqbalance } restart() { stop start } case "$1" in start) start ;; stop) stop ;; restart) restart ;; reload) restart ;; status) rhstatus ;; condrestart) [ -f /var/lock/subsys/irqbalance ] && restart || : ;; *) gprintf "Usage: %s {start|stop|status|reload|restart|condrestart}\n" "$0" exit 1 esac exit $?