]> git.baikalelectronics.ru Git - kernel.git/commit
sched/deadline: Fix hotplug admission control
authorPeter Zijlstra <peterz@infradead.org>
Thu, 19 Dec 2013 10:54:45 +0000 (11:54 +0100)
committerIngo Molnar <mingo@kernel.org>
Mon, 13 Jan 2014 12:47:25 +0000 (13:47 +0100)
commit80b25637c48a400eb4cb3fa2a9aa3e4639f00bb0
tree0eb0755691e582abcc7aa104f68a58527d638c92
parentbb7b09911d7d2d7a6e5079faa1a9e2ee9cac5eef
sched/deadline: Fix hotplug admission control

The current hotplug admission control is broken because:

  CPU_DYING -> migration_call() -> migrate_tasks() -> __migrate_task()

cannot fail and hard assumes it _will_ move all tasks off of the dying
cpu, failing this will break hotplug.

The much simpler solution is a DOWN_PREPARE handler that fails when
removing one CPU gets us below the total allocated bandwidth.

Signed-off-by: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/20131220171343.GL2480@laptop.programming.kicks-ass.net
Signed-off-by: Ingo Molnar <mingo@kernel.org>
kernel/sched/core.c