irqbalance-1.12-1.25 /etc/init.d/irqbalance says: start() { echo -n $"Starting $prog: " daemon irqbalance $ONESHOT RETVAL=$? echo [ $RETVAL -eq 0 -a -n "$ONESHOT" ] && touch /var/lock/subsys/irqbalance return $RETVAL } If ONESHOT is empty, -n "$ONESHOT" is false, and /var/lock/subsys/irqbalance is never touched. This causes irqbalance to get started every time one changes the runlevel. Hopefully, only one irqbalance process runs, because the pid file is checked. Nevertheless, it's broken. It should be: [ $RETVAL -eq 0 -a -z "$ONESHOT" ] && touch /var/lock/subsys/irqbalance Phil.
fixed in -1.26