前言

最近又从海鲜市场入手了两台升腾c92,都是j1900芯片的版本。

这已经是我入手的第4、第5台c92了,因为试了一圈小主机以后,我觉得这个机器就是最适合我使用需求的小主机:超级省电、无风扇设计所以0噪音、便宜、够用。

但是,这次到手的2台机器,我发现其中一台虽然芯片是j1900,但是铭牌上的型号是f610而不是c92。

网上搜f610这个型号,除了官网的产品介绍,没有太多的其它信息,不过大致可以判断f610就是c92的小改款,拆机以后可以看到主板上的硬件布局、散热片大小就存在明显的区别。

给f610刷入c92的bios可以正常点亮,然后熟练的装上pve,再还原一大堆vm,最后找个不影响机器散热的小角落放着吃灰就行了。

不过实际使用时很快就翻车了,我碰到了一个很棘手的问题,故障如下:

  1. 机器运行一段时间后(或长或短,没有固定时间,但大致是3~8个小时),pve的web控制台无法访问,所有vm也无法访问,所有vm的服务也全部掉线,也就是所有vm以及pve本身,看上去应该都是网络掉线了
  2. 机器本身的功耗没有出现变化,电源按钮的指示灯依然是绿色(表示机器是运行状态),网口的灯也会闪烁
  3. 机器接上显示器,有几次出现linux登录的shell界面,但状态卡死,键盘输入无响应,有几次是无视频信号输出(屏幕不亮)
  4. 机器长按电源硬重启后,pve和所有vm都可以正常启动
  5. 在pve的web控制台查看系统日志,没有看到特别明显的错误信息
  6. 机器继续运行一段时间后,又重复出现如上的故障

机器出现这个问题后让我很头疼,因为很难确定到底是哪个环节出了问题,有可能是硬件问题,比如内存、硬盘、主板,有可能是软件问题,比如pve新版本有bug之类。


问题解决

使用memtester排除了内存的问题,使用smartmontools排除了硬盘的问题。

在网上搜索很久,并没有什么有价值的内容,最后还是靠着ai + dmesg日志定位到了原因:acpi错误。

使用dmesg | grep -i error命令查看内核日志,输出内容中有这么一条:

[    0.397469] acpi PNP0A08:00: _OSC: platform retains control of PCIe features (AE_ERROR)

以下是grok给出的日志分析:

以下是grok给出的排查建议:

最后,根据ai建议,进行以下两步配置调整:

  1. 在bios中关闭acpi功能,并关闭所有c6/c7之类的休眠降低功耗的功能
  2. 在pve的grub配置文件中增加pcie_aspm=off参数

至此,问题解决,🎉


结论

问题解决了以后,复盘debug过程,我觉得,大概是f610和c92在硬件上确实有些许区别,所有对c92的bios固件兼容性不佳,导致acpi出现了问题,引起pve运行不稳定,频繁假死。

所以,还是那句话:捡垃圾有风险!!!!!!!


喝杯奶茶