Что вызывает паузу во время проверки системного устройства?

Что вызывает паузу во время проверки системного устройства?

Я использую FreeBSD 10.0-RELEASE.

Во время проверки загрузочного устройства есть два раза по 30 секунд пауза. Вывод, относящийся к этому,

# 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
...

Я новичок в этой ОС, но означает ли это, что система обнаруживает устройство, но не может понять, что это? У меня подключено только самое необходимое - жесткий диск и оптический привод, и это подтверждается:

# 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)

Я попробовал некоторые другие команды, чтобы получить дополнительную информацию:

# 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

Система camcontrol rescan allснова делает паузу дважды по 30 секунд, прежде чем повторно просканировать шины. Даже если я запрашиваю сканирование только одной шины, система настаивает на выполнении сканирования 'aprobe0' в первую очередь. Кроме того, строки "aprobe0..." жирные и ярко-белые, что, как мне кто-то сказал, означает, что это ответ ядра. Я был бы счастлив, если бы мог хотя бы уменьшить длину пауз. Я пытался войти, kern.cam.ada.default_timeout=5но /boot/loader.confэто не дало никакого эффекта. Я долго и упорно искал, но безуспешно и не могу получить особой помощи. У кого-нибудь, кто знает лучше, есть какие-нибудь идеи? Спасибо!

Просто добавлю, что это RELEASE-10. Некоторое время до этого я использовал RELEASE-8.3, который работал идеально, без задержек. Процесс загрузки занял около 15 секунд. Но как раз когда я начал изучать R8.3, он достиг EOL, поэтому я просто решил перейти на R10. Модули ядра ATA для R10 сильно отличаются от модулей в R8.3. Я читал о таких изменениях, но не знаю, что делать дальше.

решение1

Все указывает на ошибку/регрессию, которая началась во FreeBSD 9.1.

И, к сожалению, нет никакого обходного пути. Может быть, вы могли бы дать больше подробностей о вашей проблеме (оборудование, версия FreeBSD) на kern/173435.

решение2

Поскольку DVD-привод будет устройством da(4), а не ada(4), попробуйте kern.cam.da.default_timeoutуменьшить/boot/loader.conf

решение3

Осталось попробовать еще две вещи:

  1. Попробуйте обновить прошивку DVD-привода. Похоже, что она использует версию 1.00. Есть большая вероятность, что она была обновлена ​​для исправления этой ошибки.
  2. Удали привод. Это все равно старая железка.

Связанный контент