日期范围
33
全部讨论数
其它重要分析 success作者:Ziyang Men2026/09/01 08:462 封邮件

[PATCH v3 0/4] selftests: shared lib.bpf.mk for building BPF progs and skeletons

本系列把 selftests/bpf、selftests/sched_ext、selftests/hid 中重复的 libbpf/bpftool/vmlinux.h/skeleton 构建规则抽到共享片段 tools/testing/selftests/lib.bpf.mk,hid 与 sched_ext 的 Makefile 各从约 150 行缩到约 30 行,并新增 selftests/cgroup/test_memcg_stat_cross_cpu,用 BPF kfunc 真正校验 memcg flush 后跨 CPU 统计与文件读数一致,弥补了旧 bpf/cgroup_iter_mem...

lore
Bugfix重要分析 success作者:Andrea Righi2026/09/01 06:372 封邮件

[PATCH sched_ext/for-7.3-fixes] sched_ext: Serialize cgroup knob updates

并发写 cgroup knob(weight/idle/bandwidth)时,核心调度器在自己的锁内更新 tg,但 sched_ext 通知要等锁释放后才异步进行,导致两次并发的通知乱序完成,core/BPF/sched_ext.cache 三者值不一致。补丁在每个 task_group 上加一把 knob_mutex,把核心调度器更新和 sched_ext 通知绑成原子事务。维护者 Tejun Heo 在回信中倾向 Michal Koutný 的另一种修法(把 fair 锁直接提升到 core 写 handler),所以这版很可能被替代。

lore
Bugfix重要分析 success作者:Michal Blaszczyk2026/09/01 06:361 封邮件

[PATCH v3] sched: Lift cgroup update locking to core to prevent CFS/SCX divergence

作者把 fair.c 中的 shares_mutex 抬到 kernel/sched/core.c,拆出 _locked 版本,让 cpu.shares / cpu.weight / cpu.idle / cpu.max 等写路径在 cpu_weight_mutex / cpu_max_mutex 保护下同时串行化 CFS 与 SCX 回调,避免并发写造成 tg->shares 与 tg->scx.weight 互不相等的 bug。Tejun Heo 已 Acked 并请 Peter 接收。

lore
Bugfix分析 success作者:Tao Cui2026/09/01 05:596 封邮件

[PATCH v3 0/2] sched_ext: pass the initial cpu.idle state in scx_cgroup_init_args

这个 v3 两件套修复了 scx_cgroup_init_args 漏传 cgroup 初始 cpu.idle 状态的 bug:1/2 在结构体里新增 sched_idle 字段并在四个填充点补齐赋值,已带 Fixes tag 进入 for-7.3-fixes;2/2 把容易与 CPU idle 混淆的 tg->scx.idle 字段重命名为 tg->scx.sched_idle,作为独立 cleanup 进入 for-7.4。Andrea给了 Reviewed-by,Tejun 直接接收,整体改动小但语义正确。

lore
Bugfix分析 success作者:David Carlier2026/09/01 05:522 封邮件

[PATCH] tools/sched_ext: Extend the prolog migration probe to cid-form schedulers

David Carlier 提交单 PATCH,为 sched_ext 工具头文件中的 prolog 迁移探测补上 cid-form 调度器的入口 bpf_scx_reg_cid(),并把默认标志 __scx_prolog_disables_migration 由 true 翻为 false,使未挂 probe 的 loader 落到注释声明的 safe 方向。Tejun Heo 回复指出默认值翻转已在 scx 仓库以 888a907d84b5 合入,要求把后续改动走 scx 仓库流程而非 kernel 镜像。

lore
Bugfix重要分析 success作者:Tejun Heo2026/09/01 05:062 封邮件

[GIT PULL] sched_ext: Fixes for v7.3-rc1

Tejun Heo 在 v7.3-rc1 前发出 sched_ext fixes pull request:修复 dispatch queue move 与任务退出/切换 sub-scheduler 之间的 race,放开 ops.cgroup_set_bandwidth() 的 sleepable 限制并新增 capability 标记,同步 scx tooling 头,修正示例调度器的 timer re-arm 失败与 cgroup migration 时 vtime 信用丢失,补全 finish_dispatch() kernel-doc 与 sched-ext.rst 文档。pr-tr...

lore
Bugfix分析 success作者:luoliang2026/09/01 01:314 封邮件

[PATCH] sched_ext: Fix missing @slice and @vtime descriptions in finish_dispatch() kernel-doc

