Bug in AMD EPYC "Rome" Processors Puts Them to Sleep After 34 Months of Uptime

AMD 最近发布了基于 Zen 2 的第二代 EPYC 处理器的勘误表,其中指出,“在上次系统重置后大约 1044 天后,内核将无法退出 CC6。” 1044 天大约是 34 个月,或者说只有不到 3 年的总正常运行时间,根据 Reddit 和 Twitter 上的一些系统管理员侦探进行数学计算并发现实际时间是 1042 天 12 小时,这实际上是一个高估。出现问题是因为 CPU REFCLK 在 54 位带符号整数中计算 10ns 滴答,如果您计算这些滴答中的 9 千万亿次以上,您会在 1042.4999 天得到溢出。一旦发生这种溢出,内核将永远处于僵尸状态,并且不会接受任何外部中断请求,直到你关闭电源开关然后再打开,这将重置计数器。


AMD 不打算发布任何针对 CC6 错误的修复程序,而是建议管理员禁用 CC6 以避免内核进入僵尸化状态,或者干脆在时限到期前每隔一段时间启动一次重启。


## **受影响的AMD CPU型号**
1. **Zen架构早期型号**  
   - **EPYC 7001系列**(代号Naples,如EPYC 7551P/7601)  
   - **Ryzen Threadripper 1000/2000系列**(如1950X/2990WX)  
   - **Ryzen桌面CPU第一代**(如Ryzen 7 1800X)  


2. **部分Zen+架构型号**  
   - **EPYC 7002系列**(代号Rome,如EPYC 7742)  
   - **Ryzen Threadripper 3000系列**(如3970X)  
   - **Ryzen桌面CPU第二代**(如Ryzen 7 2700X)  


> 注:此问题与CPU的CC6深度节能状态计时器溢出相关,常见于2017-2019年发布的早期Zen/Zen+架构处理器。

没有找到想要的答案?

上传日志让 AI 帮你诊断,或者在控制台里直接向 AI 提问。