Códigos de processadores para IRQs no Linux

(Pois é.. post muuuito nerd :) )

Você alguma vez na vida, quis redistribuir as IRQs do seu sistema, na mão? Sim.. na mão.. sem utilizar o irqbalance… (a história para essa vontade é longa, chata, nerd e tediosa… por isso não vai ser contada :) )
Bem, se você já quis fazer e não sabia dos valores a serem utilizados para cada processador, vai ai uma listinha (eu procurei muito na internet até encontrar isso..):

000000001 – Processador 1
000000002 – Processador 2
000000004 – Processador 3
000000008 – Processador 4
000000010 – Processador 5
000000020 – Processador 6
000000040 – Processador 7
000000080 – Processador 8
… etc

Para trocar o processador de uma IRQ, faça:

echo “[valor]” > /proc/irq/[numero_da_irq]/smp_affinity

Ex:

echo “000000010″ > /proc/irq/213/smp_affinity

(isso vai trocar a IRQ 213 para o processador 5)

E só! Para conferir, você pode usar o mpstat:

mpstat -P ALL 1

(vai mostrar a cada 1 segundo as informações de cada processador em separado)