日期范围
113
全部讨论数
Bugfix重要分析 success作者:Nicholas Dudar2026/07/12 07:3913 封邮件

[PATCH bpf-next v3 0/2] bpf: require an owned cpumask for bpf_cpumask_populate()

修复 BPF verifier 类型检查漏洞:bpf_cpumask_populate() 目标类型从 struct cpumask * 改成 struct bpf_cpumask *,阻止借用只读 cpumask 被当成可写目标。系列含 1 个 kernel 修复 patch 和 1 个 selftest patch。补丁已被 Kumar 合入 bpf-next,并获 Tejun Heo 的 Acked-by。

lore
Bugfix重要分析 success作者:Kuba Piecuch2026/07/11 00:483 封邮件

[PATCH sched_ext/for-7.3] sched_ext: skip ops.set_weight() for disabled tasks

这个单补丁修复 sched_ext 中 task 离开 SCX 后仍调用 ops.set_weight() 的回调顺序问题。核心改动是在 reweight_task_scx() 中跳过非 SCX_TASK_ENABLED 的 task,避免 BPF scheduler 已经在 ops.disable() 中忘记 task 后又收到权重更新。Tejun Heo 已将其应用到 sched_ext/for-7.2-fixes,并添加 Fixes 与 stable Cc,确认这是 v6.19+ 的回归修复。

lore
其它分析 success作者:Pat Somaru2026/07/11 00:364 封邮件

[PATCH v2] sched_ext: Add tracepoint for scheduler exit

Pat Somaru 给 sched_ext 的 scx_claim_exit() 新增一个 sched_ext_exit tracepoint,让 BPF 程序可动态观察调度器退出时的状态。v2 暴露 name/level/kind,但 Tejun 指出 sibling cgroup 同程序实例下会撞名;v3 补上 sub_cgroup_id 和 cgrp_path,并由 Tejun Applied 到 sched_ext/for-7.3。整体属于小特性新增,非 RFC/Bugfix。

lore
Bugfix重要分析 success作者:Andrea Righi2026/07/10 06:494 封邮件

[PATCH sched_ext/for-7.3] sched_ext: Keep rq tracking accurate in the consume path

修复 consume_remote_task() 中 scx_locked_rq() 运行队列锁追踪变为 stale 的问题。旧代码先释放 this_rq 再锁 src_rq,导致 switch_rq_lock 的 guard 不匹配、追踪无法更新。新方案全程保持 this_rq 锁定,通过 switch_rq_lock() 连续切换,使追踪从头到尾准确。Tejun Heo 已合入 sched_ext/for-7.3。

lore
其它重要分析 success作者:Tejun Heo2026/07/10 06:2883 封邮件

[PATCHSET v4 sched_ext/for-7.3] sched_ext: Capability-based CPU delegation for sub-schedulers

把 sched_ext 子调度器的 CPU 访问从 dispatch-only 的程序化委托,扩展为覆盖 enqueue/occupancy/kick/preempt/idle 的全路径能力(cap)化委托。每 (sched, cid) 持 SCX_CAP_ENQ_IMMED/ENQ/PREEMPT 三档,按 LLC 对齐 shard 切分 cmask 状态并维护 per-cpu effective-cap 单读热路径,缺失 cap 走 reject DSQ + SCX_TASK_REENQ_CAP 反弹回 BPF 重排。整 40 patch 同时修掉 ops->priv 提前发布、pshar...

lore
Bugfix分析 success作者:luoliang2026/07/10 05:403 封邮件

[PATCH] selftests/sched_ext: Fix bpf_link leak on early return in prog_run

Liang Luo 发现 sched_ext selftest 的 prog_run 用例在断言失败时会跳过 bpf_link__destroy,导致 BPF 调度器不卸载、后续测试 attach 失败。改用统一 goto out 清理模式后,资源回收与返回路径解耦,Tejun 已合入 sched_ext/for-7.3。

lore
Bugfix分析 success作者:luoliang2026/07/10 05:403 封邮件

[PATCH] sched_ext: Fix typo in scx_bpf_dsq_insert() comment

Liang Luo 提交的 1 行注释修复 patch,把 kernel/sched/ext/ext.c 中 scx_bpf_dsq_insert() kfunc 注释里误写的参数名 @dsp_id 改回与函数签名一致的 @dsq_id。Andrea Righi 当日给出 Acked-by,Tejun Heo 当晚即将其合入 sched_ext/for-7.3 分支,无功能行为变更。

lore
其它重要分析 success作者:Tejun Heo2026/07/09 03:0916 封邮件

[PATCHSET v3 sched_ext/for-7.3] sched_ext: Capability-based CPU delegation for sub-schedulers

Tejun Heo 的 v3 patchset 把 sched_ext sub-scheduler 的能力模型从 dispatch 路径扩展到 enqueue/kick/occupancy/idle 全链路:引入 SCX_CAP_ENQ_IMMED/ENQ/PREEMPT 三档能力、按拓扑对齐的 per-shard 锁、per-cpu 有效能力快照(doorbell 在 balance() 顶部折叠),能力不足的任务走 reject DSQ 重入 enqueue;附带若干准备性修复(ops->priv 过早发布 UAF、cmask_subset 语义不一致、kobject sysfs 时序等)...

lore
Bugfix重要分析 success作者:Andrea Righi2026/07/09 02:364 封邮件

[PATCHSET v3 sched_ext/for-7.2-fixes] sched_ext: Fix finite-slice ticks on nohz_full

Andrea Righi 提交 v3 修复了 sched_ext 在 nohz_full CPU 上 finite-slice 任务切换时 tick 依赖可能被错误禁用的问题。核心做法是在 set_next_task_scx() 中把 infinite/finite 路径拆开、对 finite 任务无条件声明 tick 依赖,并在 scx_can_stop_tick() 中忽略 nr_running 为 0 时的过期状态。配套新增的 kselftest 验证 infinite→finite 与 finite→finite 跨 idle 切换下 tick 投递正确,最终被 Tejun Heo 合...

lore
Bugfix重要分析 success作者:Andrea Righi2026/07/09 02:362 封邮件

[PATCH v3 sched_ext/for-7.2-fixes] sched_ext: Preserve rq tracking across local DSQ dispatch

Andrea Righi 的 v3 patch 通过新增 switch_rq_lock() helper,把 sched_ext 中所有 rq 锁的切换与 scx_locked_rq() 的跟踪更新绑定为原子操作,避免嵌套 SCX_CALL_OP 路径上 update_locked_rq() 恢复一把已不持有的 rq 触发 lockdep 警告。该 patch 同时覆盖 move_remote_task_to_local_dsq、dispatch_to_local_dsq 和 scx_dsq_move 三处切锁点,被 Tejun Heo 接收进 sched_ext/for-7.2-fixes ...

lore
每页
上一页11 / 12下一页