我正在运行 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。 R10 的 ATA 内核模块与 R8.3 中的有很大不同。我已阅读有关此类更改的信息,但我不知道从这里该去哪里。
答案1
所有人都指出这是一个从 FreeBSD 9.1 开始的错误/回归
遗憾的是,没有可用的解决方法。也许您可以在 上提供有关您的问题的更多详细信息(硬件、FreeBSD 版本)kern/173435
。
答案2
由于 DVD 驱动器是 da(4) 设备而不是 ada(4) 设备,因此请尝试kern.cam.da.default_timeout
降低/boot/loader.conf
答案3
还有两件事需要尝试:
- 尝试更新 DVD 驱动器的固件。看起来它使用的是1.00版本。它很可能已被更新以修复此错误。
- 卸下驱动器。无论如何,它都是一个旧硬件。