cpu: Make CPU-offline idle-loop transition point more precise
authorPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Wed, 28 Jan 2015 22:09:43 +0000 (14:09 -0800)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Thu, 12 Mar 2015 22:19:37 +0000 (15:19 -0700)
commit528a25b00e1f84eaba6c98e63f58ee0a8e472102
tree449e267d06f42020bcaaae7a218710112bedd38e
parentc199068913c9c5cbb5498e289bb387703e087ea8
cpu: Make CPU-offline idle-loop transition point more precise

This commit uses a per-CPU variable to make the CPU-offline code path
through the idle loop more precise, so that the outgoing CPU is
guaranteed to make it into the idle loop before it is powered off.
This commit is in preparation for putting the RCU offline-handling
code on this code path, which will eliminate the magic one-jiffy
wait that RCU uses as the maximum time for an outgoing CPU to get
all the way through the scheduler.

The magic one-jiffy wait for incoming CPUs remains a separate issue.

Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
kernel/cpu.c
kernel/sched/idle.c