提交 62c4cf97 编写于 作者: L Len Brown 提交者: Rafael J. Wysocki

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: NLen Brown <len.brown@intel.com>
Acked-by: NDaniel Lezcano <daniel.lezcano@linaro.org>
Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
上级 b73026b9
...@@ -985,8 +985,6 @@ static int acpi_processor_setup_cpuidle_states(struct acpi_processor *pr) ...@@ -985,8 +985,6 @@ static int acpi_processor_setup_cpuidle_states(struct acpi_processor *pr)
state->flags = 0; state->flags = 0;
switch (cx->type) { switch (cx->type) {
case ACPI_STATE_C1: case ACPI_STATE_C1:
if (cx->entry_method != ACPI_CSTATE_FFH)
state->flags |= CPUIDLE_FLAG_TIME_INVALID;
state->enter = acpi_idle_enter_c1; state->enter = acpi_idle_enter_c1;
state->enter_dead = acpi_idle_play_dead; state->enter_dead = acpi_idle_play_dead;
......
...@@ -53,7 +53,6 @@ struct cpuidle_state { ...@@ -53,7 +53,6 @@ struct cpuidle_state {
}; };
/* Idle State Flags */ /* 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_COUPLED (0x02) /* state applies to multiple cpus */
#define CPUIDLE_FLAG_TIMER_STOP (0x04) /* timer is stopped on this state */ #define CPUIDLE_FLAG_TIMER_STOP (0x04) /* timer is stopped on this state */
...@@ -89,8 +88,6 @@ DECLARE_PER_CPU(struct cpuidle_device, cpuidle_dev); ...@@ -89,8 +88,6 @@ DECLARE_PER_CPU(struct cpuidle_device, cpuidle_dev);
/** /**
* cpuidle_get_last_residency - retrieves the last state's residency time * cpuidle_get_last_residency - retrieves the last state's residency time
* @dev: the target CPU * @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) static inline int cpuidle_get_last_residency(struct cpuidle_device *dev)
{ {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册