Linux 内核被迫删代码:AI 生成的安全报告正在压垮维护者

5 阅读4分钟

Linux 内核维护者正在大规模删除子系统代码。不是因为这些代码有 bug,而是因为 LLM 生成的安全报告太多了,多到维护者宁可把整个子系统移出内核树。

这不是段子。这是 2026 年 4 月正在发生的事。

发生了什么

过去一周,Linux 网络子系统维护者 Jakub Kicinski 和 Andrew Lunn 提交了一系列大规模代码移除补丁,涉及:

  • AX.25 业余无线电协议及所有关联的 hamradio 设备驱动
  • ATM 协议和驱动
  • ISDN 子系统
  • ISA 和 PCMCIA 以太网驱动
  • 一对老旧的 PCI 驱动

Kicinski 在提交说明中写得很直白:

This set of protocols has long been a huge bug/syzbot magnet, and since nobody stepped up to help us deal with the influx of the AI-generated bug reports we need to move it out of tree to protect our sanity.

关键词:protect our sanity(保护我们的理智)。

问题的本质

这些被删除的子系统有一个共同特征:老旧、用户极少、但代码量不小。它们长期处于"名义上维护"的状态 — 没有活跃的维护者投入精力,但因为是内核的一部分,任何针对它们的 bug 报告都需要有人处理。

然后 LLM 来了。

自动化安全扫描工具(包括 syzbot 和各种 LLM 驱动的代码审计工具)开始批量生成针对这些老旧代码的安全报告。问题是,这些报告中有大量是低质量的、重复的、甚至是错误的。但每一份报告都需要人工审核 — 因为你不能假设 AI 生成的报告全是垃圾,万一里面有一个真正的漏洞呢?

这就形成了一个恶性循环:

  1. LLM 扫描老旧代码,生成大量安全报告
  2. 维护者花大量时间审核这些报告
  3. 大部分报告是噪音,但不能不看
  4. 没有人愿意维护这些代码,也没有人愿意处理这些报告
  5. 唯一的出路:把代码从内核树中移除

这件事为什么重要

表面上看,这是一个开源维护的问题。但往深了想,这是 AI 工具对人类工作流产生负面外部性的典型案例。

LLM 生成内容的边际成本趋近于零。但人类审核内容的成本没有变。当 AI 可以每秒生成 100 份安全报告,而人类每天只能审核 10 份时,系统就崩了。

这和 AI 生成的垃圾邮件、AI 生成的虚假评论、AI 生成的 SEO 内容是同一个问题的不同表现:生产成本为零 + 审核成本不变 = 信噪比崩塌

LWN 的评论区也很有意思。有人指出,这些代码本来就该被移除 — 它们服务的硬件(PCMCIA 网卡、ISDN 调制解调器)早已退出历史舞台。LLM 报告只是加速了一个本该发生的清理过程。

这个观点有道理,但也回避了核心问题:如果 LLM 开始对活跃维护的代码做同样的事呢?

对开发者的启示

几个值得思考的点:

1. AI 工具的"外部性"需要被纳入设计考量。 如果你在构建 AI 安全扫描工具,你有责任控制输出质量,而不是把过滤成本转嫁给下游。

2. 开源项目需要新的防御机制。 Linux 内核已经开始要求贡献者声明是否使用了 AI 工具。但这远远不够。我们可能需要某种"AI 报告分级"机制,让维护者可以批量处理低置信度的报告。

3. "移除代码"有时是最好的工程决策。 代码不是资产,是负债。每一行代码都需要维护。当维护成本超过价值时,删除就是正确的选择。这个道理在 AI 时代变得更加紧迫。

写在最后

Linux 内核是全球最重要的开源项目之一,运行在从手机到超级计算机的几乎所有设备上。当它的维护者被迫用"删代码"来应对 AI 生成的噪音时,这是一个信号:我们需要认真思考 AI 工具的使用边界和责任归属。

AI 不只是在帮我们写代码。它也在帮我们制造问题。

如果你在日常开发中需要在多个 AI 模型之间切换对比,推荐试试 OfoxAI(ofox.ai)— 一个账号接入 Claude、GPT、Gemini 等主流模型,省去多平台来回跳转的麻烦。