Когда я смотрю / proc / interrupts:
$ cat /proc/interrupts CPU0 CPU1 (...) 12: 4 0 IO-APIC-edge i8042 14: 145 65310875 IO-APIC-edge ide0 50: 0 0 IO-APIC-level uhci_hcd:usb5, Intel ICH7 58: 5388 7983508 IO-APIC-level libata 169: 812427252 1236572641 IO-APIC-level skge, eth1 217: 6 0 IO-APIC-level ehci_hcd:usb1, uhci_hcd:usb2 225: 0 0 IO-APIC-level uhci_hcd:usb3 233: 60 3108720778 IO-APIC-level uhci_hcd:usb4, skge
Я вижу два Скге и один eth1 записи. Все они сетевые карты. Из-за общего имени «skge» (которое является именем сетевого драйвера карты) я не могу легко распознать, какая сетевая карта занимает какое прерывание.
Как заставить linux использовать более информативные имена в записях?
Или: Есть ли альтернативный способ получить информацию INT вместо / proc / interrupt?
Моя конечная цель - управлять smp_affinities сетевых адаптеров.
В системах на основе RH вы можете назвать каждый ник с помощью ifcfg- * скрипты.
Просто укажите MAC-адрес nic в другом, чтобы связать его с нужным аппаратным устройством, а затем дайте ему имя устройства по вашему выбору.
Таким образом, у вас должно быть "yournicname" указано вместо "eth1", так что вы можете просто достичь своей цели.
Вот это хорошая статья с несколькими способами, которыми вы можете следовать, чтобы выполнить эту настройку в различных сценариях; в зависимости от вашего дистрибутива это может быть более или менее сложно.
Посмотрите в / sys / class / net /(интерфейс)/ устройство / irq.
Установите привязку в / proc / irq /(прерывание)/ smp_affinity.
Я не знаю, почему драйвер skge не предоставляет вам отдельные устройства; возможно, он может использовать только одну строку IRQ для всех интерфейсов?