docs/sched: Make the sched-stats documentation consistent

pull_task(), the original function to move the task from src_rq to the
dst_rq during load balancing was renamed to move_tasks() in commit
ddcdf6e7d9 ("sched: Rename load-balancing fields")

As a part of commit 163122b7fc ("sched/fair: Remove
double_lock_balance() from load_balance()"), move_task() was broken down
into detach_tasks() and attach_tasks() pair to avoid holding locks of
both src_rq and dst_rq at the same time during load balancing.

Despite the evolution of pull_task() over the years, the sched-stats
documentation remained unchanged. Update the documentation to refer to
detach_task() instead of pull_task() which is responsible for removing
the task from the src_rq during load balancing.

commit 1c055a0f5d ("sched: Move sched domain name out of
CONFIG_SCHED_DEBUG") moves sched domain name out of CONFIG_SCHED_DEBUG.
Update the documentation related to that.

Reviewed-by: K Prateek Nayak <kprateek.nayak@amd.com>
Suggested-by: Shrikanth Hegde <sshegde@linux.ibm.com>
Signed-off-by: Swapnil Sapkal <swapnil.sapkal@amd.com>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Link: https://lore.kernel.org/r/20250430062559.1188661-1-swapnil.sapkal@amd.com
pull/1279/head
Swapnil Sapkal 2025-04-30 06:25:59 +00:00 committed by Jonathan Corbet
parent 112fe8c2f8
commit d3f8250320
1 changed files with 31 additions and 22 deletions

View File

@ -86,13 +86,16 @@ Domain statistics
----------------- -----------------
One of these is produced per domain for each cpu described. (Note that if One of these is produced per domain for each cpu described. (Note that if
CONFIG_SMP is not defined, *no* domains are utilized and these lines CONFIG_SMP is not defined, *no* domains are utilized and these lines
will not appear in the output. <name> is an extension to the domain field will not appear in the output.)
that prints the name of the corresponding sched domain. It can appear in
schedstat version 17 and above.
domain<N> <name> <cpumask> 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 domain<N> <name> <cpumask> 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
The first field is a bit mask indicating what cpus this domain operates over. The <name> field prints the name of the sched domain and is only supported
with schedstat version >= 17. On previous versions, <cpumask> is the first
field.
The <cpumask> field is a bit mask indicating what cpus this domain operates
over.
The next 33 are a variety of sched_balance_rq() statistics in grouped into types The next 33 are a variety of sched_balance_rq() statistics in grouped into types
of idleness (busy, idle and newly idle): of idleness (busy, idle and newly idle):
@ -103,12 +106,13 @@ of idleness (busy, idle and newly idle):
load did not require balancing when busy load did not require balancing when busy
3) # of times in this domain sched_balance_rq() tried to move one or 3) # of times in this domain sched_balance_rq() tried to move one or
more tasks and failed, when the cpu was busy more tasks and failed, when the cpu was busy
4) Total imbalance in load when the cpu was busy 4) Total imbalance in load in this domain when the cpu was busy
5) Total imbalance in utilization when the cpu was busy 5) Total imbalance in utilization in this domain when the cpu was busy
6) Total imbalance in number of tasks when the cpu was busy 6) Total imbalance in number of tasks in this domain when the cpu was busy
7) Total imbalance due to misfit tasks when the cpu was busy 7) Total imbalance due to misfit tasks in this domain when the cpu was
8) # of times in this domain pull_task() was called when busy busy
9) # of times in this domain pull_task() was called even though the 8) # of times in this domain detach_task() was called when busy
9) # of times in this domain detach_task() was called even though the
target task was cache-hot when busy target task was cache-hot when busy
10) # of times in this domain sched_balance_rq() was called but did not 10) # of times in this domain sched_balance_rq() was called but did not
find a busier queue while the cpu was busy find a busier queue while the cpu was busy
@ -121,13 +125,14 @@ of idleness (busy, idle and newly idle):
the load did not require balancing when the cpu was idle the load did not require balancing when the cpu was idle
14) # of times in this domain sched_balance_rq() tried to move one or 14) # of times in this domain sched_balance_rq() tried to move one or
more tasks and failed, when the cpu was idle more tasks and failed, when the cpu was idle
15) Total imbalance in load when the cpu was idle 15) Total imbalance in load in this domain when the cpu was idle
16) Total imbalance in utilization when the cpu was idle 16) Total imbalance in utilization in this domain when the cpu was idle
17) Total imbalance in number of tasks when the cpu was idle 17) Total imbalance in number of tasks in this domain when the cpu was idle
18) Total imbalance due to misfit tasks when the cpu was idle 18) Total imbalance due to misfit tasks in this domain when the cpu was
19) # of times in this domain pull_task() was called when the cpu idle
19) # of times in this domain detach_task() was called when the cpu
was idle was idle
20) # of times in this domain pull_task() was called even though 20) # of times in this domain detach_task() was called even though
the target task was cache-hot when idle the target task was cache-hot when idle
21) # of times in this domain sched_balance_rq() was called but did 21) # of times in this domain sched_balance_rq() was called but did
not find a busier queue while the cpu was idle not find a busier queue while the cpu was idle
@ -140,12 +145,16 @@ of idleness (busy, idle and newly idle):
load did not require balancing when the cpu was just becoming idle load did not require balancing when the cpu was just becoming idle
25) # of times in this domain sched_balance_rq() tried to move one or more 25) # of times in this domain sched_balance_rq() tried to move one or more
tasks and failed, when the cpu was just becoming idle tasks and failed, when the cpu was just becoming idle
26) Total imbalance in load when the cpu was just becoming idle 26) Total imbalance in load in this domain when the cpu was just becoming
27) Total imbalance in utilization when the cpu was just becoming idle idle
28) Total imbalance in number of tasks when the cpu was just becoming idle 27) Total imbalance in utilization in this domain when the cpu was just
29) Total imbalance due to misfit tasks when the cpu was just becoming idle becoming idle
30) # of times in this domain pull_task() was called when newly idle 28) Total imbalance in number of tasks in this domain when the cpu was just
31) # of times in this domain pull_task() was called even though the becoming idle
29) Total imbalance due to misfit tasks in this domain when the cpu was
just becoming idle
30) # of times in this domain detach_task() was called when newly idle
31) # of times in this domain detach_task() was called even though the
target task was cache-hot when just becoming idle target task was cache-hot when just becoming idle
32) # of times in this domain sched_balance_rq() was called but did not 32) # of times in this domain sched_balance_rq() was called but did not
find a busier queue while the cpu was just becoming idle find a busier queue while the cpu was just becoming idle