O que está causando uma pausa durante a investigação do dispositivo do sistema?

O que está causando uma pausa durante a investigação do dispositivo do sistema?

Estou executando o FreeBSD 10.0-RELEASE.

Durante a análise do dispositivo de inicialização, há duas pausas de 30 segundos. A saída relevante para isso é

# dmesg
...
(aprobe0:ata0:0:1:0): ATAPI_IDENTIFY. ACB: a1 00 00 00 00 40 00 00 00 00 00 00
(aprobe0:ata0:0:1:0): CAM status: Command timeout
(aprobe0:ata0:0:1:0): Error 5, Retry was blocked
run_interrupt_driven_hooks: still waiting after 60 seconds for xpt_config
(aprobe0:ata0:0:1:0): ATAPI_IDENTIFY. ACB: a1 00 00 00 00 40 00 00 00 00 00 00
(aprobe0:ata0:0:1:0): CAM status: Command timeout
(aprobe0:ata0:0:1:0): Error 5, Retry was blocked
...

Sou muito novo neste sistema operacional, mas isso significa que o sistema está detectando um dispositivo, mas não consegue descobrir o que é? Não tenho nada além do essencial anexado - disco rígido e unidade óptica e está confirmado com:

# camcontrol devlist
<MATSHITA DVD-RAM UJ-841S 1.00>     at scbus0 target 0 lun 0 (pass0,cd0)
<HGST HTS7250xxxxxxxx GHB0xxxx>     at scbus1 target 0 lun 0 (pass1,ada0)

Tentei alguns outros comandos para obter algumas informações adicionais:

# camcontrol rescan all
(aprobe0:ata0:0:1:0): ATAPI_IDENTIFY. ACB: a1 00 00 00 00 40 00 00 00 00 00 00
(aprobe0:ata0:0:1:0): CAM status: Command timeout
(aprobe0:ata0:0:1:0): Error 5, Retry was blocked
(aprobe0:ata0:0:1:0): ATAPI_IDENTIFY. ACB: a1 00 00 00 00 40 00 00 00 00 00 00
(aprobe0:ata0:0:1:0): CAM status: Command timeout
(aprobe0:ata0:0:1:0): Error 5, Retry was blocked
Re-scan of bus 0 was successful
Re-scan of bus 1 was successful
Re-scan of bus 2 was successful
Re-scan of bus 3 was successful
Re-scan of bus 4 was successful

Com camcontrol rescan allo sistema novamente faz uma pausa duas vezes por 30 segundos antes de verificar novamente os barramentos. Mesmo que eu solicite a varredura de apenas um barramento, o sistema insiste em fazer a varredura 'aprobe0' primeiro. Além disso, as linhas "aprobe0..." estão em negrito e em branco brilhante, o que alguém me disse que significa que é uma resposta do kernel. Eu ficaria feliz se pudesse apenas reduzir a duração das pausas. Tentei entrar kern.cam.ada.default_timeout=5mas /boot/loader.confnão surtiu nenhum efeito. Procurei muito e muito sem sucesso e não consigo muita ajuda. Alguém que conhece melhor tem alguma ideia? Obrigado!

Só para acrescentar, este é o RELEASE-10. Por pouco tempo antes disso eu estava executando o RELEASE-8.3 que funcionou perfeitamente sem atrasos. O processo de inicialização demorou cerca de 15 segundos. Mas assim que eu estava começando a aprender no R8.3, ele atingiu o EOL, então decidi mudar para o R10. Os módulos do kernel ATA para R10 são muito diferentes daqueles do R8.3. Eu li sobre essas mudanças, mas não sei para onde ir a partir daqui.

Responder1

Tudo indica ser um bug/regressão que começou no FreeBSD 9.1

E, infelizmente, não há solução alternativa disponível. Talvez você possa fornecer mais detalhes sobre o seu problema (hardware, versão do FreeBSD) em kern/173435.

Responder2

Como uma unidade de DVD seria um dispositivo da(4) e não um dispositivo ada(4), tente kern.cam.da.default_timeoutdiminuir/boot/loader.conf

Responder3

Ainda há duas coisas para tentar:

  1. Tente atualizar o firmware da unidade de DVD. Parece que usa a versão 1.00. Há uma boa chance de que ele tenha sido atualizado para corrigir esse bug.
  2. Remova a unidade. De qualquer forma, é uma peça antiga de hardware.

informação relacionada