diff --git a/arch/x86/tools/irqbalance_mck.service.in b/arch/x86/tools/irqbalance_mck.service.in index 53722f08..17f6370b 100644 --- a/arch/x86/tools/irqbalance_mck.service.in +++ b/arch/x86/tools/irqbalance_mck.service.in @@ -3,7 +3,7 @@ Description=irqbalance daemon After=syslog.target [Service] -EnvironmentFile=@ETCDIR@/irqbalance_mck +EnvironmentFile=/tmp/irqbalance_mck ExecStart=/usr/sbin/irqbalance --foreground $IRQBALANCE_ARGS [Install] diff --git a/arch/x86/tools/mcreboot-smp-x86.sh.in b/arch/x86/tools/mcreboot-smp-x86.sh.in index 110579b6..25b97a57 100644 --- a/arch/x86/tools/mcreboot-smp-x86.sh.in +++ b/arch/x86/tools/mcreboot-smp-x86.sh.in @@ -478,8 +478,9 @@ if [ "${irqbalance_used}" == "yes" ]; then banirq=`cat /proc/interrupts| perl -e 'while(<>) { if(/^\s*(\d+).*IHK\-SMP\s*$/) {print $1;}}'` - sed "s/%mask%/$smp_affinity_mask/g" $ETCDIR/irqbalance_mck.in | sed "s/%banirq%/$banirq/g" > $ETCDIR/irqbalance_mck - if ! systemctl link $ETCDIR/irqbalance_mck.service >/dev/null 2>/dev/null; then + sed "s/%mask%/$smp_affinity_mask/g" $ETCDIR/irqbalance_mck.in | sed "s/%banirq%/$banirq/g" > /tmp/irqbalance_mck + systemctl disable irqbalance_mck.service >/dev/null 2>/dev/null + if ! systemctl link $ETCDIR/irqbalance_mck.service >/dev/null 2>/dev/null; then echo "error: linking irqbalance_mck" >&2 error_exit "mcos_sys_mounted" fi