Description
一名粉丝在玩东方匠魂传这个整合包时,发现一旦启动服务器整台电脑都会突然死机!屏幕冻结没响应,鼠标键盘全无效!十分甚至九分的不对!罪魁祸首究竟是谁?
根据@陈梦泽_Yumezawa 、@GCC酱_0ff1c1a1 和@赤川鹤鸣_Channel 的联合复现与排查后,结合现有日志、内核更新记录与 Github 资料,我们发现在带有 Linux 6.17 内核的系统上,使用 Spark 模组会使 async-profiler 触发一个死锁,最终导致操作系统死机。
鉴于 Spark 模组全球下载量已超过 1.5 亿,Linux 又是知名的服务器操作系统,此 Bug 的出现可能会对不少服主和玩家造成困惑甚至损失。
我们提出了一些解决方案,包括将 Spark 模组移除出去、降低操作系统内核和替换与 async-profiler 相关的 .so 文件。
参考资料:
https://lore.kernel.org/stable/CAHPNGSQpXEopYreir+uDDEbtXTBvBvi8c6fYXJvceqtgTPao3Q@mail.gmail.com/T/#u
https://github.com/lucko/spark/issues/530
https://github.com/torvalds/linux/commit/18dbcbfabfffc4a5d3ea10290c5ad27f22b0d240
Comments
jvm运行在用户态,一个用户态程序想要搞崩操作系统内核理论上是不可能的,除非后者本身出现了bug或者exploit。另外,mc服务器也是服务器,这个事件提醒我们即便是简单的java应用,也要使用稳定的服务器os,比如rhel/centos stream,ubuntu server之类的
♥ 416 ↩ 30
00:31 卡死me诗人能想出来的啊[笑哭]
♥ 290 ↩ 2
刚从东方匠魂传官方群过来,直接做成教案了属于是[笑哭]
♥ 210 ↩ 1
我刚开服务器时用win,真的是会随机暴毙的,根据估计,半衰期大概七天[Mygo表情包_哈?]
♥ 145 ↩ 13
kernel panic,我也跟着panic[颂乐人偶_眯眼笑]
♥ 128 ↩ 5
诶飞牛这个内核老[脱单doge]
♥ 118 ↩ 22
为啥那么多服务器都是用Linux啊? Windows的兼容性不更好吗?还是说Linux哪方面比windows更好?
♥ 105 ↩ 49
其实Windows也是有办法的[doge] 首先,你得先不小心写一个加载时会__halt和_disable的内核态驱动[doge_金箍] 然后,你得再一个不小心把一些公司泄露的证书下载了,又安装了 再一没注意打开签名工具给签名了 然后不小心打开模组的jar文件给压了 再一个不小心改了改模组代码 不小心启动了游戏 好的你的电脑冻结了,重启吧[doge_金箍][doge_金箍][doge_金箍][doge_金箍]
♥ 91 ↩ 7
经实验:本人的archlinux系统也出现了崩溃
♥ 79 ↩ 5
这似乎只存在于v6.17-rc5~v6.18-rc5(只看tag的话),视频中的18dbcbfabfffc4a5d3ea10290c5ad27f22b0d240链接:https://github.com/torvalds/linux/commit/18dbcbfabfffc4a5d3ea10290c5ad27f22b0d240 视频中的Archlinux没问题,所以 只要我Archlinux滚的足够快,bug就追不上我(
♥ 69 ↩ 5
ubuntu25.10的桌面环境也有问题,更新到这个版本之后,wiliwili打开就会直接连带着整个桌面环境崩溃。原因是软件上报了错误的窗口位置信息,按理来说应当只崩溃程序的。总之,linux不建议任何人追最新版本。
♥ 68 ↩ 12
火焰图太坏了,这也能死机
♥ 52 ↩ 3
想起我之前写模组时发现磁盘空间不足了,用wiztree分析后发现居然是mc日志占了几十gb,然后读取文件内容发现是我自己模组会在每一帧都记一行日志,就记了几十个gb……
♥ 35 ↩ 3
hrtimer和hrtimer_cancel真是一对苦命鸳鸯
♥ 39 ↩ 4
卡死me是怎么想出来的 太生草了
♥ 31 ↩ 3
关于分析卡顿的模组把Linux服务端搞死机了这一块
♥ 27 ↩ 1
从 issue 上看,现在 6.17.8-arch1 已经修复了这个问题了,如有必要可以说明一下 https://github.com/lucko/spark/issues/530#issuecomment-3537142800
♥ 26 ↩ 1
这个之前玩cti的时候也碰到了,排障排了半天都没想到是spark干的,然后一晚上我的eos炸了十多次才排出来是spark。。。
♥ 26 ↩ 1
盲猜IO耗尽导致Linux卡死
♥ 26 ↩ 5
[辣眼睛]
♥ 30 ↩ 1