Re: [PATCH] sched: Fix migration_cpu_stop() return value

From: Kirill Tkhai
Date: Wed Jun 04 2014 - 07:18:55 EST


Hi, Peter,

04.06.2014, 14:41, "Peter Zijlstra" <peterz@xxxxxxxxxxxxx>:
>  A while ago I did a similar patch for some debugging, but looking at it
>  again today I realized we should probably fix this anyway.
>
>  ---
>  Subject: sched: Fix migration_cpu_stop() return value
>
>  There are a number of migration_cpu_stop() users; and some actually care
>  about the success of the migration. So report this.
>
>  In particular migrate_task_to() as used from task_numa_migrate()
>  actually tests this return value.
>
>  Also change set_cpus_allowed_ptr() to propagate this return value, since
>  it already returns other errors.
>
>  Cc: Lai Jiangshan <laijs@xxxxxxxxxxxxxx>
>  Cc: Ingo Molnar <mingo@xxxxxxxxxx>
>  Signed-off-by: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
>  ---
>   kernel/sched/core.c |   15 +++++++++++----
>   1 file changed, 11 insertions(+), 4 deletions(-)
(snipped everything because of bad email editor)

In set_cpus_allowed_ptr() p->on_rq branch can not fail.

We've changed affinity and released rq's lock, so task can migrate
on allowed cpu only (even if migration_cpu_stop fails).

And it's a little ambiguously how user should react on this EAGAIN.

Regards,
Kirill.
--
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/