-#!/bin/bash -e
+#!/bin/bash
#
# rc.local
#
#
# In order to enable or disable this script just change the execution
# bits.
-#
-# By default this script does nothing.
-# distribute interrupt for eth0 on core 1-5
-core=(2 4 8 10 20)
-l=0
-for i in $(awk '/eth0/ {sub(/:/, ""); print $1}' /proc/interrupts); do
- echo ${core[$l]} > /proc/irq/$i/smp_affinity
- let l++
- [ $l -eq 6 ] && l=1
+# set eth interrupts on core 0-4
+core=(1 2 4 8 10)
+for j in $(seq 0 5); do
+ for i in $(cat /proc/interrupts |awk '/eth'$j'/ {sub(/:/, "");; print $1}'); do
+ echo ${core[$l]} > /proc/irq/$i/smp_affinity
+ let l++;
+ [ $l -eq ${#core[*]} ] && l=0
+ done
+done
+
+# check eth2-5 (issue with client blade)
+ip addr | awk '/: / {sub(/:/, "", $2); eth=$2} /inet / {print eth, $2}' > /root/ip.addr
+for i in $(seq 2 5); do
+ interface=eth$i
+ grep -q $interface /root/ip.addr || { ifdown $interface; ifup $interface; }
+done
+
+# remove acpi cpu frequence controler
+modprobe -r acpi_cpufreq
+
+for i in $(seq 1 25); do
+ echo TRC6500
done
exit 0