#error handling
Kangrejos 讨论 Rust 内核代码的 panic 准则
7/10lwn.net · ⭐️ 7/10 · 2026-10-28
在 Kangrejos 2026 上,Alexandre Courbot 没有发布新代码,而是就 Rust for Linux 中“何时允许 panic、如何做错误处理”征求开发者意见。他提出一条按优先级排列的处理阶梯:尽量写不会失败的代码,其次用编译期检查(保证捕获或尽力捕获),再次用运行时 Result,最后才 panic;并用 Nova vGPU 状态枚举、udelay\(\) 越界参数和 binder 的 add\death\(\) 等案例说明边界。现有内核 Rust 编码指南只有一处提到 panic,仅表示优先使用 Result;讨论中 Miguel Ojeda 认为,在没有安全降级方案时,维护者可以接受 panic;Ard Biesheuvel 则指出 panic 已嵌入 Rust 语言、无法完全消除。报道未显示这些准则已被正式采纳。