Commit 62c4cf97 authored by Len Brown's avatar Len Brown Committed by Rafael J. Wysocki
Browse files

cpuidle / ACPI: remove unused CPUIDLE_FLAG_TIME_INVALID

CPUIDLE_FLAG_TIME_INVALID is no longer checked
by menu or ladder cpuidle governors, so don't
bother setting or defining it.

It was originally invented to account for the fact that
acpi_safe_halt() enables interrupts to invoke HLT.
That would allow interrupt service routines to be included
in the last_idle duration measurements made in cpuidle_enter_state(),
potentially returning a duration much larger than reality.

But menu and ladder can gracefully handle erroneously large duration
intervals without checking for CPUIDLE_FLAG_TIME_INVALID.
Further, if they don't check CPUIDLE_FLAG_TIME_INVALID, they
can also benefit from the instances when the duration interval
is not erroneously large.

Signed-off-by: default avatarLen Brown <>
Acked-by: default avatarDaniel Lezcano <>
Signed-off-by: default avatarRafael J. Wysocki <>
parent b73026b9
......@@ -985,8 +985,6 @@ static int acpi_processor_setup_cpuidle_states(struct acpi_processor *pr)
state->flags = 0;
switch (cx->type) {
if (cx->entry_method != ACPI_CSTATE_FFH)
state->enter = acpi_idle_enter_c1;
state->enter_dead = acpi_idle_play_dead;
......@@ -53,7 +53,6 @@ struct cpuidle_state {
/* Idle State Flags */
#define CPUIDLE_FLAG_TIME_INVALID (0x01) /* is residency time measurable? */
#define CPUIDLE_FLAG_COUPLED (0x02) /* state applies to multiple cpus */
#define CPUIDLE_FLAG_TIMER_STOP (0x04) /* timer is stopped on this state */
......@@ -89,8 +88,6 @@ DECLARE_PER_CPU(struct cpuidle_device, cpuidle_dev);
* cpuidle_get_last_residency - retrieves the last state's residency time
* @dev: the target CPU
* NOTE: this value is invalid if CPUIDLE_FLAG_TIME_INVALID is set
static inline int cpuidle_get_last_residency(struct cpuidle_device *dev)
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment