感谢Euyis的投递 新闻来源:Slashdot DragonFly BSD 主要开发者之一 Matthew Dillon 刚刚宣布 AMD 证实了一个他发现的 CPU bug 的存在. Matt 在公告中引用了邮件来往中的一部分内容 - 该问题是代码出现连续退栈随后又执行 (近) 返回指令的情况下, 处理器会使栈指针指向错误值. 而这个 Bug 在 DragonFly BSD 中的具体表现是系统在大负载情况下会随机出现段错误. 在与 Dillon 的邮件中, AMD 称公司工程师已经收到了他提供的代码样本并且仔细分析了出现在 DragonFly BSD 系统代码中 fill_sons_in_loop() 函数的段错误, 并且确认错误确实是由部分 AMD 处理器中存在的缺陷导致的; 所提供的编译版本中的 fill_sons_in_loop 代码存在一段非常特殊的连续退栈操作和返回, 会导致有缺陷的 CPU 给栈指针赋错误的值. 文中并没有提到存在缺陷的所有具体 CPU 型号. 不过根据 Dillon 提供的研究报告, 在一台装有四个 Opteron 6168 处理器以及两台使用 Phenom II X4 820 的机器上都存在该问题, 而用于比较的 Xeon E3 则没有问题. 原文: Buildworld loop seg-fault update -- I believe it is hardware