危险!MC模组导致死机:罪魁祸首居然是这一行代码……

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

半人半靈の半人前 2025-11-16

jvm运行在用户态,一个用户态程序想要搞崩操作系统内核理论上是不可能的,除非后者本身出现了bug或者exploit。另外,mc服务器也是服务器,这个事件提醒我们即便是简单的java应用,也要使用稳定的服务器os,比如rhel/centos stream,ubuntu server之类的

♥ 416 ↩ 30

灵感菇妮芙 2025-11-16

00:31 卡死me诗人能想出来的啊[笑哭]

♥ 290 ↩ 2

寡言之影 2025-11-16

刚从东方匠魂传官方群过来,直接做成教案了属于是[笑哭]

♥ 210 ↩ 1

凌晓洋 2025-11-16

我刚开服务器时用win,真的是会随机暴毙的,根据估计,半衰期大概七天[Mygo表情包_哈?]

♥ 145 ↩ 13

潸何涚 2025-11-16

kernel panic,我也跟着panic[颂乐人偶_眯眼笑]

♥ 128 ↩ 5

瓶盖PING 2025-11-16

诶飞牛这个内核老[脱单doge]

♥ 118 ↩ 22

管理员ComR12A 2025-11-17

为啥那么多服务器都是用Linux啊? Windows的兼容性不更好吗?还是说Linux哪方面比windows更好?

♥ 105 ↩ 49

良心之友_LXZY 2025-11-18

其实Windows也是有办法的[doge] 首先,你得先不小心写一个加载时会__halt和_disable的内核态驱动[doge_金箍] 然后,你得再一个不小心把一些公司泄露的证书下载了,又安装了 再一没注意打开签名工具给签名了 然后不小心打开模组的jar文件给压了 再一个不小心改了改模组代码 不小心启动了游戏 好的你的电脑冻结了,重启吧[doge_金箍][doge_金箍][doge_金箍][doge_金箍]

♥ 91 ↩ 7

1Cz7nYJ 2025-11-16

经实验:本人的archlinux系统也出现了崩溃

♥ 79 ↩ 5

wulinot 2025-11-16

这似乎只存在于v6.17-rc5~v6.18-rc5(只看tag的话),视频中的18dbcbfabfffc4a5d3ea10290c5ad27f22b0d240链接:https://github.com/torvalds/linux/commit/18dbcbfabfffc4a5d3ea10290c5ad27f22b0d240 视频中的Archlinux没问题,所以 只要我Archlinux滚的足够快,bug就追不上我(

♥ 69 ↩ 5

Maxing·long 2025-11-16

ubuntu25.10的桌面环境也有问题,更新到这个版本之后,wiliwili打开就会直接连带着整个桌面环境崩溃。原因是软件上报了错误的窗口位置信息,按理来说应当只崩溃程序的。总之,linux不建议任何人追最新版本。

♥ 68 ↩ 12

名字是颗星星 2025-11-16

火焰图太坏了,这也能死机

♥ 52 ↩ 3

Solid-Block 2025-11-18

想起我之前写模组时发现磁盘空间不足了,用wiztree分析后发现居然是mc日志占了几十gb,然后读取文件内容发现是我自己模组会在每一帧都记一行日志,就记了几十个gb……

♥ 35 ↩ 3

火树照暖 2025-11-16

hrtimer和hrtimer_cancel真是一对苦命鸳鸯

♥ 39 ↩ 4

虚空虚空虚空虚空 2025-11-19

卡死me是怎么想出来的 太生草了

♥ 31 ↩ 3

TouriCN_Official 2025-11-17

关于分析卡顿的模组把Linux服务端搞死机了这一块

♥ 27 ↩ 1

Vertsineu 2025-11-16

从 issue 上看,现在 6.17.8-arch1 已经修复了这个问题了,如有必要可以说明一下 https://github.com/lucko/spark/issues/530#issuecomment-3537142800

♥ 26 ↩ 1

Kyoku_極 2025-11-16

这个之前玩cti的时候也碰到了,排障排了半天都没想到是spark干的,然后一晚上我的eos炸了十多次才排出来是spark。。。

♥ 26 ↩ 1

castoria_ 2025-11-16

盲猜IO耗尽导致Linux卡死

♥ 26 ↩ 5

車芒果 2025-11-20

[辣眼睛]

♥ 30 ↩ 1