diff options
author | Aboorva Devarajan <aboorvad@linux.vnet.ibm.com> | 2022-11-14 20:26:11 +0530 |
---|---|---|
committer | Michael Ellerman <mpe@ellerman.id.au> | 2022-12-06 23:18:19 +1100 |
commit | 5ddcc03a07ae1ab5062f89a946d9495f1fd8eaa4 (patch) | |
tree | ae29ca36496384c3459a8f1b31485faa1b1904e9 /include/linux/seg6_local.h | |
parent | 3ae7c96dd51025550c8001c6f833337f11d00807 (diff) | |
download | linux-5ddcc03a07ae1ab5062f89a946d9495f1fd8eaa4.tar.gz linux-5ddcc03a07ae1ab5062f89a946d9495f1fd8eaa4.tar.bz2 linux-5ddcc03a07ae1ab5062f89a946d9495f1fd8eaa4.zip |
powerpc/cpuidle: Set CPUIDLE_FLAG_POLLING for snooze state
During the comparative study of cpuidle governors, it is noticed that the
menu governor does not select CEDE state in some scenarios even though when
the sleep duration of the CPU exceeds the target residency of the CEDE idle
state this is because the CPU exits the snooze "polling" state when snooze
time limit is reached in the snooze_loop(), which is not a real wake up
and it just means that the polling state selection was not adequate.
cpuidle governors rely on CPUIDLE_FLAG_POLLING flag to be set for the
polling states to handle the condition mentioned above.
Hence, set the CPUIDLE_FLAG_POLLING flag for snooze state (polling state)
in powerpc arch to make the cpuidle governor work as expected.
Reference Commits:
- Timeout enabled for snooze state:
commit 78eaa10f027c
("cpuidle: powernv/pseries: Auto-promotion of snooze to deeper idle state")
- commit dc2251bf98c6
("cpuidle: Eliminate the CPUIDLE_DRIVER_STATE_START symbol")
- Fix wakeup stats in governor for polling states
commit 5f26bdceb9c0
("cpuidle: menu: Fix wakeup statistics updates for polling state")
Signed-off-by: Aboorva Devarajan <aboorvad@linux.vnet.ibm.com>
Tested-by: Vishal Chourasia <vishalc@linux.vnet.ibm.com>
Reviewed-by: Vaidyanathan Srinivasan <svaidy@linux.ibm.com>
Reviewed-by: Vishal Chourasia <vishalc@linux.vnet.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20221114145611.37669-1-aboorvad@linux.vnet.ibm.com
Diffstat (limited to 'include/linux/seg6_local.h')
0 files changed, 0 insertions, 0 deletions