LWN Weekly Edition - June 4, 2026
📰 本期概览
LWN Weekly Edition - June 4, 2026
本期 LWN 周刊内容丰富,涵盖社区治理、内核架构演进与开源生态安全三大主题。头条关注了 MeshCore 网状网络项目的商标纠纷——一位早期推广者试图将项目商标据为己有,引发社区震动。内核方面,2026 年 Linux 存储/文件系统/内存管理/BPF 峰会(LSFMM+BPF)贡献了五篇深度报道,从新文件系统准入政策、struct page 内存描述符分离、到 BPF 如何适应 AI 编程代理时代,干货满满。此外,x32 ABI 的去留再度被提上议程,以及一项将内核加密子系统拆分为可加载模块以应对 FIPS 认证困境的补丁方案也值得关注。
📊 共 11 篇文章 · 评论总数 124 · 评论最多:「Reconsidering x32 — again」(32 posted)
🔥 文章详情
📌 Front Page / 社区
MeshCore 是一个 2025 年 1 月启动的开源 LoRa 网状网络项目(MIT 许可),凭借高效的分布式路由协议迅速积累了全球超过 4 万用户。然而 2026 年初,一位项目早期推广者突然试图注册 MeshCore 商标,引发社区强烈反对。文章详细梳理了 MeshCore 与 Meshtastic、Reticulum 等类似项目的技术差异(真正的分布式路由 vs 八卦协议),以及此次商标争端的来龙去脉,折射出开源项目在品牌保护方面的普遍脆弱性。
x32 ABI 旨在结合 x86-64 的新特性(更多寄存器、更好的系统调用支持)与 32 位地址/数据类型的低缓存占用优势。然而自 2011 年开发以来,x32 从未获得广泛采用——发行版支持寥寥,工具链适配不完善。社区再次讨论是否该移除这一"不受喜爱却难以去除"的 ABI。文章回顾了 2013 年基准测试表现及后续多轮讨论,核心矛盾在于:确实有少量用户依赖它获得性能提升,但维护成本对内核开发者而言是持续的负担。本期评论最热门的文章。
来自 OSSNA 2026 的报道。OpenJS 基金会执行总监 Robin Bender Ginn 讨论了开源维护者面临的共同困境:项目用户从数千暴增到数百万,但帮手却没有跟上。维护者压力巨大、不愿放手,项目质量和安全随之下降。演讲强调了"传递火炬"的时机判断,以及用户和企业在开源安全中应承担的责任——JavaScript 生态尤为典型,98% 的网站使用 JS,Node.js 去年下载量超 20 亿次。
同样来自 OSSNA 2026。Datadog 开源项目办公室的 Damián Vicino 分享了他尝试从 20 多个包管理器中提取统一元数据(名称、版本、许可证、依赖)的痛苦经历。这些元数据对漏洞扫描和 SBOM(软件物料清单)至关重要,但各包管理器的元数据格式千差万别、表达方式各不相同,堪称"一座杂乱的迷宫"。文章揭示了软件供应链安全中一个被低估的基础设施问题。
🐧 Kernel — LSFMM+BPF Summit 2026 专题
Amir Goldstein 在文件系统分会场提出了一份新文件系统准入文档草案。内核中已存在大量无人维护、无法测试的文件系统,给 VFS 层开发者(如推进 folio 迁移和新挂载 API)造成沉重负担。文档为新文件系统提供了准入清单——包括必须回答"为什么不用 FUSE?"、需要添加 fstests 等。同一周提交的 VMUFAT 和 FTRFS 两个新文件系统恰好成为案例。讨论热度很高,社区对如何平衡开放性与维护成本争议激烈。
struct page 自 1995 年内核 1.3.50 以来一直是内存管理的核心结构,但它"必须描述系统中任何类型的页面"导致了严重的空间浪费和复杂性——一个 PMD 大小的 folio 只需一个 folio 结构即可描述,却需要 512 个 page 结构。新的内存描述符设计目标是仅 8 字节,包含指向类型特定结构(如 struct folio)的指针。本次峰会讨论了这一大规模迁移的下一步规划,这是内核内存管理领域多年来最重要的结构性变革之一。
优化编译器可能移除未使用的函数参数、拆解结构体等,导致函数实际签名与源码定义不同。这给内核 tracing 和 BPF 子系统带来了麻烦——它们需要知道参数的真实位置。Alan Maguire 和 Yonghong Song 展示了三种编译器变换函数签名的实际案例(参数移除、结构体字段提取等),并介绍了在 BTF 调试信息中记录变换后签名的工作进展,以支持对这类函数的正确追踪。
FUSE 维护者 Miklos Szeredi 希望为扩展属性(xattr)建立通用的内核缓存基础设施,而非各文件系统各造一套。文章梳理了内核中已有的四种 xattr 缓存实现:tmpfs/pidfs/kernfs 使用的 simple_xattr(不可缩减的哈希表)、NFS 的 nfs4_xattr_cache(可缩减)、ext2/ext4 用于去重的 mb_cache,以及 ext4 存储大 xattr 的 EA inode。Ted Ts'o 提醒 EA inode 并非缓存设计,讨论聚焦于如何设计一个 FUSE 可用且可被其他文件系统共享的通用方案。
Alexei Starovoitov 带来了一场"顿悟的呐喊"——BPF 生态如何适应 LLM 编程代理时代。他指出 AI 编程代理依赖紧密的反馈循环(写代码→看错误→修复),但 BPF 生态的反馈循环很差:需要启动虚拟机测试,验证器错误信息对人类都难以理解、更别说 AI。他提出一系列改进方向。后续讨论还涉及编程代理使用 bpftrace 的问题,以及 BPF 子系统当前面临的补丁审查洪流。一个非常前瞻性的议题,引发热议。
🐧 Kernel — 其他
FIPS 认证在二进制级别授予,验证流程通常需要 12-18 个月。当前内核的加密子系统大部分直接编译进主内核镜像,意味着哪怕是一个无关的调度器修复或驱动更新,都会产生新的二进制文件、使现有认证失效。作者提出了一个补丁系列,将加密子系统解耦为独立的可加载模块,使得经过认证的加密模块可以跨多个内核版本复用,大幅减少重复认证延迟。这对需要 FIPS 合规的企业和发行版意义重大。
💬 热点讨论
以下为评论数 ≥ 15 的文章,按评论数降序排列:
评论