Linux 的实时调度类(SCHED_FIFO、SCHED_DEADLINE 等)长期与 cgroups 资源控制存在语义冲突:cgroup 的带宽控制主要面向普通分时任务,而实时任务的设计前提是尽快获得处理器。RT_GROUP_SCHED 正是为在 cgroups 下分组调度实时任务而引入的开关,但它与实时性保证之间的边界问题始终存在。
本轮讨论的核心观点是,该特性的缺陷已经无法在现有实现上修补到位,因此更合理的做法是把它移除,让实时任务的资源管理回归更清晰的机制。这意味着相关代码路径被删减,也意味着任何把实时任务放入 cgroup 并期望获得确定性的用法都要重新评估。
对企业 IT 而言,受影响的典型场景包括容器化实时工作负载、音视频处理、工业自动化与低延迟交易类系统,这些环境往往同时使用 cgroups 资源限制与实时优先级。建议先清查现有主机与容器配置中是否显式启用了该开关,并验证取消后实时线程的调度行为与延迟指标;必要时改用处理器亲和性绑定、独立的实时分区或 cgroup v2 下的 CPU 控制器组合,把验证纳入内核升级的常规测试项。
来源:Phoronix,原文。