Мне нужно получить номер прерывания интерфейса по его имени, как показано в ifconfig.
Есть ли какой-нибудь стандартный API для этого?
Номер прерывания находится в sysfs.Ищите файл /sys/class/net/[ethname]/device/irq.Например:
/sys/class/net/[ethname]/device/irq
more /sys/class/net/*/device/irq :::::::::::::: /sys/class/net/eth0/device/irq :::::::::::::: 30 :::::::::::::: /sys/class/net/eth1/device/irq :::::::::::::: 29
/sys/class/net/[ethname]/device/irq должен устаревший номер IRQ , устройство может не использовать устаревший IRQ, возможно, используется msix .
check
#ls /sys/class/net/eth0/device/msi_irqs/
или
# cat /proc/interrupts | grep eth0