今日重点:✍️ 写作——Pasha Tatashin 给 linux-mm 等列表投了 46 帖的 Orphaned Virtual Machines RFC。这封 cover letter 是「大型 RFC 怎么写」的教科书: 先降预期、再明目标、再分 workstream 列清单。今天我们拆它的三个写作技巧,并给出仿写模板。

📝 技巧一:先降预期,再谈测试

/ section
This RFC series is a PoC intended to showcase e2e working OrphanVMs uninterrupted continuing execution on preserved physical CPUs across a host kernel live update, prepared for the LPC'26 presentation at the KVM Microconf [1]. ... It was tested on Intel Xeon Granite Rapids-AP, AMD EPYC Turin, and ARM Neoverse V2, as well as in emulation on QEMU and Intel Simics. However, it is still very early WIP, and is not anywhere near being production ready.

出处:Pasha Tatashin,[RFC PATCH 00/46] Orphaned Virtual Machines,linux-mm,09-21 03:36 北京。 原文

PoC / WIP 前置 第一句就点明这是 Proof-of-Concept,最后一句再补 'very early WIP' 和 'not anywhere near production ready'。读者不会把它当可合入代码。
测试范围 + 限定语 先列 Intel / AMD / ARM 真机和 QEMU / Simics 仿真,建立可信度;马上用 However 转折,把范围限定在 '能跑通 e2e' 而非 '能上线'。
会议背景收尾 'prepared for the LPC'26 presentation' 说明这封 RFC 的上下文:为会议讨论而准备,不是为合并而准备。

📝 技巧二:用 While 做让步,用 goal 定目标

/ column
While this RFC bundles the e2e stack, it is NOT intended to be merged as a single series, the goal of this series is to have a discussion about the technical layers, and the challenges that need to be solved in order to have full Caretaker support within the kernel.

这句话是 RFC 投稿信的核心句式。While A, B is NOT intended to ..., the goal is to ... 先承认「这看起来是个大 bundle」,再否定「不是来合并的」,最后抛出真实目标「是为了讨论技术层和挑战」。 三个动作一句话完成,避免维护者误判。

★ 仿写模板

适用于你自己的大型 RFC / 设计提案

模板 While this RFC bundles [范围], it is NOT intended to be merged as [形式]. The goal is to have a discussion about [目标] and the challenges that need to be solved in order to [愿景].
仿写示范 While this RFC bundles the full camera pipeline refactor, it is NOT intended to be merged as a single series. The goal is to have a discussion about the V4L2 subdevice lifecycle and the challenges that need to be solved in order to have unified power management across sensor, ISP and bridge drivers.

📝 技巧三:用数字 workstream 组织大系列

/ column
The series is structured into at least 8 workstreams that will be discussed and worked on separately: 1. Workstream 1: Preparation Patches (Patches 01-06) Architecture-neutral and arch-specific preparatory cleanups ... 2. Workstream 2: In-Kernel In-RAM vCPU State Preservation via LUO (Patches 07-10) Allows performing suspend/resume-type preservation across kexec without carrying the vCPU internal state in the VMM in userspace ...

46 帖如果直接列标题,读者会疯。作者把它压缩成 8 个 workstream,每个 workstream 给三样东西: 名字 + 帖号范围 + 一句话定义。维护者一眼就能定位自己该看哪一段。

★ 仿写模板

适用于你的多帖 patch series

结构 The series is structured into N workstreams: 1) 名字(Patches xx-xx)— 一句话做什么;2) ...
仿写示范 The series is structured into 3 workstreams: 1) Workstream 1: DT bindings and sensor core support (Patches 01-04) — add YAML bindings and basic v4l2_subdev registration; 2) Workstream 2: Format and pad configuration (Patches 05-08) — implement media bus format enumeration and routing; 3) Workstream 3: Power and streaming hooks (Patches 09-12) — add runtime PM and start/stop streaming callbacks.

✨ 辅助彩蛋:标题解析

/ column

★ [RFC PATCH 00/46] Orphaned Virtual Machines

linux-mm 跨投多列表

RFC Request for Comments,请求评论。说明作者要的是反馈,不是合并。
PATCH 00/46 00 是系列封面信(cover letter),46 是总帖数。看到 00 就知道正文在后面 01-46。
Orphaned Virtual Machines 孤儿虚拟机——hypervisor 内核换了,VM 还活在被保留的物理 CPU 上,没人(没原 hypervisor)管它了。

✍️ 今日练习

/ column
✍️ 假设你要为一个 12 帖的 'DMA-buf importer P2P routing' 系列写 cover letter。请用今天的模板写一句话:先承认它是个大 bundle,再说明不是为合并,再点明目标是讨论 importer 接口与路由语义。
💡 显示答案
While this RFC bundles the full DMA-buf importer P2P routing stack, it is NOT intended to be merged as a single series. The goal is to have a discussion about the importer-side routing query ABI and the challenges that need to be solved in order to let GPU, RDMA and NVMe stacks share a consistent P2P path model.
📖 原文:While this RFC bundles the e2e stack, it is NOT intended to be merged as a single series, the goal of this series is to have a discussion about the technical layers, and the challenges that need to be solved in order to have full Caretaker support within the kernel.
📎 原文引用

每日一句:A good RFC cover letter doesn't sell the code — it sells the conversation.

仿写示范