日期范围
29
全部讨论数
Bugfix重要分析 failed作者:Hemanth Selam2026/09/07 14:503 封邮件

[PATCH 0/2] sched: fix typos and repeated words in comments

sched: fix typos and repeated words in comments。Claude 分析失败,当前使用规则 fallback:该讨论被归为 bugfix,共 3 封邮件。

lore
Bugfix重要分析 failed作者:Tejun Heo2026/09/07 06:493 封邮件

[PATCH sched_ext/for-7.3-fixes] sched_ext: scx_qmap: Fix pending partition work handoff

sched_ext: scx_qmap: Fix pending partition work handoff。Claude 分析失败,当前使用规则 fallback:该讨论被归为 bugfix,共 3 封邮件。

lore
其它分析 success作者:Tianyi Chen2026/09/06 22:411 封邮件

[PATCH] selftests/sched_ext: Cover duplicate DSQ creation and ID reuse

Tianyi Chen 提交单封 PATCH,在 sched_ext 的 create_dsq selftest 中扩展 BPF 侧空 DSQ 生命周期循环:验证重复 create_dsq 返回 -EEXIST、原 DSQ 仍可访问、destroy 后 nr_queued 返回 -ENOENT、相同 ID 可复用,并在用户态校验 1024 次迭代全部完成。属于 selftest 增强(非 RFC、非 bugfix),按规则归类为 other。

lore
其它分析 success作者:Tianyi Chen2026/09/06 22:401 封邮件

[PATCH] selftests/sched_ext: Validate select_cpu_and mask constraints

本补丁把 sched_ext 自带的 allowed_cpus selftest 从“打印 BPF 程序返回的 CPU 号”升级为对 select_cpu_and 契约的硬断言。BPF 侧新增 custom_cpu 字段并在返回时校验 CPU 同时落在 mask 与 cpus_ptr 内;用户态覆盖空 mask、单点 mask、与亲性不交 mask 三档用例,并在跑完后恢复 runner 亲和性。单 patch 改动 2 个 selftest 文件,共 86 增 / 15 删,不动 kernel 侧实现。

lore
Bugfix分析 success作者:Tianyi Chen2026/09/06 22:161 封邮件

[PATCH] selftests/sched_ext: Fail interrupted test runs

selftests/sched_ext runner 此前收到 SIGINT/SIGTERM 后只停止循环,但退出码仍只反映失败数,导致被中断的 run 也会返回 0。patch 将 main 末尾的判定改为 failed > 0 || exit_req,使中断也被视为失败;同时保留 failed 计数只统计实际跑过的测试。作者用 GDB 验证了四种信号投递场景。

lore
Bugfix重要分析 success作者:Tianyi Chen2026/09/06 21:561 封邮件

[PATCH] selftests/sched_ext: Handle CPU hotplug write failures

selftests/sched_ext/hotplug.c 中 toggle_online_status() 只打印错误不返回错误码,导致 CPU 状态写入失败时测试无限挂死。patch 把函数改为返回 int,调用点通过 goto 跳出并在失败时清理 BPF 资源,同时把 status 默认值从 PASS 改为 FAIL,保证任何未走完的路径都被报告为失败。

lore
Bugfix重要分析 failed作者:Tejun Heo2026/09/06 06:5711 封邮件

[PATCHSET sched_ext/for-7.3-fixes] sched_ext: Fix keep-last for sub-scheduler tasks and two scx_qmap placement loops

sched_ext: Fix keep-last for sub-scheduler tasks and two scx_qmap placement loops。Claude 分析失败,当前使用规则 fallback:该讨论被归为 bugfix,共 11 封邮件。

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

[PATCHSET v13 sched_ext/for-7.4] sched: Make proxy execution compatible with sched_ext

Andrea Righi 发布的 18 patch 系列让 CONFIG_SCHED_PROXY_EXEC 与 CONFIG_SCHED_CLASS_EXT 可同时启用。新增 SCX_OPS_ENQ_BLOCKED 让 BPF 调度器显式接管被 mutex 阻塞的 donor;sched_ext 把 running/stopping、tick 带宽、curr 视角等从 rq->curr 改为 rq->donor。系列同时修复了 ops.running/stopping 配对错误、迁移禁用假性 WARN_ON、远端 DSQ 转移与 proxy 状态竞态等多个 correctness 问题,并新增...

