[PATCH 1/6] sched/numa: Document vma_numab_state fields

Mel Gorman posted 6 patches 2 years, 2 months ago
[PATCH 1/6] sched/numa: Document vma_numab_state fields
Posted by Mel Gorman 2 years, 2 months ago
Document the intended usage of the fields.

Signed-off-by: Mel Gorman <mgorman@techsingularity.net>
---
 include/linux/mm_types.h | 30 +++++++++++++++++++++++++++---
 1 file changed, 27 insertions(+), 3 deletions(-)

diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h
index 36c5b43999e6..0fe054afc4d6 100644
--- a/include/linux/mm_types.h
+++ b/include/linux/mm_types.h
@@ -551,9 +551,33 @@ struct vma_lock {
 };
 
 struct vma_numab_state {
-	unsigned long next_scan;
-	unsigned long next_pid_reset;
-	unsigned long access_pids[2];
+	unsigned long next_scan;		/* Initialised as time in
+						 * jiffies after which VMA
+						 * should be scanned.  Delays
+						 * first scan of new VMA by at
+						 * least
+						 * sysctl_numa_balancing_scan_delay
+						 */
+	unsigned long next_pid_reset;		/* Time in jiffies when
+						 * access_pids is reset to
+						 * detect phase change
+						 * behaviour.
+						 */
+	unsigned long access_pids[2];		/* Approximate tracking of PIDS
+						 * that trapped a NUMA hinting
+						 * fault. May produce false
+						 * positives due to hash
+						 * collisions.
+						 *
+						 * [0] Previous PID tracking
+						 * [1] Current PID tracking
+						 *
+						 * Window moves after
+						 * next_pid_reset has expired
+						 * approximately every
+						 * VMA_PID_RESET_PERIOD
+						 * jiffies.
+						 */
 };
 
 /*
-- 
2.35.3
[tip: sched/core] sched/numa: Document vma_numab_state fields
Posted by tip-bot2 for Mel Gorman 2 years, 2 months ago
The following commit has been merged into the sched/core branch of tip:

Commit-ID:     9ae5c00ea2e600a8b823f9b95606dd244f3096bf
Gitweb:        https://git.kernel.org/tip/9ae5c00ea2e600a8b823f9b95606dd244f3096bf
Author:        Mel Gorman <mgorman@techsingularity.net>
AuthorDate:    Tue, 10 Oct 2023 09:31:38 +01:00
Committer:     Ingo Molnar <mingo@kernel.org>
CommitterDate: Tue, 10 Oct 2023 11:10:00 +02:00

sched/numa: Document vma_numab_state fields

Document the intended usage of the fields.

[ mingo: Reformatted to take less vertical space & tidied it up. ]

Signed-off-by: Mel Gorman <mgorman@techsingularity.net>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Link: https://lore.kernel.org/r/20231010083143.19593-2-mgorman@techsingularity.net
---
 include/linux/mm_types.h | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h
index 36c5b43..d7f042e 100644
--- a/include/linux/mm_types.h
+++ b/include/linux/mm_types.h
@@ -551,8 +551,29 @@ struct vma_lock {
 };
 
 struct vma_numab_state {
+	/*
+	 * Initialised as time in 'jiffies' after which VMA
+	 * should be scanned.  Delays first scan of new VMA by at
+	 * least sysctl_numa_balancing_scan_delay:
+	 */
 	unsigned long next_scan;
+
+	/*
+	 * Time in jiffies when access_pids[] is reset to
+	 * detect phase change behaviour:
+	 */
 	unsigned long next_pid_reset;
+
+	/*
+	 * Approximate tracking of PIDs that trapped a NUMA hinting
+	 * fault. May produce false positives due to hash collisions.
+	 *
+	 *   [0] Previous PID tracking
+	 *   [1] Current PID tracking
+	 *
+	 * Window moves after next_pid_reset has expired approximately
+	 * every VMA_PID_RESET_PERIOD jiffies:
+	 */
 	unsigned long access_pids[2];
 };