diff options
author | Tejun Heo <tj@kernel.org> | 2024-09-27 13:46:12 -1000 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2024-10-07 10:16:18 -1000 |
commit | f207dc2dcdcf0e1e7d260b392784855ce8d84147 (patch) | |
tree | c1133ab002eefb3c22fbacdd914dd899859a8319 /tools/perf/scripts/python/export-to-sqlite.py | |
parent | b62933eee41e2909422c2c3d7fdb56217913faf9 (diff) |
sched/core: Add ENQUEUE_RQ_SELECTED to indicate whether ->select_task_rq() was called
During ttwu, ->select_task_rq() can be skipped if only one CPU is allowed or
migration is disabled. sched_ext schedulers may perform operations such as
direct dispatch from ->select_task_rq() path and it is useful for them to
know whether ->select_task_rq() was skipped in the ->enqueue_task() path.
Currently, sched_ext schedulers are using ENQUEUE_WAKEUP for this purpose
and end up assuming incorrectly that ->select_task_rq() was called for tasks
that are bound to a single CPU or migration disabled.
Make select_task_rq() indicate whether ->select_task_rq() was called by
setting WF_RQ_SELECTED in *wake_flags and make ttwu_do_activate() map that
to ENQUEUE_RQ_SELECTED for ->enqueue_task().
This will be used by sched_ext to fix ->select_task_rq() skip detection.
Signed-off-by: Tejun Heo <tj@kernel.org>
Acked-by: David Vernet <void@manifault.com>
Diffstat (limited to 'tools/perf/scripts/python/export-to-sqlite.py')
0 files changed, 0 insertions, 0 deletions