日期范围
71
其它讨论数
其它分析 success作者:Ye Liu2026/09/07 17:3516 封邮件

[PATCH v2 0/8] sched: introduce for_each_process_rculock and for_each_thread_rculock

Ye Liu 提交 8 patch v2 系列,新增 for_each_process_rculock、for_each_thread_rculock 与 for_each_process_thread_rculock 三个宏,将 scoped_guard(rcu) 与现有进程/线程迭代宏绑定,使 RCU 读锁自动按循环作用域加解锁;随后把 mm/oom_kill、mm/ksm、mm/memory-failure、kernel/、fs/、lib/ 与 security/landlock 共 17 个文件 21 处手工 rcu_read_lock/rcu_read_unlock 或 guard(...

lore
其它分析 success作者:Hemanth Selam2026/09/07 14:541 封邮件

[PATCH 05/14] sched: fix typos in comments

本封是 Hemanth Selam 14-patch typo 系列的第 5 封,针对 scheduler 子系统 7 个文件各订正 1 处注释拼写错误,包括 atleast、compability、substract、faireness、actualy、avaialable、condtion 等,diff 显示 7 处插入与 7 处删除,纯注释改动,不影响运行时行为,由 checkpatch.pl 配合 scripts/spelling.txt 驱动。声明 Assisted-by: Cursor:claude-opus-5,未收到系列其它 13 封邮件。

lore
其它重要分析 success作者:Ye Liu2026/09/07 11:0530 封邮件

[PATCH 0/8] mm: introduce for_each_process_rcu and for_each_thread_rcu

Ye Liu 提交 8 个 patch 的 v1 系列,在 include/linux/sched/signal.h 中引入 for_each_process_rcu / for_each_thread_rcu / for_each_process_thread_rcu 三个基于 scoped_guard(rcu) 的宏,并把它们应用到 mm/、kernel/、fs/、lib/、security/ 共 17 个文件,清除大量手写 rcu_read_lock/unlock 样板。Michal Hocko、SJ Park、Miaohe Lin、Lorenzo Stoakes、Justin Sues...

lore
其它重要分析 success作者:Bradley Morgan2026/09/06 01:5727 封邮件

[PATCH v2 0/5] kthread: convert remaining users to kthread_create_worker

Bradley Morgan 的 5 patch 系列把 ivtv/encx24j600/sc16is7xx/cpufreq_schedutil 四个剩余的旧 kthread 用户迁到 kthread_create_worker* API,并删除 kthread_worker_fn() 中挂了十年的 worker->task = current 自赋值,仅留 WARN_ON 兜底。v2 已被 Jakub Kicinski 和 Greg KH 要求把 driver 改动拆成独立 series 分头发,并被 kernel test robot 抓到 ivtv-irq.c:1053 仍残留 &itv...

lore
其它重要分析 success作者:Andrea Righi2026/09/04 14:0010 封邮件

[PATCH 0/2] sched: Enable preferred SMT siblings on NVIDIA Olympus

Andrea Righi 为 NVIDIA Olympus 提交一个 2 patch 系列,通过 SD_ASYM_PACKING 把 PE0 标为优选 SMT 兄弟线程,并在 kernel/sched/fair.c 的所有 idle 选择路径中真正消费这个优先级,让可迁移任务固定在 PE0,避免核心反复进出 Two-Thread 模式。在 88 线程 GEMM 上吞吐从约 9.4 提升到 10.1 TFLOP/s。Christian Loehle 提出把 PE 优先级与 highest_perf 合并成单一 priority 以替代 SD_ASYM_CPUCAPACITY,Andrea 表示会...

lore
其它分析 success作者:Hongyan Xia2026/09/03 19:571 封邮件

[PATCH v2] sched: Convert last bits of deprecated static key usage

Hongyan Xia 把 kernel/sched/core.c 和 kernel/sched/fair.c 中最后几处 deprecated 的 static_key_* API 调用迁移到新的 static_branch_* API,包括把 __cfs_bandwidth_used 改为 DEFINE_STATIC_KEY_FALSE 并统一 helper 命名。patch 标注 No functional change,属于纯 rename/cleanup,是 sched 子系统去掉 deprecated static key 的收尾工作。v2 相对 v1 主要补充了废弃原因说明并修复...

lore
其它分析 success作者:Mark Rutland2026/09/03 09:3026 封邮件

[PATCH v2 0/6] sched: dynamic: Simplify PREEMPT_DYNAMIC

Mark Rutland v2 系列把 PREEMPT_DYNAMIC 因 v7.0 限制已无法选择 NONE/VOLUNTARY 这一现实正式化:通过让 PREEMPT_DYNAMIC 依赖 ARCH_HAS_PREEMPT_LAZY,逐 patch 删除 cond_resched/preempt_schedule/irqentry_exit_cond_resched 的 dynamic wrapper、HAVE_PREEMPT_DYNAMIC_{CALL,KEY} Kconfig 以及六个架构对应 stub,净瘦身 374 行,运行时仅剩 dynamic_preempt_lazy 一个静态...

lore
其它分析 success作者:Bradley Morgan2026/09/02 22:1216 封邮件

[RESEND PATCH 0/5] kthread: remove worker->task self-assignment

本系列把 ivtv、encx24j600、sc16is7xx、cpufreq_schedutil 四个驱动从老 kthread_init_worker+kthread_run(kthread_worker_fn) 迁到 kthread_run_worker/_create_worker,随后删除 kthread_worker_fn 里 worker->task = current 的自赋值 FIXME。Frederic Weisbecker 与 Peter Zijlstra 倾向保留 WARN_ON 做兜底,作者倾向彻底删除,争议尚未定论。

lore
其它重要分析 success作者:Shrikanth Hegde2026/09/02 16:3323 封邮件

[PATCH v11 00/12] sched, steal_governor: Introduce preferred CPUs and steal-driven vCPU backoff

本系列(v11/12 patch)在 cpumask 体系中新增 cpu_preferred_mask,由内核在 wakeup/tick/load balance 三个面把 FAIR 任务自动折叠到 preferred vCPU 集合,同时引入可加载模块 steal_governor 周期采样 steal time 比例,控制 preferred 的增减;目标是 paravirt 环境合作式降低 vCPU 抢占带来的锁/cache/TLB 损失,并严格不破坏用户亲和性。讨论主要聚焦在 patch 05/12 的 is_cpu_allowed 路径,Vincent/Dietmar 反复指出 AR...

lore
其它分析 success作者:Hongyan Xia2026/09/02 16:334 封邮件

[PATCH RESEND] sched: Convert paravirt_steal to new static key APIs

Hongyan Xia 提交的 RESEND patch 把 paravirt_steal_enabled 与 paravirt_steal_rq_enabled 从废弃的 static_key_slow_inc/static_key_false 改写为 DEFINE_STATIC_KEY_FALSE 与 static_branch_inc/_unlikely,跨 arm64/loongarch/powerpc/riscv/x86/xen 等 10 个文件、21 行替换、零功能改动。Juergen Gross 已 Acked,IBM Shrikanth Hegde 回复被截断,patch 已由...

lore
其它分析 success作者:Hongyan Xia2026/09/02 16:333 封邮件

[PATCH RESEND] sched/feat: Use the new static key API for sched_feat

Hongyan Xia 把 sched_feat 子系统使用的旧 struct static_key 接口迁移到内核推荐的新 struct static_key_true/false 接口。改动通过 union sched_feat_key 包装两种类型的 key,并相应更新 sched_feat_keys 数组、jump_label_key 初始化宏、SCHED_FEAT 宏以及 debug.c 中开关 feature 的代码路径。声明无功能变化,仅 API 重构,已经被 tip-bot 合入 tip:sched/core。

lore
其它分析 success作者:Vladimir Zapolskiy2026/09/02 16:334 封邮件

[PATCH] sched: Remove unneeded function type cast in do_balance_callbacks()

Vladimir Zapolskiy 提交一个一行 cleanup patch,删除 do_balance_callbacks() 中给 head->func 赋值时的显式函数类型转换。Peter Zijlstra 指出该 cast 是引入 struct balance_callback 之前的历史遗留,已无必要。patch 已被 tip-bot 推入 sched/core 分支,并在两次公告中出现不同的 commit hash。

lore
其它重要分析 success作者:John Stultz2026/09/02 15:5527 封邮件

[RESEND][PATCH v31 0/9] Sleeping Owner Handling for Proxy Execution (v31)

Proxy Execution 第五阶段:mutex owner 进入 sleeping 无法被 boost 时,把 waiter 挂到 owner 的 blocked_head,owner 醒来后一次性整链激活。9 个 patch +374/-43 行,附带 DL yield 早退、core-sched cookie 错配回退、donor 偷取防护、整链迁移、sched_ext ENQUEUE_PROXY 等若干 stabilization 修复;v31 中部分 patch 已被合入 tip:sched/core。

lore
其它重要分析 success作者:Greg Kroah-Hartman2026/09/01 09:22474 封邮件

[PATCH 5.15 001/456] nvmet-tcp: Fix potential UAF when ddgst mismatch

Greg Kroah-Hartman 发布 Linux 5.15 LTS 第 216 个候选版,包含 456 个回迁补丁,覆盖网络、驱动、文件系统、架构等大量子系统的 bugfix 与少量 cleanup。多笔补丁聚焦 UAF/OOB 修复;社区 maintainer 回复确认收到,Harshit Mogalapalli 反馈 5 张 patch 需复核,Sasha Levin 提交后续 fix。

lore
其它分析 success作者:Kayra Cizmeci2026/09/01 03:222 封邮件

[PATCH] sched/fair: Remove unused autogroup.h include

这是一份单 patch cleanup:删除 kernel/sched/fair.c 中一行从未被引用的 #include "autogroup.h"。作者先用 grep 确认 fair.c 内没有代码使用 autogroup.h 声明的符号,再用 Lima+QEMU 在 x86_64 defconfig、4 CPU、busybox 环境下完成启动测试。补丁发出约 5 周后仍无 maintainer 回复,作者补发了一封 gentle ping。

lore
其它重要分析 success作者:Byungchul Park2026/08/31 07:10108 封邮件

[PATCH v19 00/40] DEPT(DEPendency Tracker)

Byungchul Park 提交 DEPT v19(40 个 patch),把死锁建模为 wait/event 依赖图,弥补 lockdep 在 folio lock、completion、dma fence、RCU、waitqueue 等场景的盲点。核心改动包括 dept_map/dept_task/sdt/ldt 高层 API、与 lockdep 联动、procfs 状态导出、自动对象池补给、timeout 区分、Kconfig 开关以及文档与 unit test。

lore
其它分析 success作者:Bradley Morgan2026/08/30 00:001 封邮件

[PATCH 4/5] cpufreq: schedutil: convert to kthread_create_worker

本 patch 是 cpufreq schedutil 清理系列第 4/5 帖,把 sugov_policy 中嵌入的 kthread_worker 改成 kthread_create_worker() 返回的指针,并删除多余的 task_struct *thread 字段。这是为了配合上游移除 kthread_worker_fn() 中 worker->task 自赋值工作,schedutil 作为最大使用者必须跟进。改完后 worker 生命周期由 worker API 统一管理,错误路径与亲和性调用都改到 worker->task 上,整体净减 5 行。

lore
其它重要分析 success作者:Aaron Tomlin2026/08/29 23:555 封邮件

[PATCH v4] security: Expand task_setscheduler LSM hook

Aaron Tomlin 发布 v4 补丁,把 CPU 亲和性掩码作为新参数引入 LSM 的 task_setscheduler 钩子,让 SELinux、Smack、BPF LSM 第一次能看到 sched_setaffinity 的目标 CPU。补丁同步更新 capability/SELinux/Smack 的签名,并把 cpuset attach、mipsmt FP affinity 等多个调用点的真实 mask 一并透传,从而为多租户与实时场景补齐空间隔离能力。

lore
其它分析 success作者:Zhan Xusheng2026/08/28 16:362 封邮件

[PATCH 1/2] sched/fair: Fix stale comment on task_is_ineligible_on_dst_cpu()

Zhan Xusheng 提交一个 2 patch 的注释维护系列,只改 kernel/sched/fair.c 中的两段注释:把 task_is_ineligible_on_dst_cpu() 上方与 EEVDF/PLACE_LAG 后实际代码脱钩的 nr_queued 描述重写为基于源 runqueue 的正确语义;并把 can_migrate_task() 头部只列 6 条、与 if 链顺序不一致的 bail-out 列表补齐为 8 条并重排。整个系列不改任何运行时行为,属于 cleanup 类 patch。

lore
其它重要分析 success作者:Shrikanth Hegde2026/08/27 21:3727 封邮件

[PATCH v10 00/12] sched, steal_governor: Introduce preferred CPUs and steal-driven vCPU backoff

本系列(v10,12 patch)在调度器核心引入 cpu_preferred_mask 与 wakeup/tick-push/load-balance 三处 hint,同时新增 CONFIG_STEAL_GOVERNOR 模块 drivers/virt/steal_governor.c,按 steal time 高低阈值动态放缩 preferred CPU 集合,用于在 paravirt 重载场景缓解 vCPU 抢占。Review 关注点集中在 x86/KVM/Xen 上默认阈值被 possible/online 比稀释、Xen dom0 加载副作用、ARM64 上 32-bit 任务在 t...

lore
其它分析 success作者:Amin Gattout2026/08/27 19:453 封邮件

[PATCH] sched/core: Convert remaining BUG_ON() instances to WARN_ON_ONCE()

本补丁是 commit 09348d75a6ce 的清尾工作,将 kernel/sched/core.c 中遗漏的 6 处 BUG_ON() 全部替换为 WARN_ON_ONCE()。改动覆盖 tick offload 分配失败、preempt_schedule_irq 入口、rq online/offline 以及 sched_init 中的调度类优先级链。目的是遵循 deprecated.rst 的指引,让'理论上不可能'的 invariant 命中时只警告、不 panic,从而留下可用的 dmesg 方便定位。线程中两封 reply 都只是引用前文,未见 maintainer 实质 Ac...

lore
其它分析 success作者:Kayra Cizmeci2026/08/27 02:447 封邮件

[PATCH 1/2] sched/fair: reuse the ENQUEUE_DELAYED calculation in enqueue_task_fair()

Kayra Cizmeci 提出的两 patch 清理系列:把 ENQUEUE_DELAYED 与 cfs_rq->curr == se 两个布尔在 enqueue_task_fair() 入口算好并透传给 requeue_delayed_entity() 与 place_entity(),消除 avg_vruntime_weight() 的二次调用并提升可读性。v2 在 place_entity() 加了 curr && (curr->on_rq || is_curr) 守卫以避免空算。Prateek 指出 delayed 命名读起来反直觉,作者倾向改成 wakeup_delayed 或保留...

lore
其它重要分析 success作者:Peter Zijlstra2026/08/24 21:5324 封邮件

[PATCH v3 0/7] sched: Flatten the pick

Peter Zijlstra 的 v3 系列把 cgroup 层级权重从 1/N^d 衰减修正为可切换的五档算法(up / smp / max / concur / tasks),新默认 concur 通过 min(M,N) 把组内有效权重稳定在 1;并以 sched/eevdf 单 rq 化把 pick_next_task 路径上的中间 group se 移除,目标是降低 P99 调度延迟。后续 tip-bot2 合入与 Chen Yu 的 u32 溢出 fix 把整套改造落到 sched/core,但 wake_affine_weight 在新权重下的退化仍在持续追讨。

lore
其它重要分析 success作者:Greg Kroah-Hartman2026/08/21 23:01357 封邮件

[PATCH 6.12 011/337] netfilter: br_netfilter: Reallocate headroom if necessary in neigh_hh_bridge()

本系列是 Greg Kroah-Hartman 发布的 Linux 6.12.103-rc1 稳定分支 review,共 337 个 patch,覆盖 netfilter、sched、scsi、drm、alsa、bluetooth、hwmon、mm、kvm、net 等 30 多个子系统的 bugfix 与少量 cleanup/feature。关键改动包括 sched/deadline 仅在 dl_server 运行中启用新唤醒规则、cpufreq/schedutil 在所有 sg_cpu 初始化后发布 util hook、neigh_hh_bridge 重新分配 headroom、SIP NA...

lore
其它重要分析 success作者:Luigi Rizzo2026/08/20 18:362 封邮件

[PATCH] sched/cpupri: Remove count field from struct cpupri_vec

Luigi Rizzo 提议删除 struct cpupri_vec 的 count 字段及配套的 atomic 操作与 smp_mb 屏障。动机是在 220 核 ARM 上,软中断 CPU 因 irq_thread 频繁调用 cpupri_set() 而有约 25% 时间耗在该函数;移除后该比例降至 2% 以内,且 RT 任务路由仍由 rq->lock 在 find_lock_lowest_rq 中兜底。v2 增加了 cpupri_find 的 benchmark 与无 barrier 安全性的注释。

lore
其它分析 success作者:Liang Hao2026/08/18 23:191 封邮件

[PATCH] sched/hrtick: Name the minimum slice and derive the rearm slack

本 patch 把 hrtick 子系统中硬编码的 10000ns floor 与 5000ns rearm 阈值抽成两个命名宏,并显式把余量定义为最小切片的一半,仅提升可读性、不改变行为。作者本人也提出疑问:5us 阈值当年是否刻意作为 10us 的一半引入,等维护者澄清历史语义后再决定是否合入。

lore
其它重要分析 success作者:Luo Gengkun2026/08/18 22:427 封邮件

[PATCH v9 1/2] sched/cache: Reduce the overhead of task_cache_work by only scan the visisted cpus

本系列补丁为 cache-aware scheduling 引入 visited_cpus cpumask,让 task_cache_work() 只扫描最近真正访问过的 CPU,把多 NUMA 系统中的扫描 CPU 数从 384 降到 16 左右,Redis p99 延迟下降约 25%。Chen Yu C 在 review 中进一步指出单线程进程 visited_cpus 位累积以及跨 NUMA 抖动两个潜在风险,作者倾向于不加 gate。

lore
其它重要分析 success作者:shisiyuan2026/08/17 22:543 封邮件

[PATCH] sched/psi: add cpu_prio pressure metric for high-priority task stalls

该补丁在 PSI 中新增 cpu_prio 资源,只统计静态优先级不高于阈值的任务等待 CPU 的时长,以隔离延迟敏感负载的争用信号。维护者 Peter Zijlstra 直接回 Yeah, I think not. 拒绝,Michal Koutny 进一步指出把目标任务放进独立 cgroup 后读取 cpu.pressure 已经能做到同样效果,因此没有继续迭代。

lore
其它重要分析 success作者:Xin Zhao2026/08/15 19:0411 封邮件

[PATCH 10/10] sched/fair: Strive to find a task to migrate if newly idle when LB_PROMOTE

Xin Zhao 提交的 10-patch 系列引入新的 SCHED_FEAT 开关 LB_PROMOTE,针对嵌入式平台(CONFIG_HZ_250)上 CFS 任务出现的不合理 CPU idle(>2.5ms 甚至 >4ms)问题,从 wake-up CPU 选择、newly idle 兜底、CFS 被 RT 抢占迁移三个场景主动出击。配套包含 rd overload 误清零、active_balance 清零时机、active_load_balance_cpu_stop 通用化等前置修复。默认关闭,开启后以 sys% 上升换取 ≤4ms 的调度延迟保证。

lore
其它分析 success作者:Ziyang Men2026/08/14 04:245 封邮件

[PATCH 0/2] cgroup, sched: add bpf for cgroup cpu controller

Ziyang Men 提交一个 2 patch 系列,为 cpu cgroup 暴露三个 BPF kfunc:bpf_cpu_cgroup_flush_stats、bpf_cpu_cgroup_cputime、bpf_cpu_cgroup_throttled_self,沿用 mm/bpf_memcontrol.c 的 memcg 设计思路。cputime 内部用一次 __css_rstat_lock + cputime_adjust 算齐全部基础 CPU 时间,节流总和由内核通过去除 static 的 throttled_time_self() 提供。配套 selftests/bpf 验证 B...

lore
其它重要分析 success作者:Bharata B Rao2026/08/13 10:2140 封邮件

[PATCH v8 0/8] mm: Hot page tracking and promotion infrastructure

Bharata B Rao 第 8 版提交 pghot 子系统,把 NUMA hint fault、AMD IBS Memory Profiler 以及未来 CXL HMU 等热页来源统一到 per-PFN hotness 记录与 per-node kmigrated 线程,并把 kernel.numa_balancing=2 的 tiering 路径从 scheduler 迁到 mm。Andrew Morton、Matthew Wilcox、SJ Park、D. Hildenbrand 等 maintainer 提出与 DAMON 重叠、diffstat 过大、未拿到任何 Acked-by ...

lore
其它分析 success作者:Kayra Cizmeci2026/08/12 23:101 封邮件

[PATCH] sched/fair: Avoid calculating curr's key twice in pick_eevdf()

本 patch 把 pick_eevdf() 中 entity_eligible()→vruntime_eligible() 这条路径里重复的 entity_key(cfs_rq, curr) 减法抽成新的 curr_eligible(),让 vruntime - min_vruntime 只算一次。无功能变化,仅做 micro-cleanup,把 curr!=NULL/on_rq 的不变量交给 caller。建议补 WARN_ON_ONCE 与 micro-bench 以便 review。

lore
其它重要分析 success作者:Boqun Feng2026/08/12 19:1839 封邮件

[PATCH v5 00/18] Refcounted interrupt disable and SpinLockIrq for Rust

Boqun Feng 主推的 v5 18 贴系列把 preempt_count 中的 NMI 嵌套迁到 per-CPU 计数器,腾出 8 bit 给新的 HARDIRQ_DISABLE 计数器,并在 64-bit 架构把 PREEMPT_NEED_RESCHED 拆到独立字。系列在 C 端新增 local_interrupt_disable/enable 以及 spin_lock_irq_disable / spin_unlock_irq_enable 三件套,并附 KUnit 测试;在 Rust 端引入 kernel::interrupt 模块的 LocalInterruptDisabled...

lore
其它重要分析 success作者:Madadi Vineeth Reddy2026/08/11 13:4111 封邮件

[PATCH] sched/fair: Let sync wakeups target the waker's core

补丁在 select_idle_core() 中识别“waker 即将 sleep 且 rq 仅剩它自己”的状态,把 waker 的 CPU 视为 idle,使得 SMT 上 wakee 能落到 waker 核的兄弟线程,复用 cache 又避免 stacking。讨论中 Prateek 与 Chen Yu 提出上提到 select_idle_sibling() 或抽出 select_idle_sync_core() 的重构方案,x86 Zen 3 上 Kayra 的测试显示 cycles 下降 1.40% 但 cache-misses 上升 4.60%,收益高度依赖 SMT 编号方式。

lore
其它分析 success作者:Greg Kroah-Hartman2026/08/11 07:00457 封邮件

[PATCH 7.1 001/438] net: mpls: initialize rtm_tos in mpls_getroute()

Greg Kroah-Hartman 发布 Linux 7.1.8-rc1 稳定分支的 438 个回搬补丁合入评审。涵盖 mm/slab、btrfs、netfilter、bluetooth、KVM、ALSA、drm 等子系统;其中 sched/deadline 183/438 限定 revised wakeup rule 仅在 dl_server running 时生效。窗口期截止 2026-08-09 14:33 UTC;多数回信为 Tested-by/确认收到。

lore
其它分析 success作者:Greg Kroah-Hartman2026/08/11 06:40406 封邮件

[PATCH 6.18 001/396] netfilter: nf_conntrack_expect: restore helper propagation via expectation

Greg KH 发布的 6.18.44-rc1 stable review 一次拉取 396 个 patch,跨 netfilter、btrfs、mm/slab、drm、ALSA、Bluetooth、hwmon、net、scsi、can、phy 等 30+ 子系统。真正属于 scheduler 的只有 PATCH 149/396 sched/deadline: Use revised wakeup rule only for running dl_server,把 DL wakeup rule 的判定收敛到 dl_server 实际 running 时。其余 395 个均为各子系统 bugfi...

lore
其它重要分析 success作者:Shrikanth Hegde2026/08/10 21:2430 封邮件

[PATCH v9 00/11] sched, steal_governor: Introduce preferred CPUs and steal-driven vCPU backoff

本系列引入 cpu_preferred_mask 作为 scheduler 一等 cpumask 状态, 并把 virtualization 策略放到 drivers/virt/steal_governor 驱动中。驱动周期性采样系统 steal time, 与高/低阈值比较后逐步收缩或扩展 preferred CPU 集合; 调度器在 wakeup、tick、load balance 三条路径上优先使用 preferred。目的是为 paravirt 下多个 VM 提供协作式、可恢复、不破坏用户 affinity 的 vCPU 退避机制, 避免 CPU hotplug/isolcpuset ...

lore
其它重要分析 success作者:Andrea Righi2026/08/10 18:383 封邮件

[PATCH v5] sched/fair: Prefer fully idle cores for NOHZ balancing

Andrea Righi v5 修改 find_new_ilb(),在 SMT 系统中优先挑选整 core 空闲的 CPU 作为 ILB 目标,不存在时回退到任一 idle CPU。针对 NVIDIA Olympus(Vera)上 SMT 唤醒后 10 Ki cycle 才恢复单线程性能的特性,在自制 GEMM benchmark、每 core 一个 CPU 密集任务下,从约 6.2 TFLOP/s 提升到 9.4 TFLOP/s。非 SMT 系统行为保持不变。

lore
其它分析 success作者:Liang Hao2026/08/07 23:071 封邮件

[PATCH] sched/deadline: Do not pull when the local CPU is the only overloaded one

本 patch 把 RT 调度器 commit f73c52a5bcd1 中已有的 "pull 端短路" 镜像到 DEADLINE 调度器的 pull_dl_task():当 dlo_count==1 且本 CPU 拥有唯一的 dlo_mask bit 时直接返回,避免 for_each_cpu() 循环在本地 CPU 上空转。改动只动 kernel/sched/deadline.c 一处 +7/-1,作者明确说明无功能变化,仅做对称补齐和微小性能优化。

lore
其它重要分析 success作者:Usama Arif2026/08/07 17:522 封邮件

[PATCH v2] sched/psi: use __ffs() to walk task-count bitmasks in psi_group_change()

把 psi_group_change() 中遍历 clear/set 4-bit 掩码的写法从线性扫到最高位改为 __ffs()+m&=m-1,按置位数而不是位宽工作。微基准在常见 PSI mask 分布上提速 47-63%,生成代码减少 67 字节;属性能/可读性双优的 patch 清理。

lore
其它分析 success作者:Aaron Tomlin2026/08/05 20:373 封邮件

[PATCH v2] sched/debug: Introduce per-CPU debugfs files

Aaron Tomlin 在 v2 中向 kernel/sched/debug.c 新增 debugfs_cpu_init(),为每个 possible CPU 在 /sys/kernel/debug/sched/cpu/cpu<N>/debug 下创建独立 debug 文件,读取时通过 sched_debug_cpu_show() 复用 print_cpu() 输出该 CPU 的 runqueue 状态,offline CPU 返回 -ENODEV。v2 主要按 Peter Zijlstra 和 Zhan Xusheng 的反馈重写 commit message 动机,并补上 cpu_onl...

lore
其它分析 success作者:fangqiurong2026/08/05 17:122 封邮件

[PATCH] sched/fair: Remove dead throttled check in pick_task_fair()

本 patch 删除 pick_task_fair() 中因 f666241e6bd5 重构而变成死代码的 throttled 变量与 task_throttle_setup_work() 调用,属于 cleanup 类改动,行为完全不变。回复者 K Prateek Nayak 指出 tip:sched/core 上 Peter Zijlstra 已经通过 85570f10a4c6(sched/eevdf: Move to a single runqueue)完成了同样的清理,作者需要 rebase 或撤回本 patch。

lore
其它重要分析 success作者:Andrea Righi2026/08/05 16:598 封邮件

[PATCH v3] sched/fair: Prefer fully idle cores for NOHZ balancing

Andrea Righi 改写 find_new_ilb(),让 ILB 目标优先选整核空闲的 SMT CPU,避免唤醒半活 core 的空闲兄弟线程,从而防止 NVIDIA Olympus/Vera 上 10 Ki cycles 的单线程性能恢复窗口被反复触发。v3 在见到 busy CPU 后跳过其所有兄弟,简化宽 SMT 扫描。审稿人主要质疑 this_cpu 检查是否冗余,并建议把 busy 检查与 this_cpu 判断合并。

lore
其它重要分析 success作者:Greg Kroah-Hartman2026/08/04 22:32502 封邮件

[PATCH 6.6 000/484] 6.6.148-rc1 review

Greg Kroah-Hartman 发布的 Linux 6.6.148-rc1 stable 候选版,包含 484 个跨子系统补丁。修复重点包括 CAN bcm/isotp 的并发 race、drm/virtio 的 fbdev probe 死锁、mmc vub300 的 use-after-free、KVM MMU 与 ASID 系列问题,以及 wifi、RDMA、thunderbolt 等驱动侧大量 OOB read/UAF 修复。本帖同时包含 17 封社区 review 回信,主要覆盖 mmc vub300 patch 的命名分歧和 ceph 布局 ioctl 校验。

lore
其它分析 success作者:Christoph Hellwig2026/08/04 21:002 封邮件

[PATCH v2] block: split out a new blk_plug.h header

Christoph Hellwig 把 struct blk_plug、blk_plug_cb 及相关 inline 从 include/linux/blkdev.h 抽出到新建的 include/linux/blk_plug.h,让 aio、writeback、io_uring、mm、kernel/sched/core.c 等非 block 模块不再被迫 include 重型 blkdev.h,从而减少 blkdev.h 改动触发的重编译、降低头耦合。维护者 Jens Axboe 当日 ack 并合入为 commit 758b86f7bc8a。

lore
其它重要分析 success作者:Boqun Feng2026/08/04 20:5259 封邮件

[GIT PULL] [PATCH 00/24] Rust synchronization changes for v7.3

Boqun Feng 推送 24 个 patch,把 IRQ disable 嵌套层数记进 preempt_count 的 HARDIRQ_DISABLE 字段,并以此为基础提供 Rust 端的 SpinLockIrq、synchronize_rcu() 安全封装和 trait-based 泛型 memory barrier。该系列还顺手修复 openrisc 的 smp.h 编译错误并把 64 位架构的 NMI 嵌套放回 preempt_count。Peter Zijlstra 在 patch 02 的 Signed-off-by 链、interrupt_disable_state 包装以及...

lore
其它分析 success作者:Zhan Xusheng2026/08/04 20:504 封邮件

[PATCH 0/3] sched: minor cleanups

Zhan Xusheng 提交的 3 个 cleanup 补丁:删除早就没有调用者的 static inline sched_fair_runnable();把 requeue_task_rt() 永远不用的 rq 形参去掉,三处 caller 同步;修正 rt.c 里与 #ifdef CONFIG_RT_GROUP_SCHED 配套的 #endif 注释(去掉多余的 !)。全部 No functional change,仅改善代码可读性和接口整洁度。

lore
其它分析 success作者:Zhan Xusheng2026/08/04 17:261 封邮件

[PATCH] sched/psi: Skip CPUs with zero non-idle jiffies in per-cpu aggregation

针对 collect_percpu_times() 对每个 possible CPU 都执行 nsecs_to_jiffies 与加权累加的浪费,作者利用 get_recent_times() 已设的 PSI_NONIDLE 位作为天然 zero-delta 标记,在循环里直接 continue。该优化在 i7-8700 以及 -smp 2..32 的 A/B 测试中带来最多约 18% 的 /proc/pressure/cpu 读延迟节省,且随 CPU 数放大。整条线索从 v1 到 v6 主要迭代判断条件、Reviewed-by 标签语义、commit 措辞以及 Peter Zijlstra ...

lore
其它重要分析 success作者:Shubhang Kaushik (Ampere)2026/08/04 08:226 封邮件

[PATCH v3] sched/fair: Prefer waker CPU for non-SMT reciprocal sync wakeups

本系列在 select_task_rq_fair() 中新增 prefer_sync_pair_cpu(),借助 last_wakee 识别 pipe-style ping-pong WF_SYNC 唤醒,在非 SMT 平台上让 wakee 留在 waker CPU,80核 Ampere Altra 上 perf bench sched pipe 提升约 30%。线程后续由 Prateek 提议下沉到 select_idle_sibling() 以覆盖 SMT,并由 Shrikanth 质疑 sync wakeup 的整体语义,呼吁先界定策略再决定合入。

lore
其它分析 success作者:Hongling Zeng2026/08/03 15:401 封邮件

[PATCH RESEND v2] sched: adjust the layout of the cfs_bandwith structure to save memory

通过 pahole 发现 struct cfs_bandwidth 有 13 字节 padding hole,v2 RESEND 把三个 u8 标志挪到 raw_spinlock_t lock 之后,把结构体从 240 字节压到 232 字节。代价是 period_timer 跨过 cacheline 边界,但作者评估这条路径本来已访问多个 cacheline,并不是热点路径。

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