sched_ext: Mark SCX_OPS_HAS_CGROUP_WEIGHT for deprecation
authorTejun Heo <tj@kernel.org>
Tue, 8 Apr 2025 18:31:12 +0000 (08:31 -1000)
committerTejun Heo <tj@kernel.org>
Tue, 8 Apr 2025 18:53:52 +0000 (08:53 -1000)
SCX_OPS_HAS_CGROUP_WEIGHT was only used to suppress the missing cgroup
weight support warnings. Now that the warnings are removed, the flag doesn't
do anything. Mark it for deprecation and remove its usage from scx_flatcg.

v2: Actually include the scx_flatcg update.

Signed-off-by: Tejun Heo <tj@kernel.org>
Suggested-and-reviewed-by: Andrea Righi <arighi@nvidia.com>
kernel/sched/ext.c
tools/sched_ext/scx_flatcg.bpf.c

index 21eaf081d336e4f2500ea3581249bbaee7f9ddb7..fdbf249d1c68ec957bc7640376151f702bc63bc3 100644 (file)
@@ -163,7 +163,7 @@ enum scx_ops_flags {
        /*
         * CPU cgroup support flags
         */
-       SCX_OPS_HAS_CGROUP_WEIGHT = 1LLU << 16, /* cpu.weight */
+       SCX_OPS_HAS_CGROUP_WEIGHT = 1LLU << 16, /* DEPRECATED, will be removed on 6.18 */
 
        SCX_OPS_ALL_FLAGS       = SCX_OPS_KEEP_BUILTIN_IDLE |
                                  SCX_OPS_ENQ_LAST |
@@ -5213,6 +5213,9 @@ static int validate_ops(const struct sched_ext_ops *ops)
                return -EINVAL;
        }
 
+       if (ops->flags & SCX_OPS_HAS_CGROUP_WEIGHT)
+               pr_warn("SCX_OPS_HAS_CGROUP_WEIGHT is deprecated and a noop\n");
+
        return 0;
 }
 
index 2c720e3ecad59369eef61b98613c3670a8bcae33..fdc7170639e604c2da034dc4e015a151bdd7beb8 100644 (file)
@@ -950,5 +950,5 @@ SCX_OPS_DEFINE(flatcg_ops,
               .cgroup_move             = (void *)fcg_cgroup_move,
               .init                    = (void *)fcg_init,
               .exit                    = (void *)fcg_exit,
-              .flags                   = SCX_OPS_HAS_CGROUP_WEIGHT | SCX_OPS_ENQ_EXITING,
+              .flags                   = SCX_OPS_ENQ_EXITING,
               .name                    = "flatcg");