Re: [PATCH] sched,numa: always try to migrate to preferred node at task_numa_placement time

From: Peter Zijlstra
Date: Fri Jun 06 2014 - 13:18:10 EST


On Wed, Jun 04, 2014 at 04:33:15PM -0400, Rik van Riel wrote:
> 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.

So we have that numa_migrate_retry which was supposed to keep kicking
the task until it got where it needed to go.

But now you continuously kick from task_numa_placement().

Clearly the retry thing didn't work, what happened? We got to the
preferred nid, disabled the retry and got moved away again?

Do we want to remove the retry logic in favour of this more aggressive
form?

> @@ -1575,11 +1575,13 @@ static void task_numa_placement(struct task_struct *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);
> }
>


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/