lore
Bugfix重要分析 success作者:Wanwu Li2026/09/04 02:426 封邮件

[PATCH 0/2] sched_ext: two more context-safety fixes found in the NMI kfunc audit

本系列是 sashiko bot NMI-reject 审计的延伸工作,共两 patch:Patch 1 让 scx_locked_rq() 在 NMI 中返回 NULL,避免三个 "any" 类 kfunc 走错持锁路径;Patch 2 把 idle-search 临时 nodemask 由 preempt_disable() 改为 guard(irqsave)() 防止 IRQ 嵌套覆写。两处改动都在源头统一拦截而非分散守卫,已被 Tejun Heo 当日合入 sched_ext/for-7.4 分支。

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

[PATCH] sched_ext: Fix NULL sched deref in select_cpu_and sub-sched error path

该系列修复 sched_ext COMPAT kfunc 包装器在 sub-sched 错误路径上的 NULL 指针解引用:BPF_PROG_TYPE_SYSCALL 或 ops.enqueue/dispatch 上下文对已退出或 idle 任务调用 scx_bpf_select_cpu_and() / scx_bpf_dsq_insert_vtime() 时会 oops。三版迭代后改为在 RCU 下安全读取 p->scx.sched,读到就 scx_error(),读不到就静默拒绝;已被 Tejun Heo 应用到 sched_ext/for-7.3-fixes 并 backport 到 s...

lore
Bugfix重要分析 success作者:Wanwu Li2026/09/03 09:4613 封邮件

[PATCH] sched_ext: Reject NMI calls to lock-taking kfuncs

本系列把 in_nmi() 检查从 scx_bpf_kick_cpu() 推广到所有 NMI 可达、且会取 rq/dsq/pshard 锁的 sched_ext kfunc,通过新引入的 scx_kf_allowed_ctx() 宏在 NMI 中走无锁 scx_error() abort,避免 tracing BPF 程序把 any 分类 kfunc 变成整机 hard-lockup 的入口。v3 经三轮 review 后被 Tejun Heo 应用到 sched_ext/for-7.4。

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

[PATCH v2] sched_ext: don't deliver duplicate ops.cgroup_set_idle() for same value

scx_group_set_idle() 原先每次写入 cpu.idle 都无条件调用 BPF 的 cgroup_set_idle 回调,违反 transition 语义,导致 BPF scheduler 误判重复事件。本补丁在该函数中加入 tg->scx.idle != idle 的短路条件,与已有的 scx_group_set_weight() 路径对称。v2 仅修复了 v1 Link: tag 缺失 @linux.dev 的问题;Tejun Heo 已合入 sched_ext/for-7.3-fixes,并把 sched_idle 改回 idle 以匹配当前分支。

lore
Bugfix分析 success作者:Michal Blaszczyk2026/09/02 16:074 封邮件

[PATCH] sched_ext: Use atomic cpumask_clear_cpu in scx_idle_test_and_clear_cpu()

Michal Blaszczyk 提交单行 patch,把 scx_idle_test_and_clear_cpu() 里的 __cpumask_clear_cpu 替换为原子版本,试图消除 idle_smts 共享 mask 上的并发 lost update。Sashiko 与维护者 Andrea Righi 均指出修复不完整,因为 cpumask_andnot / cpumask_or 仍是整字非原子 RMW,且原设计本就是有意为之的 best-effort。最终作者决定撤回该 patch,建议改为更系统的方案,例如 per-CPU mask 或加锁。

lore
其它分析 success作者:Qiurong Fang2026/09/02 14:575 封邮件

[PATCH] sched_ext: Skip per-CPU data allocation for built-in DSQs

Qiurong Fang 提出 sched_ext 补丁,在 scx_init_dsq() 与 exit_dsq() 中对 built-in DSQ 跳过 pcpu 分配,把原本 O(nr_cpu_ids²) 的死内存释放掉。Zhan Xusheng 在 review 中指出浪费是二次方级别并给出 Reviewed-by;Tejun Heo 建议把字段重命名为 pcpu_user。v2 完成重命名与文案修订后被合入 sched_ext/for-7.4。

