[PATCH] cpuidle: use first valid target residency as poll time

From: Marcelo Tosatti
Date: Fri Dec 06 2019 - 11:17:07 EST



commit 259231a045616c4101d023a8f4dcc8379af265a6 changed, by mistake,
the target residency from the first available sleep state to the last
available sleep state (which should be longer).

This might cause excessive polling.

Fixes: 259231a045616c4101d023a8f4dcc8379af265a6

Signed-off-by: Marcelo Tosatti <mtosatti@xxxxxxxxxx>

diff --git a/drivers/cpuidle/cpuidle.c b/drivers/cpuidle/cpuidle.c
index 0005be5ea2b4..15877b431143 100644
--- a/drivers/cpuidle/cpuidle.c
+++ b/drivers/cpuidle/cpuidle.c
@@ -382,6 +382,7 @@ u64 cpuidle_poll_time(struct cpuidle_driver *drv,
continue;

limit_ns = (u64)drv->states[i].target_residency_ns;
+ break;
}

dev->poll_limit_ns = limit_ns;