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)
commitde212f18e92c952533d57c5510d2790199c75734
tree0eb0755691e582abcc7aa104f68a58527d638c92
parent1724813d9f2c7ff702b46d3e4a4f6d9b10a8f8c2
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