Você pode colocar seu módulo na lista negra usando as seguintes etapas:
- Crie um arquivo
/etc/modprobe.d/<modulename>.conf
contendoblacklist <modulename>
- Executar
depmod -ae
como raiz - Recrie seu initrd com
update-initramfs -u
Eu preciso forçar o kernel a não carregar os drivers da Intel NIC no meu PC para ver se isso ajuda nos problemas de desempenho que eu tenho usando o segundo NIC que está na mesma placa-mãe. Como posso fazer isso?
Eu acabei de instalar o Linux Debian Wheezy no meu desktop, desde que eu sou tão afeiçoado e feliz com o Squeeze. Eu encontrei um problema no entanto, onde o kernel depois do que parece ser um tempo aleatório para de responder ao IRQ 16 e desacelera a máquina inteira a um ponto em que ela não pode ser usada.
Pesquisando isso mostra muitas pessoas de todos os tipos de distribuições e kernels com o mesmo problema, mas sem solução. Eu verifiquei /proc/interrupts
e descobri que minha placa de vídeo e placa de rede está compartilhando o mesmo IRQ e decidi mover a placa gráfica para um novo slot que ajudou muito. No entanto, o problema ainda está lá, só agora ele está apenas causando problemas com o meu Intel gigabit NIC causando perda de desempenho. Como tenho duas placas de rede nesta máquina / placa-mãe, quero tentar desativar essa placa de rede e usar a outra para ver se isso resolve o problema.
Como posso fazer isso?
Aqui estão algumas informações sobre o meu sistema que podem ser úteis para saber. Eu cortei a informação que não é importante para este caso.
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)
Note que antes de eu mover a placa gráfica, o IRQ 16 era compartilhado apenas entre os drivers eth0 e 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
Informações do kernel.
hamartin@Sabriel:~$ uname -a Linux Sabriel 3.2.0-4-amd64 #1 SMP Debian 3.2.39-2 x86_64 GNU/Linux
Registros de log relevantes de /var/log/messages
. Isso é de antes de eu mudar o posicionamento da placa gráfica.
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
Eu não consigo encontrar a mensagem de erro que foi "murada" para a minha janela de terminal, eu suspeito que não tenha sido gravado nos logs. Em essência, a mensagem de erro dizia que ele parou de responder aos IRQs do dispositivo configurado para 16.
Se mais alguma informação for necessária, diga-me e eu a fornecerei assim que eu ver que há uma atualização aqui. Agradecemos antecipadamente por ter tempo para ajudar.
se você não puder desconectar seu hardware NIC, você precisa personalizar o kernel no qual nenhum código de driver correspondente será compilado. ou remover seu arquivo ko.