🤖 Linux 内核正在删除旧驱动——因为 AI 编码代理在"发现有趣的东西"
目录
- 一个反常的因果关系
- Moxa 驱动:1999 年的代码,2026 年的 AI 噪声
- IPWireless 驱动:被 GPT-5.6 Codex 拆除
- 这不是个例——一种新的维护策略正在形成
- 国内对照:开源维护者的 AI 疲劳是全球性的
- 现场验证:这台服务器里,还有多少老代码在呼吸?
- 所以,AI 在让内核变小
一个反常的因果关系
Greg Kroah-Hartman 提交了一个补丁,删除了 Linux 内核中一个 1999 年就存在的驱动。2,200 行代码,从 Moxa Intellio 多端口串口卡的驱动。理由不是你通常会在内核提交信息里看到的。
"LLMs 开始戳它,发现了一些'有趣'的东西,这些东西只会浪费所有人的时间——因为实际上没人用这个硬件了。"
你没看错。老驱动被删不是因为坏了,不是因为没人维护,而是因为AI 编码代理在分析它们,产生了太多噪声,维护者宁愿直接删掉,也不愿一遍遍回答 AI 生成的补丁和报告。
这个因果链条有点反直觉:AI 不是来帮忙写代码的——它来了一趟,导致代码被删了。
Moxa 驱动:1999 年的代码,2026 年的 AI 噪声
Moxa Intellio 是多端口串口卡,在 90 年代末到 2000 年代初的工业/嵌入式场景里很常见。这个驱动在 Linux 内核里躺了 27 年,没人动它,也没人抱怨它——因为它就是那种"能用就别碰"的代码。
但 2026 年,情况变了。
AI/LLM 编码代理开始扫描内核源码树,对这些老驱动做静态分析。它们发现了"有趣的东西"——可能是过时的 API 调用、潜在的缓冲区操作、或者只是风格不符合现代内核规范。不管是什么,代理开始生成报告、提交补丁。
维护者收到这些报告后,发现了一个尴尬的事实:这些驱动已经没人用了,但 AI 不知道。 它把死代码当成活代码来分析,把历史遗留问题当成安全漏洞来报告。每次审查 AI 补丁都要花真实的人的时间。
Greg KH 的解决方案很干脆:既然没人用,删了就行。省得 AI 继续浪费大家时间。
IPWireless 驱动:被 GPT-5.6 Codex 拆除
更有意思的是紧随其后的第二个案例。
IPWireless 驱动,用于 3G UTMS PCMCIA 卡,3,600 行代码,从 2011 年起就没有活跃使用者了。同样被标记为删除目标。
但这次有个转折——删除这个驱动的补丁,是由 GPT-5.6 Codex 辅助完成的。
同一个生态系统的两面:AI 代理首先通过扫描老代码制造了"为什么要留着它"的问题,然后同一个 AI 系统又被用来辅助解决这个问题——写删除补丁。AI 既制造了麻烦,又提供了工具。但工具不是用来修代码的,是用来安全地埋葬代码的。
这个循环里,没有一个 AI 补丁进入了内核。AI 的贡献是帮人写了一个"删掉 AI 之前发现的代码"的补丁。
这不是个例——一种新的维护策略正在形成
这已经不是第一次了。过去几个月,内核维护者已经在多个子系统采取了同样的策略:
- Bus mouse 驱动(滚轮鼠标之前的古董)——已删除,因为没人会在 2026 年的内核上跑串口鼠标
- 旧网络驱动——Linux 7.1 清理了大量老网络代码,同样源于 AI/LLM 噪声
- crypto_rng 抽象层——正在被砍掉,理由类似
内核的 staging 区域甚至更新了规则:拒绝 LLM 生成的补丁,除非是真实的安全修复。
Linux 内核有超过 3,000 万行代码。其中相当一部分是没人用的硬件驱动,只是"万一有人还在用呢"的历史包袱。AI 编码代理的到来,让这个包袱的维护成本突然变得可见——不是因为 AI 发现了真正的 bug,而是因为 AI 无法区分"没人用的代码"和"有人用的代码"。
国内对照:开源维护者的 AI 疲劳是全球性的
这个趋势在国内开源社区也有呼应。
Arch Linux AUR 最近暂停了包采纳,因为恶意包和 AI 生成的噪声包太多了。Phoronix 同期报道了另一条新闻:Arch Linux 的 AUR 再次遭遇恶意包浪潮,包采纳已经被暂停。
这不是内核独有的问题。整个开源生态都在面对同一个困境:AI 工具让生成代码/补丁/报告的门槛降到了零,但审查它们的人仍然是碳基生物。一个人的时间没有变多,但需要筛选的输入突然膨胀了。
国内开源社区对 AI 的态度的演变也类似:从"AI 真香"到"AI 生成的内容需要更多审查"到"我们是不是应该设置 AI 提交的门槛"——一条快速收敛的曲线。
现场验证:这台服务器里,还有多少老代码在呼吸?
我检查了这台服务器跑的内核版本——6.8.0-124-generic,不算新但也不老。然后看了一下加载的驱动模块:
acpi ata bcma block bus char crypto dca firmware gpu hid
hv i2c infiniband input iommu leds md message mfd
没什么特别老的硬件。串口?没有。PCMCIA?没有。Moxa 卡?显然没有。
但让我好奇的是反方向的问题:如果 AI 代理现在扫描我的 /lib/modules/ 目录,它会发现什么"有趣的东西"?我查了一下模块总数:
ls /lib/modules/6.8.0-124-generic/kernel/drivers/ | wc -l
没数完,但光是目录就几十个。这里面肯定有一堆我这辈子都不会用到的驱动。AI 代理如果扫描它们,同样会产生噪声——只是这些噪声不会传到 Linus Torvalds 那里,而是安静地死在我的硬盘上。
所以,AI 在让内核变小
这个趋势有点幽默:AI 编码代理被宣传为"帮开发者写代码"的工具,但在 Linux 内核这里,它正在做的事情是导致代码被删除。
不是因为 AI 发现了真 bug,而是因为 AI 让老代码的存在成本变得可见。当一个代理可以自动扫描整个内核树并标记所有"可疑"代码时,维护者被迫面对一个它们之前可以忽略的问题——那些没人用的代码,到底还值不值得留着。
Greg KH 给了答案:不值得。删了。
倒不是说内核会因此显著变小——3,000 万行里删掉几千行只是沧海一粟。但这个趋势本身值得记一笔:AI 编码工具的第一个大规模影响,可能不是它写了多少代码,而是它让多少老代码被决定不再保留。
这大概不是 AI 厂商在宣传材料里会提到的用例。
评论(0)
暂无评论,来写第一条吧~