开发者为 Linux 内核的 Panic 界面“整活”:添加二维码、修改背景颜色

2024年 7月 4日 103.4k 0

Linux 6.10 引入了一个新的 DRM Panic 处理程序基础设施,以便于在出现内核致命错误 (Panic),或者 VT 支持可能被禁用的情况下显示相关信息。

这项功能类似于 Windows 的蓝屏死机,此前我们也报道了 Red Hat 工程师创建的 Linux 版本蓝屏死机界面。

开发者为 Linux 内核的 Panic 界面“整活”:添加二维码、修改背景颜色-1

有人抱怨这与 Windows 的蓝屏过于相似。Javier 表示这都是开源的,因此可以根据自己的喜好进行定制,于是他转身就拿出了“黑屏死机界面” (Black Screen Of Death):

开发者为 Linux 内核的 Panic 界面“整活”:添加二维码、修改背景颜色-2

近日,Red Hat 的另一位内核开发者 Jocelyn Falempe 提交了新补丁,用于在 DRM Panic 界面中显示错误消息二维码。

开发者为 Linux 内核的 Panic 界面“整活”:添加二维码、修改背景颜色-3

Jocelyn Falempe 介绍称:

该系列补丁添加了一个新的"panic"界面,将 kmsg 数据嵌入二维码中。二维码的主要优势在于可以将调试数据复制/粘贴到错误报告中。

QR-code 编码器是用 rust 编写的,与 drm_panic 非常相关。原因是它是在 panic 处理程序中调用的,因此不能分配内存或使用锁定。

rust 代码使用了一些 rust 核心 API,只提供了两个 C 语言入口。

用 rust 实现这项功能没有什么特别的原因,我只是想学习一下 rust,看看它是否能在内核中工作。

下图是带二维码的 Linux Panic 错误信息界面:

开发者为 Linux 内核的 Panic 界面“整活”:添加二维码、修改背景颜色-4

开发者为 Linux 内核的 Panic 界面“整活”:添加二维码、修改背景颜色-5

由于内核错误信息通常都比较冗长,尤其是在包含堆栈跟踪的情况下,有时甚至无法在屏幕内显示内容。上述补丁将内核错误信息简化为二维码,可以方便用户通过智能手机获取错误信息,以便日后分析或附加到错误报告等。

相关文章

塑造我成为 CTO 之路的“秘诀”
“人工智能教母”的公司估值达 10 亿美金
教授吐槽:985 高校成高级蓝翔!研究生基本废了,只为房子、票子……
Windows 蓝屏中断提醒开发者:Rust 比 C/C++ 更好
Claude 3.5 Sonnet 在伽利略幻觉指数中名列前茅
上海新增 11 款已完成登记生成式 AI 服务

发布评论