On 03/07/2016 03:26 AM, Daniel Thompson wrote:
Chris Metcalf wrote: +static DEFINE_PER_CPU(bool, cpu_idling); + +/* Was the cpu was in the low-level idle code when interrupted? */ +bool in_cpu_idle(void) +{ + return this_cpu_read(cpu_idling);I think we continue to need the code to identify a core that is running an interrupt handler. Interrupts are not masked at the point we set cpu_idling to false meaning we can easily be preempted before we clear the flag.
Yes, good catch. However, mooted by PeterZ wanting to keep any extra state-switching code out of the idle path. See my reply to him for more on that.
-- Chris Metcalf, Mellanox Technologies http://www.mellanox.com