Liang Luo 提交一个 2 行的 kernel-doc 补丁,给 finish_dispatch() 新增的 @slice 和 @vtime 参数补上描述,解决 scripts/kernel-doc 报出的两条 "function parameter not described" 警告。文案与 dispatch_to_local_dsq() 保持一致,函数体未动。Sashiko 自动评审基于旧树误报 "Excess function parameter",作者用本地 kernel-doc 复测证明警告已清零。Tejun Heo 已 applied 至 sched_ext/for-7.3-...

lore
Bugfix分析 success作者:Wanwu Li2026/09/01 00:533 封邮件

[PATCH] sched_ext: Fix several comment issues

Wanwu Li 提交一个纯注释 patch,把 sched_ext 里四处指向错误或拼错的函数名改为 __setscheduler_class()、bpf_iter_scx_dsq_new() 和 set_next_task_scx()。Zhan Xusheng 通过全树 grep 双向验证后给出 Reviewed-by,并指出 changelog 只列了 3 个重命名而 diff 实际改了 4 处。Tejun Heo 在把第一处注释块重新折行至 80 列内后,将补丁合入 sched_ext/for-7.3-fixes。

lore
Bugfix重要分析 success作者:Wanwu Li2026/09/01 00:535 封邮件

[PATCH] sched_ext: Fix timer pinning and return value in scx_central

Wanwu Li 一次性提交 3 个 patch,修复 tools/sched_ext 下 scx_central、scx_qmap、scx_flatcg 三处 bug:前两者补全 bpf_timer_start() 的返回值检查并让 PIN 标志跟随 timer_pinned,后者把机械迁移到 time_delta() 丢掉的 vtime 有符号偏移用 (s64) 减法恢复。Tejun Heo 已 Applied to sched_ext/for-7.3-fixes,并对 scx_central 描述中的 Fixes 归属做了微调(指向 start_central_timer() 而非 ce...

lore
其它重要分析 success作者:Tao Cui2026/08/25 17:285 封邮件

[PATCH] sched_ext: Allow ops.cgroup_set_weight/idle() to be sleepable

Tao Cui 提议将 ops.cgroup_set_weight() 与 ops.cgroup_set_idle() 加入 sched_ext 的 sleepable allow-list,使 BPF 调度器可以按需分配 DSQ 等资源。补丁同时新增两个 SCX_COMPAT_MARKER 并更新注释。Sashiko AI 与 Andrea Righi 均指出并发 cgroup 写入存在 core / BPF 状态失序的 high severity 竞态,Andrea 暗示将先发 race fix,本补丁宜在 race 修复后再合入。

lore
Bugfix重要分析 success作者:Tao Cui2026/08/25 10:273 封邮件

[PATCH v2] sched_ext: pass the initial cpu.idle state in scx_cgroup_init_args

Tao Cui 的 v2 补丁在 scx_cgroup_init_args 中新增 idle 字段,并补齐四处构造 args 的位置,使 BPF 调度器在 init 阶段即可看到 cgroup 的初始 idle 状态。Andrea Righi 建议补 Fixes tag 并给出 Reviewed-by;Tejun Heo 指出 idle 在 sched_ext 中专指 CPU idle,要求 v3 把字段改名为 sched_idle 并同步重命名 tg->scx.idle,作者已确认照办。

lore
其它重要分析 success作者:Tao Cui2026/08/25 01:281 封邮件

[PATCH v4] docs/sched_ext: document that cgroup CPU knobs are scheduler-dependent

Tao Cui 在 v4 里给 sched-ext.rst 新增 Scheduler-Dependent Knobs 小节,说明 cpu.max、cpu.weight、cpu.idle 等 cgroup v2 CPU 控件在 sched_ext 下是否生效取决于加载的 BPF 调度器。Andrea Righi 提出措辞建议后作者重写描述,区分了 ops.cgroup_init() 与 ops.cgroup_set_*() 的不同职责,并指出 per-task nice(ops.set_weight())与 cgroup cpu.weight.nice 是两条独立路径。Tejun Heo 已将该...

lore
Bugfix分析 success作者:Cheng-Yang Chou2026/08/25 00:021 封邮件

[PATCH sched_ext/for-7.4] tools/sched_ext: Skip scx_lib_init_probe() without CONFIG_FUNCTION_TRACER

sched_ext 用户态调度器默认通过 fentry 自动挂载 scx_lib_init_probe;当内核未开启 CONFIG_FUNCTION_TRACER 时,fentry 无法 attach,而 skel__attach() 是 all-or-nothing 语义,会把整套调度器一起拖垮。本补丁在 SCX_OPS_LOAD() 中用 /proc/sys/kernel/ftrace_enabled 的存在性作为运行时代理,不可用时关闭该探针的 autoload,并在 attach 后的 struct_ops 关联循环里放过 autoload 已关闭的程序,从而让 CONFIG_FUNC...

lore
每页
上一页2 / 2下一页