Назад | Перейти на главную страницу

Почему прерывания ограничиваются только ядром CPU0?

Почему прерывания ограничиваются CPU0, а не другими доступными ядрами? Только для LOC: я мог видеть, что прерывания распределяются по другим ядрам, почему этого не происходит для eth0 и eth1?

           CPU0       CPU1       CPU2       CPU3
  0: 3860081907          0          0          0    IO-APIC-edge  timer
  1:         20          0          0          0    IO-APIC-edge  i8042
  6:          5          0          0          0    IO-APIC-edge  floppy
  7:          0          0          0          0    IO-APIC-edge  parport0
  8:          0          0          0          0    IO-APIC-edge  rtc
  9:          0          0          0          0   IO-APIC-level  acpi
 12:        240          0          0          0    IO-APIC-edge  i8042
 14:   11651412          0          0          0    IO-APIC-edge  ide0
 51:   63756555          0          0          0   IO-APIC-level  ioc0
 59:          1          0          0          0   IO-APIC-level  vmci
 67:   20176527          0          0          0   IO-APIC-level  eth0
 75:   98414043          0          0          0   IO-APIC-level  eth1
NMI:          0          0          0          0
LOC: 3887753782 3887746069 3887748988 3887748054
ERR:          0
MIS:          0

Я проверил файл smp_affinity на наличие eth0, но ничего не смог разобрать.

cat /proc/irq/67/smp_affinity
00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000001

Вы можете включить irqbalance если он в настоящее время не запущен в системе.