Мне нужно заставить ядро не загружать драйверы для сетевого адаптера Intel на моем ПК, чтобы проверить, помогает ли это в решении проблем с производительностью, которые я испытываю, используя второй сетевой адаптер на той же материнской плате. Как я могу это сделать?
Я только что установил Linux Debian Wheezy на свой рабочий стол, так как я очень любил Squeeze. Однако я столкнулся с проблемой, когда ядро после случайного времени перестает отвечать на IRQ 16 и замедляет работу всей машины до такой степени, что она становится непригодной для использования.
Поиск в Google показывает кучу людей из всех видов дистрибутивов и ядер с одной и той же проблемой, но без решения. Я проверил /proc/interrupts
и обнаружил, что моя видеокарта и сетевая карта используют один и тот же IRQ, и решил переместить видеокарту в новый слот, что очень помогло. Однако проблема все еще существует, только теперь она вызывает только проблемы с моим гигабитным сетевым адаптером Intel, что приводит к снижению производительности. Поскольку у меня есть две сетевые карты на этой машине / материнской плате, я хочу попытаться отключить этот сетевой адаптер и использовать другой, чтобы посмотреть, решит ли это проблему.
Как я могу это сделать?
Вот некоторая информация о моей системе, которую может быть полезно знать. Я вырезал информацию, которая не важна для этого случая.
hamartin@Sabriel:~$ lspci 00:00.0 Host bridge: Intel Corporation 2nd Generation Core Processor Family DRAM Controller (rev 09) 00:01.0 PCI bridge: Intel Corporation Xeon E3-1200/2nd Generation Core Processor Family PCI Express Root Port (rev 09) 00:01.1 PCI bridge: Intel Corporation Xeon E3-1200/2nd Generation Core Processor Family PCI Express Root Port (rev 09) 00:16.0 Communication controller: Intel Corporation 6 Series/C200 Series Chipset Family MEI Controller #1 (rev 04) 00:19.0 Ethernet controller: Intel Corporation 82579V Gigabit Network Connection (rev 05) 00:1a.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 (rev 05) 00:1b.0 Audio device: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller (rev 05) 00:1c.0 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 1 (rev b5) 00:1c.1 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 2 (rev b5) 00:1c.2 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 3 (rev b5) 00:1c.3 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 4 (rev b5) 00:1c.4 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 5 (rev b5) 00:1c.6 PCI bridge: Intel Corporation 82801 PCI Bridge (rev b5) 00:1c.7 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 8 (rev b5) 00:1d.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 (rev 05) 00:1f.0 ISA bridge: Intel Corporation P67 Express Chipset Family LPC Controller (rev 05) 00:1f.2 SATA controller: Intel Corporation 6 Series/C200 Series Chipset Family SATA AHCI Controller (rev 05) 00:1f.3 SMBus: Intel Corporation 6 Series/C200 Series Chipset Family SMBus Controller (rev 05) 02:00.0 VGA compatible controller: NVIDIA Corporation GF114 [GeForce GTX 560 Ti] (rev a1) 02:00.1 Audio device: NVIDIA Corporation GF114 HDMI Audio Controller (rev a1) 04:00.0 USB controller: NEC Corporation uPD720200 USB 3.0 Host Controller (rev 04) 06:00.0 SATA controller: JMicron Technology Corp. JMB362 SATA Controller (rev 10) 07:00.0 USB controller: NEC Corporation uPD720200 USB 3.0 Host Controller (rev 04) 08:00.0 PCI bridge: ASMedia Technology Inc. ASM1083/1085 PCIe to PCI Bridge (rev 01) 09:02.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8110SC/8169SC Gigabit Ethernet (rev 10) 0a:00.0 SATA controller: Marvell Technology Group Ltd. 88SE9172 SATA 6Gb/s Controller (rev 11)
Обратите внимание, что до того, как я переместил видеокарту, IRQ 16 был разделен только между драйверами eth0 и nouveau.
hamartin@Sabriel:~$ cat /proc/interrupts CPU0 CPU1 CPU2 CPU3 CPU4 CPU5 CPU6 CPU7 16: 400001 0 0 0 0 0 0 0 IO-APIC-fasteoi eth0
Информация о ядре.
hamartin@Sabriel:~$ uname -a Linux Sabriel 3.2.0-4-amd64 #1 SMP Debian 3.2.39-2 x86_64 GNU/Linux
Соответствующие logdata из /var/log/messages
. Это было до того, как я изменил расположение видеокарты.
Mar 25 01:22:50 Sabriel kernel: [ 4.137920] fb0: nouveaufb frame buffer device Mar 25 01:22:50 Sabriel kernel: [ 4.137922] drm: registered panic notifier Mar 25 01:22:50 Sabriel kernel: [ 4.137927] [drm] Initialized nouveau 1.0.0 20120316 for 0000:01:00.0 on minor 0 Mar 25 01:22:50 Sabriel kernel: [ 4.137966] hda_intel: Disabling MSI
Я не могу найти сообщение об ошибке, которое было "замуровано" в моем окне терминала, я подозреваю, что оно не было записано в журналы. По сути, в сообщении об ошибке говорится, что оно перестало отвечать на запросы IRQ от устройства, настроенного на 16.
Если потребуется дополнительная информация, сообщите мне, и я предоставлю ее, как только у меня появится обновление здесь. Заранее спасибо, что нашли время, чтобы помочь.