mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs.git
synced 2026-11-03 16:13:17 +01:00
cpuidle: teo: Combine candidate state index checks against 0
There are two candidate state index checks against 0 in teo_select() that need not be separate, so combine them and update comments around them. No intentional functional impact. Signed-off-by: Rafael J. Wysocki <[email protected]> Reviewed-by: Christian Loehle <[email protected]> Tested-by: Aboorva Devarajan <[email protected]> Tested-by: Christian Loehle <[email protected]> Link: https://patch.msgid.link/[email protected]
This commit is contained in:
1 parent
92ce5c07b7
commit
ea185406d1
1 file changed
+9
-14
@@ -436,23 +436,18 @@ static int teo_select(struct cpuidle_driver *drv, struct cpuidle_device *dev,
|
||||
if (idx > constraint_idx)
|
||||
idx = constraint_idx;
|
||||
|
||||
if (!idx && prev_intercept_idx) {
|
||||
/*
|
||||
* We have to query the sleep length here otherwise we don't
|
||||
* know after wakeup if our guess was correct.
|
||||
*/
|
||||
duration_ns = tick_nohz_get_sleep_length(&delta_tick);
|
||||
cpu_data->sleep_length_ns = duration_ns;
|
||||
if (!idx) {
|
||||
if (prev_intercept_idx) {
|
||||
/*
|
||||
* Query the sleep length to be able to count the wakeup
|
||||
* as a hit if it is caused by a timer.
|
||||
*/
|
||||
duration_ns = tick_nohz_get_sleep_length(&delta_tick);
|
||||
cpu_data->sleep_length_ns = duration_ns;
|
||||
}
|
||||
goto out_tick;
|
||||
}
|
||||
|
||||
/*
|
||||
* Skip the timers check if state 0 is the current candidate one,
|
||||
* because an immediate non-timer wakeup is expected in that case.
|
||||
*/
|
||||
if (!idx)
|
||||
goto out_tick;
|
||||
|
||||
/*
|
||||
* If state 0 is a polling one, check if the target residency of
|
||||
* the current candidate state is low enough and skip the timers
|
||||
|
||||
Reference in new issue
Block a user