sched-ext discussion
[PATCH] sched_ext: Fix stale @cgroup_id in sched_ext_ops kernel-doc
LLM 分析
sched_ext: Fix stale @cgroup_id in sched_ext_ops kernel-doc
系列基线信息
| 字段 | 内容 |
|---|---|
| 标题 | [PATCH] sched_ext: Fix stale @cgroup_id in sched_ext_ops kernel-doc |
| 作者 | Liang Luo (luoliang@kylinos.cn) |
| 版本 | v1(单 patch) |
| 规模 | 1 file, 1 insertion, 1 deletion |
| Message-ID | 20260731023004.1062947-1-luoliang@kylinos.cn |
| 来源 | sched-ext |
明确目的
sched_ext_ops 结构体中的 sub_cgroup_id 成员在之前的重构中被重命名(从 cgroup_id 改为 sub_cgroup_id),但对应的 kernel-doc 注释中 @cgroup_id 没有同步更新,导致:
- 内核文档系统报告
sub_cgroup_id成员未描述; - 同时报告
cgroup_id描述多余。
本 patch 将 @cgroup_id 更新为 @sub_cgroup_id,消除两处 kernel-doc 警告。
遍历代码
改动仅涉及 kernel/sched/ext/internal.h 第 809 行附近:
/**
- * @cgroup_id: When >1, attach the scheduler as a sub-scheduler on the
+ * @sub_cgroup_id: When >1, attach the scheduler as a sub-scheduler on the
* specified cgroup.
*/
u64 sub_cgroup_id;
@cgroup_id→@sub_cgroup_id:使 kernel-doc 参数名与结构体成员名一致;- 描述语义不变,仅修正名称引用。
ASCII 流程图
+---------------------------+ rename commit +-----------------------------+
| struct sched_ext_ops | ==================> | struct sched_ext_ops |
| | | |
| u64 cgroup_id; | (成员已重命名) | u64 sub_cgroup_id; |
| @cgroup_id: ... | (注释未同步) | @cgroup_id: ... <-- 漏改 |
+---------------------------+ +-----------------------------+
|
| 本 patch
v
+-----------------------------+
| @sub_cgroup_id: ... ✓ |
+-----------------------------+
概念类比
就像一本通讯录里,某人已经改了名字(从"老王"改成了"王总"),但通讯录里的备注标签还写着"老王"。别人按备注找"老王"找不到,又发现"王总"没有备注——两边都报错。本 patch 就是把备注标签同步更新成"王总"。
Highlight 突出问题
- 根因追踪:
cgroup_id被重命名为sub_cgroup_id的那次提交遗漏了 kernel-doc 同步,说明该提交缺少make htmldocs或scripts/kernel-doc -none的检查; - CI 覆盖:如果内核 CI 在每次提交前都跑 kernel-doc 检查,这类问题不会进入主线,后续可考虑在
sched_ext子系统加入文档构建检查; - Tejun 的额外处理:maintainer 在合入时额外做了注释换行重排(rewrap to 80 columns),说明原 patch 的注释行可能超长,提交者后续可注意 80 列限制。
版本演进
仅 v1,无版本迭代。
与其他相关 patch 系列的关联
- 本 patch 依赖的上下文是此前将
cgroup_id重命名为sub_cgroup_id的那个提交,属于其遗漏修复。
一句话总结
将 sched_ext_ops kernel-doc 中过时的 @cgroup_id 同步为 @sub_cgroup_id,消除两处文档警告。