mirror of
git://git.yoctoproject.org/linux-yocto.git
synced 2025-10-23 07:23:12 +02:00
sched_ext: Explain the temporary situation around scx_root dereferences
Naked scx_root dereferences are being used as temporary markers to indicate that they need to be updated to point to the right scheduler instance. Explain the situation. Signed-off-by: Tejun Heo <tj@kernel.org> Acked-by: Andrea Righi <arighi@nvidia.com>
This commit is contained in:
parent
a8433f7a26
commit
cb4ff91492
|
@ -1016,6 +1016,14 @@ enum scx_ops_state {
|
|||
#define SCX_OPSS_STATE_MASK ((1LU << SCX_OPSS_QSEQ_SHIFT) - 1)
|
||||
#define SCX_OPSS_QSEQ_MASK (~SCX_OPSS_STATE_MASK)
|
||||
|
||||
/*
|
||||
* NOTE: sched_ext is in the process of growing multiple scheduler support and
|
||||
* scx_root usage is in a transitional state. Naked dereferences are safe if the
|
||||
* caller is one of the tasks attached to SCX and explicit RCU dereference is
|
||||
* necessary otherwise. Naked scx_root dereferences trigger sparse warnings but
|
||||
* are used as temporary markers to indicate that the dereferences need to be
|
||||
* updated to point to the associated scheduler instances rather than scx_root.
|
||||
*/
|
||||
static struct scx_sched __rcu *scx_root;
|
||||
|
||||
/*
|
||||
|
|
Loading…
Reference in New Issue
Block a user