Process bus networking - Arc protection - Bay control and measurement - Motor protection - Transformer protection - 2 winding - Busbar differential protection (low impedance) - Feeder protection - Voltage regulation - Busbar protection (voltage and frequency) - Capacitor bank protection - Interconnection protection - Power management/Load shedding - Back-up protection - Engineering Manual - SSC600 Smart substation control and protection - SSC600 - 1.5 - IEC - ANSI - 18.12.2024

SSC600 and SSC600 SW Engineering Manual

If the NIC uses MSI interrupts, the interrupt numbers can be found under the sysfs mount-point, for example /sys/class/net/\<nic\>/device/msi_irqs/. Also proc/interrupts can be used to determine the interrupt numbers.

For possible kernel threads handling the interrupts, they can be listed with ps axo pid,command | grep [i]rq/<irq number>-.

Example showing the irqs used by enp7s0 interface, and the process handling the 1st irq:

ls /sys/class/net/enp7s0/device/msi_irqs/

40 41 42 43 44

cat /proc/interrupts | grep enp7s0

image/svg+xml40: 0 0 10 0 0 0 0 0 0 0 313415 0 0 0 0 0 IR-PCI-MSI 3670016-edge enp7s0 41: 0 0 0 675 0 0 0 0 0 0 3215212303 0 0 0 0 0 IR-PCI-MSI 3670017-edge enp7s0-TxRx-0 42: 17 0 0 0 0 0 0 0 0 0 268572 0 0 0 0 0 IR-PCI-MSI 3670018-edge enp7s0-TxRx-1 43: 0 28 0 0 0 0 0 0 0 0 505142 0 0 0 0 0 IR-PCI-MSI 3670019-edge enp7s0-TxRx-2 44: 0 0 35 0 0 0 0 0 0 0 804476 0 0 0 0 0 IR-PCI-MSI 3670020-edge enp7s0-TxRx-3

ps axo pid,command | grep [i]rq/40-

905 [irq/40-enp7s0]

The taskset utility can be used to pin the threads to specific CPU core(s): sudo taskset -p <cpu core mask> <pid>

The interrupts can be pinned by writing the CPU core mask to /proc/irq/<irq number>/smp_affinity: echo <cpu core mask> | sudo tee /proc/irq/<irq>/smp_affinity

For pinning the task and the interrupt to the 11th CPU core:

sudo taskset -p 0x400 905

echo 400 | sudo tee /proc/irq/40/smp_affinity

The above must be repeated for any possible redundant process bus.