diff options
| author | Tejun Heo <tj@kernel.org> | 2025-09-23 09:03:26 -1000 |
|---|---|---|
| committer | Tejun Heo <tj@kernel.org> | 2025-09-23 09:03:26 -1000 |
| commit | edf005fa274a0c224e550a52726aa7a426384e36 (patch) | |
| tree | 3074dcc9322e3e53053528853771c5c07906ed1a | |
| parent | c8191ee8e64a8c5c021a34e32868f2380965e82b (diff) | |
sched_ext: Improve SCX_KF_DISPATCH comment
The comment for SCX_KF_DISPATCH was incomplete and didn't explain that
ops.dispatch() may temporarily release the rq lock, allowing ENQUEUE and
SELECT_CPU operations to be nested inside DISPATCH contexts.
Update the comment to clarify this nesting behavior and provide better
context for when these operations can occur within dispatch.
Acked-by: Andrea Righi <arighi@nvidia.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
| -rw-r--r-- | include/linux/sched/ext.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/include/linux/sched/ext.h b/include/linux/sched/ext.h index 7047101dbf58..d82b7a9b0658 100644 --- a/include/linux/sched/ext.h +++ b/include/linux/sched/ext.h @@ -108,7 +108,11 @@ enum scx_kf_mask { SCX_KF_UNLOCKED = 0, /* sleepable and not rq locked */ /* ENQUEUE and DISPATCH may be nested inside CPU_RELEASE */ SCX_KF_CPU_RELEASE = 1 << 0, /* ops.cpu_release() */ - /* ops.dequeue (in REST) may be nested inside DISPATCH */ + /* + * ops.dispatch() may release rq lock temporarily and thus ENQUEUE and + * SELECT_CPU may be nested inside. ops.dequeue (in REST) may also be + * nested inside DISPATCH. + */ SCX_KF_DISPATCH = 1 << 1, /* ops.dispatch() */ SCX_KF_ENQUEUE = 1 << 2, /* ops.enqueue() and ops.select_cpu() */ SCX_KF_SELECT_CPU = 1 << 3, /* ops.select_cpu() */ |
