驱动之家 17小时前
等了两年!Linux 7.3终于修复NBCON导致的SMP启动挂起Bug
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_keji1.html

 

快科技 10 月 17 日消息,据报道,在即将发布的 Linux 7.3 稳定版内核中,一个导致多路 SMP(对称多处理)服务器随机卡在启动阶段的罕见 Bug 终于被修复。问题根源可追溯至 2024 年 9 月引入的非阻塞控制台代码。

过去两年间,多个用户报告了 SMP 系统在启动时随机挂起的问题。这些报告表现各异,但存在一个共同点:在 SMP 初始化阶段出现了 IPI(处理器间中断)丢失。进一步排查发现,禁用 NBCON 控制台即可让问题消失,矛头由此指向 NBCON。

NBCON 是 Linux 内核中的非阻塞控制台机制,用于在系统崩溃或紧急情况下仍能可靠输出日志。

问题出在其打印线程的启动时机上:NBCON 的打印 kthreads 通过 early_initcall 在启动极早期就被创建,而它们在早期启动阶段会异步地启用和禁用中断,这可能干扰某些硬件平台上的 SMP 初始化过程,导致启动挂起。

修复方案来自 Linutronix 工程师 John Ogness。补丁的核心思路是推迟 kthreads 的启动时间,将其移至所有架构相关的 initcalls 完成之后。实测表明,这一调整避免了此前可复现该问题的系统卡死。

由于该 Bug 自 2024 年 9 月起就存在于内核代码中,这一修复预计将在未来几天内从 Linux 7.3 回传至其他仍受支持的稳定内核分支。

对于运行多核服务器、曾遭遇随机启动卡死的运维人员而言,这无疑是一个迟来的好消息。

【本文结束】如需转载请务必注明出处:快科技

责任编辑:红茶

智客推

智客推

ZAKER 智客推 GEO | AI 时代的品牌认知解决方案

一起剪

一起剪

ZAKER旗下免费视频剪辑工具

相关标签

linux 工程师 举报
相关文章
评论
没有更多评论了
取消

登录后才可以发布评论哦

打开小程序可以发布评论哦

12 我来说两句…
打开 ZAKER 参与讨论