IT时代网10月17日消息,,在即将发布的 Linux 7.3 稳定版中,一个导致 SMP 多处理器服务器随机卡在启动阶段的罕见 Bug 终于被修复,问题源头可追溯至 2024 年 9 月引入的非阻塞控制台机制。过去三年时间,这个 Bug 曾让 SMP 系统在启动时随机遭遇卡死。虽然存在一个共同点,即在 SMP 开始初始化阶段出现了 IPI 中断丢失,进一步排查发现,禁用 NBCON 控制台可以确认根因,补丁由此指向 NBCON。NBCON 是 Linux 内核中的非阻塞控制台机制,用于在系统崩溃或死机时仍可输出日志。问题出在命令行终端的启动时机上,NBCON 的打印 kthreads 通过 early_initcall 在启动早期阶段就创建,但它们在早期启动阶段也会意外地启用和禁用中断,这就已构成在硬件平台上的 SMP 初始化进程,导致启动挂起。修复方案来自 Linutronix 工程师 John Ogness,核心思路是把触发 kthreads 的启动时间,移到每个架构相关的 initcalls 完成之后。实测表明,这一调整能完美复现原问题的系统不再复现。由于该 Bug 自 2024 年 9 月就存在于内核代码中,这一修复预计在未来几天从 Linux 7.3 回归至其他仍受支持的稳定内核分支中。对于运行多处理器服务器、集群和超算的运维人员而言,这是值得注意的更新消息。
![]()
注:本文配图由AI生成。本文中包含AI辅助创作的内容。
编辑:林一舟
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.