等了两年!Linux 7.3终于修复NBCON导致的SMP启动挂起Bug
  • 红茶
  • 2026年10月17日 20:14
  • 0

快科技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回传至其他仍受支持的稳定内核分支。

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

等了两年!Linux 7.3终于修复NBCON导致的SMP启动挂起Bug

文章纠错

  • 好文点赞
  • 水文反对

此文章为快科技原创文章,快科技网站保留文章图片及文字内容版权,如需转载此文章请注明出处:快科技

观点发布 网站评论、账号管理说明
热门评论
查看全部评论
相关报道

最热文章排行查看排行详情

邮件订阅

评论0 | 点赞0| 分享0 | 收藏0