OSDN Git Service

sched / idle: Eliminate the "reflect" check from cpuidle_idle_call()
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>
Mon, 4 May 2015 20:53:35 +0000 (22:53 +0200)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Mon, 4 May 2015 20:53:35 +0000 (22:53 +0200)
commitbcf6ad8a4a3d002e8bc8f6639cdc119168f4e87b
tree6536efb9c4c8d199aca4118af959d79192bab716
parenta802ea96454570f3c526dd9d7ad8c706e570444d
sched / idle: Eliminate the "reflect" check from cpuidle_idle_call()

Since cpuidle_reflect() should only be called if the idle state
to enter was selected by cpuidle_select(), there is the "reflect"
variable in cpuidle_idle_call() whose value is used to determine
whether or not that is the case.

However, if the entire code run between the conditional setting
"reflect" and the call to cpuidle_reflect() is moved to a separate
function, it will be possible to call that new function in both
branches of the conditional, in which case cpuidle_reflect() will
only need to be called from one of them too and the "reflect"
variable won't be necessary any more.

This eliminates one check made by cpuidle_idle_call() on the majority
of its invocations, so change the code as described.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Reviewed-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
kernel/sched/idle.c