日期范围
113
全部讨论数
其它分析 success作者:Tejun Heo2026/07/26 04:415 封邮件

[PATCHSET sched_ext/for-7.3] sched_ext: Sparse annotation cleanups

为 sched_ext 中三类 __rcu 指针的裸读取添加合规标注:cgrp->scx_sched 通过 scx_cgroup_sched() 声明三锁保护,scx_root 通过 scx_root_protected_live/protected() 声明 live 不变式或锁排他,dsq->first_task 用 rcu_access_pointer() 做身份比较。全部无功能变更,已合入 for-7.3。

lore
其它重要分析 success作者:Andrea Righi2026/07/26 00:2618 封邮件

[PATCHSET v9 sched_ext/for-7.3] sched: Make proxy execution compatible with sched_ext

Andrea Righi 发布 PATCHSET v9,共 14 个补丁,移除 SCHED_PROXY_EXEC 与 SCHED_CLASS_EXT 的构建期互斥。在核心调度器侧把 rq->donor 与 rq->curr 拆开,新增 SCX_OPS_ENQ_BLOCKED 能力位让 BPF scheduler 显式选择是否接管 blocked donor,并同步修复 NOHZ 带宽检查、远端 DSQ 迁移竞态、ops.running/stopping 配对等问题。配套提供 enq_blocked selftest 和 scx_qmap -B 演示选项。

lore
Bugfix重要分析 success作者:Tejun Heo2026/07/25 06:198 封邮件

[PATCHSET v2 sched_ext/for-7.3] sched_ext: Follow-up fixes and missing cap enforcement

本系列修复两个问题:用户态工具在 exit_req 与 RESTART 同时存在时陷入无限重启循环;sub-scheduler 的 cid-addressed reenq、kick 和 cpuperf 操作缺少权限检查,无 cap 的 sub-sched 可触发他人 CPU 的 IPI 和频率调整。Patch 1 修复 restart 逻辑,Patch 2-3 给 reenq/kick 加 SCX_CAP_BASE 门控并计数拒绝,Patch 4 重构 cpuperf setter,Patch 5 新增 SCX_CAP_PERF 门控 cpuperf 并同步返回结果。

lore
Bugfix重要分析 success作者:Tejun Heo2026/07/25 03:0710 封邮件

[PATCHSET sched_ext/for-7.3] sched_ext: Follow-up fixes and missing cap enforcement

本系列修复 sched_ext 工具在重启等待期忽略 exit_req 导致无限循环的 bug,并堵住子调度器三个权限漏洞:reenq IPI、kick 拒绝和 cidperf cpufreq 操控无 cap 检查。新增 SCX_CAP_PERF 作为独立 cpufreq 权限轴,cidperf_set 通过版本化 v2 kfunc 同步返回拒绝结果。所有拒绝操作均有事件计数器可观测。

lore
Bugfix分析 success作者:Randy Dunlap2026/07/24 02:053 封邮件

[PATCH] sched_ext: repair kernel-doc comments

补丁修复 kernel/sched/ext/ext.c 中 6 处 kernel-doc 注释缺陷:为 finish_dispatch、scx_rcu_cpu_stall、scx_hardlockup 补齐缺失参数描述,并将 3 个版本化 BPF kfunc 的注释函数名从公开别名改为带 ___v2 后缀的 C 定义名,消除构建警告。Tejun Heo 已合入 sched_ext/for-7.3。

lore
Bugfix重要分析 success作者:Kuba Piecuch2026/07/24 02:052 封邮件

[PATCH sched_ext/for-7.2-fixes] selftests/sched_ext: Handle sleeping task affinity changes in numa test

当睡眠任务的 CPU affinity 在睡眠期间被修改后,task_cpu(p) 可能指向已不在 cpus_ptr 中的 CPU,导致 NUMA node 选定后找不到合法 CPU,sched_ext 框架报 "invalid CPU -16" 并使调度器异常退出。补丁在 numa_select_cpu() 中检测 cpumask 不一致时回退 prev_cpu 兜底,Tejun Heo 已 apply 到 for-7.2-fixes。

lore
Bugfix重要分析 success作者:Andrea Righi2026/07/24 00:4828 封邮件

[PATCHSET v8 sched_ext/for-7.3] sched: Make proxy execution compatible with sched_ext

PATCHSET v8 用 12 个补丁让 CONFIG_SCHED_PROXY_EXEC 与 CONFIG_SCHED_CLASS_EXT 不再互斥,方法是把 rq->donor 与 rq->curr 拆分、由 BPF 通过 SCX_OPS_ENQ_BLOCKED 显式接收 blocked donor,并修复了 set_task_cpu 假告警、consume_remote_task 迁移竞态、NOHZ 带宽核算错、running/stopping 不配对等副作用。John Stultz 已 ack 多处,Tejun Heo 提出用 class callback 替换直接调用、把 GDSQ_...

lore
Bugfix分析 success作者:Cui Jian2026/07/23 02:355 封邮件

[PATCH] sched_ext: Fix stale errno in scx_sub_enable_workfn()

scx_sub_enable_workfn() 中嵌套深度检查和 cgroup online 检查两条错误路径跳到 err_disable 时未设置 ret,导致 fallback 日志打印 errno=0。补丁分别设置 -EINVAL 和 -ENODEV 使 fallback 报告真实错误码。当前因 scx_error 的 first-error-wins 机制而无害,但 fallback 机制本身是坏的,需要修复。

lore
其它分析 success作者:Cheng-Yang Chou2026/07/23 02:154 封邮件

[PATCH sched_ext/for-7.3] tools/sched_ext: scx_pair: Convert to sched_switch TP

将 scx_pair 的 ops.cpu_acquire/release() 废弃回调替换为 tp_btf/sched_switch tracepoint 边沿检测,用 p->prio 判断高优先级抢占,消除加载时的废弃警告。idle→高优先级直跳不算 release,sched_setscheduler() 的盲区与旧回调一致。已由 Tejun Heo 合入 sched_ext/for-7.3。

lore
Bugfix重要分析 success作者:Tejun Heo2026/07/22 16:3510 封邮件

[PATCHSET v2 sched_ext/for-7.3] sched_ext: Sub-scheduler and cid fixes

本系列修复 sched_ext 子调度器层级下 runnable stall 归咎错误和 bypass 期间无效 CPU 选择,并将 cid 映射表从原地填充改为私有构建+RCU 发布,消除 BPF kfunc 竞态读取未初始化或撕裂数据的风险。Patch 4 经 v1→v2→v3 三版迭代,最终已合入 for-7.3。

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