lore
Bugfix分析 success作者:Tao Cui2026/09/02 14:425 封邮件

[PATCH v3 0/2] sched_ext: document and enforce vtime ordering constraints

v3 系列由两片组成:1/2 在 ext.c 注释中显式写出 dsq_vtime 必须落在 2^63 窗口内的 rolling-cursor 约束;2/2 把 scx_flatcg 的 cgv_node_less() 由裸 < 改为 time_before(),避免 cvtime 回卷后早回卷的 cgroup 抢到 rbtree 头部、其余节点被卡死。v3 相对 v1/v2 删掉了原 kernel priq 比较器改动并把 Fixes tag 校准到 a4103eacc2ab,Tejun 已收下合入 sched_ext/for-7.4。

lore
讨论分析 success作者:Qiurong Fang2026/09/02 14:201 封邮件

Re: [PATCH] sched_ext: Delete sub-scheduler kobjects before releasing scx_enable_mutex

Qiurong Fang 就 sched_ext 子调度器 kobject 释放顺序的 PATCH 回复 maintainer Tejun,确认这是预期行为,并正式撤回该 PATCH。整条线索仅一封回复邮件,不携带任何代码改动。邮件仅体现讨论闭环,未在代码层面引入新的行为或修复。

lore
Bugfix重要分析 success作者:Qiurong Fang2026/09/02 14:025 封邮件

[PATCH] sched_ext: Delete sub-scheduler kobjects before releasing scx_enable_mutex

sched_ext sub-scheduler 在 disable 时先释放 scx_enable_mutex 再删 sysfs kobject,导致并发 enable 在同一 cgroup 上 kobject_add 撞 -EEXIST,把一个健康的调度器误杀。补丁把 kobject_del 移到 mutex_unlock 之前,与 root 路径对齐。

lore
Bugfix重要分析 success作者:Tao Cui2026/09/02 09:217 封邮件

[PATCH v2 0/2] sched_ext: document and enforce vtime ordering constraints

本系列把 sched_ext 中 dsq_vtime 排序所依赖的 u64 half-range 约束显式写进 scx_bpf_dsq_insert_vtime() 的文档,并把示例调度器 scx_flatcg 的 rbtree 比较器 cgv_node_less() 从裸 u64 '<' 改成 (s64)(a-b)<0 的循环比较,避免 cvtime 绕回时破坏严格弱序。Tejun 复审指出文档措辞应为 'less than 2^63 apart',wrap 实际比 commit 描述发生得更早(每 CPU slice charge 累加),lag 与 lead 都需受限,Fixes 标签应...

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

[PATCH] sched_ext: don't deliver duplicate ops.cgroup_set_idle() for same value

Tao Cui 发现 scx_group_set_idle() 不论 cpu.idle 是否真发生变化都向 BPF 调度器派发 cgroup_set_idle 回调,会让基于切换或累计计数的 BPF 调度器误把重复写入算成多次跃迁。补丁在派发条件中追加 tg->scx.sched_idle != idle 的守卫,对齐 scx_group_set_weight() 的现有跳过等值写入的做法。Sashiko AI 提示 sched_idle 字段可能不存在;Andrea Righi 确认其余内容 OK 并给出 Reviewed-by,同时指出 Link: 标签为空。

lore
Bugfix重要分析 success作者:Tao Cui2026/09/01 17:449 封邮件

[PATCH 1/2] sched_ext: fix vtime priority queue inversion on wide vtime spread

Tao Cui 提交 2 个补丁分别修复 sched_ext 内核 DSQ 优先队列的 spread 大时反转问题,以及 scx_flatcg cgroup 树在 cvtime 环绕瞬间的错位问题。两处采用相反修复,判定依据是 spread 不变量是否被维护。Tejun Heo 明确 dsq_vtime 按 BPF kfunc 文档是循环 cursor,作者本人随后在第 9 封反对自己的 Patch 1 方向,预计 v2 会撤回 Patch 1 并修正 Patch 2 的 Fixes tag。

lore
其它重要分析 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:371 封邮件

[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:591 封邮件

[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:521 封邮件

[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:311 封邮件

[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:531 封邮件

[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:531 封邮件

[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
每页
上一页1 / 1下一页