public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] sched,numa: always try to migrate to preferred node at task_numa_placement time
@ 2014-06-04 20:33 Rik van Riel
  2014-06-06 17:18 ` Peter Zijlstra
  2014-06-19 12:36 ` [tip:sched/core] sched/numa: Always try to migrate to preferred node at task_numa_placement() time tip-bot for Rik van Riel
  0 siblings, 2 replies; 5+ messages in thread
From: Rik van Riel @ 2014-06-04 20:33 UTC (permalink / raw)
  To: linux-kernel; +Cc: peterz, mgorman, mingo

It is possible that at task_numa_placement time, the task's
numa_preferred_nid does not change, but the task is not
actually running on the preferred node at the time.

In that case, we still want to attempt migration to the
preferred node.

Signed-off-by: Rik van Riel <riel@redhat.com>
---
 kernel/sched/fair.c | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
index 0fdb96d..708c6a9 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -1575,11 +1575,13 @@ static void task_numa_placement(struct task_struct *p)
 		spin_unlock_irq(group_lock);
 	}
 
-	/* Preferred node as the node with the most faults */
-	if (max_faults && max_nid != p->numa_preferred_nid) {
-		/* Update the preferred nid and migrate task if possible */
-		sched_setnuma(p, max_nid);
-		numa_migrate_preferred(p);
+	if (max_faults) {
+		/* Set the new preferred node */
+		if (max_nid != p->numa_preferred_nid)
+			sched_setnuma(p, max_nid);
+
+		if (task_node(p) != p->numa_preferred_nid)
+			numa_migrate_preferred(p);
 	}
 }
 

^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2014-06-19 12:37 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-06-04 20:33 [PATCH] sched,numa: always try to migrate to preferred node at task_numa_placement time Rik van Riel
2014-06-06 17:18 ` Peter Zijlstra
2014-06-06 18:23   ` Rik van Riel
2014-06-10 15:07     ` Peter Zijlstra
2014-06-19 12:36 ` [tip:sched/core] sched/numa: Always try to migrate to preferred node at task_numa_placement() time tip-bot for Rik van Riel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox