Retardo de inicialização devido a disco SATA inexistente

4

Minha placa ASUS M4A87TD EVO tem dois controladores de disco on-board, um deles é um JMicron JMB361 com um disco IDE antigo conectado. Quando inicializo o Arch Linux, ele aparece no diário do sistema assim:

Nov 02 12:53:50 host kernel: ahci 0000:04:00.0: JMB361 has only one port
Nov 02 12:53:50 host kernel: ahci 0000:04:00.0: AHCI 0001.0000 32 slots 2 ports 3 Gbps 0x3 impl SATA mode
Nov 02 12:53:50 host kernel: ahci 0000:04:00.0: flags: 64bit ncq pm led clo pmp pio slum part 
Nov 02 12:53:50 host kernel: ata9: SATA max UDMA/133 abar m8192@0xfbffe000 port 0xfbffe100 irq 17
Nov 02 12:53:50 host kernel: ata10: SATA max UDMA/133 abar m8192@0xfbffe000 port 0xfbffe180 irq 17
Nov 02 12:53:50 host kernel: ata9: SATA link down (SStatus 0 SControl 300)
Nov 02 12:53:50 host kernel: ata10: softreset failed (1st FIS failed)
Nov 02 12:53:50 host kernel: ata10: softreset failed (1st FIS failed)
Nov 02 12:53:50 host kernel: ata10: softreset failed (1st FIS failed)
Nov 02 12:53:50 host kernel: ata10: limiting SATA link speed to 1.5 Gbps
Nov 02 12:53:50 host kernel: ata10: softreset failed (1st FIS failed)
Nov 02 12:53:50 host kernel: ata10: reset failed, giving up

Eu não sei de onde os dispositivos ata9 e ata10 vêm. Há apenas um disco IDE conectado a esse controlador e é inicializado corretamente. O BIOS não mostra nada relacionado a ata9 ou ata10 (e não deve porque não há nada conectado lá) e eu não encontrei nenhuma maneira de desativá-los no BIOS.

Eu achei que havia encontrado uma maneira de desativar a detecção desses dois dispositivos aqui: Como dizer ao Linux Kernel > 3.0 para ignorar completamente um disco com falha? mas não fez nenhuma diferença. É assim que eu estou inicializando o kernel:

Nov 02 12:53:50 host kernel: Linux version 3.17.2-1-ARCH (builduser@thomas) (gcc version 4.9.1 20140903 (prerelease) (GCC) ) #1 SMP PREEMPT Thu Oct 30 20:49:39 CET 2014
Nov 02 12:53:50 host kernel: Command line: BOOT_IMAGE=/vmlinuz-linux root=UUID=2cfdc373-7023-48d7-a90d-43d030af277b rw libata.force=9:disable,10:disable quiet

O sistema consegue inicializar, mas os softresets falham atrapalham o processo de inicialização em pelo menos 90 segundos.

    
por Fabian Ritzmann 02.11.2014 / 14:10

1 resposta

1

Então, obviamente, a configuração do parâmetro do kernel de desativação libata.force é aplicada tarde demais no processo. O driver ATA primeiro tenta redefinir o dispositivo antes de desativá-lo. O que funcionou para mim é desativar as reinicializações, bem como o dispositivo com esse parâmetro de kernel libata.force=9:disable,9:norst,10:disable,10:norst .

Ainda estou recebendo algumas entradas de log do kernel para esses dispositivos, mas eles não me incomodam, desde que nada apareça no console e o sistema inicialize imediatamente:

Nov 08 01:19:39 host kernel: ata9: FORCE: link flag 0x6 forced -> 0x6
Nov 08 01:19:39 host kernel: ata9: SATA max UDMA/133 abar m8192@0xfbffe000 port 0xfbffe100 irq 17
Nov 08 01:19:39 host kernel: ata10: DUMMY
Nov 08 01:19:39 host kernel: ata9: SATA link down (SStatus 0 SControl 300)
    
por 08.11.2014 / 00:27