Supermicro + IPMI + FreeBSD:内核以 1-bps 的速度打印

Supermicro + IPMI + FreeBSD:内核以 1-bps 的速度打印

我正在运行 FreeBSD 8.2-RELEASE。该机器是超微5015MIPMI 2.0 子板

当我启动此主机时,启动过程顺利进行。我看到了 BIOS、RAID BIOS、第一和第二阶段引导加载程序以及第三阶段,/boot/loader。这些看上去都运行良好,速度也没有问题。

然后,系统加载内核,并以大约 1 bps 的速度打印内核消息。这是 IPMI KVM-over-LAN 的视频. 使用连接到机器的物理键盘-视频-鼠标时我也会看到这种情况。

BIOS 控制台重定向设置为 115200 bps。

/boot/loader.conf和的相关设置/boot/device.hints

boot_multicons=YES
boot_serial=YES
comconsole_speed=115200
console=comconsole,vidconsole
hint.uart.1.flags=0x10
hint.uart.1.port=0x2F8

我已停用 boot_multicons、boot_serial、将 comconsole_speed 设置为各种值、将 console 更改为各种值等。但都不起作用。好像内核忽略了我输入到加载程序中的设置。我甚至更改了 BIOS 中的端口速度。

知道为什么会发生这种情况吗?

看起来 FreeBSD 正在将字符打印到视频控制台,但是打印字符的速度是串行控制台特有的,并且错误地认为我的串行控制台配置为 1 bps。

答案1

如果有人能解释为什么会发生这种情况,请发表您自己的答案。如果您的答案很好,我会接受您的答案而不是我的。

快速简便的解决方案是选择其他 COM 端口。显然,我的 COM A 和 COM B 不匹配,在其他地方它们被称为 03F8 和 02F8。BIOS 配置为使用 COM A。FreeBSD 引导加载程序采用一些合理的默认值,这就是引导加载程序运行良好的原因。FreeBSD 内核期望看到 COM B。COM A 在操作系统中未配置,因此内核采用一些奇怪的默认值(1 bps)。串行控制台的 bps 速率也会影响打印到视频控制台的文本速度。

请记住,我没有使用串行控制台,但我们总是在系统上配置串行控制台,以便 IPMI 的 Serial-over-LAN (SOL) 可以工作,因为这里的一些系统管理员更喜欢 SOL。

我发誓我以前试过这个,但没有用。但现在,它起作用了。

也可以通过调整 /boot/device.hints 中的 uart 设置来防止这种情况。

相关内容