Commit db1ae0c9 authored by Artem Bityutskiy's avatar Artem Bityutskiy Committed by Rafael J. Wysocki
Browse files

intel_idle: fix confusing message



By default, all non-POLL C-states are entered with interrupts disabled.

There are 2 ways to make 'intel_idle' enter C-states with interrupts
enabled:
  1. Mark the C-state with the CPUIDLE_FLAG_IRQ_ENABLE flag.
  2. Use the force_irq_on module parameter.

The former is the "proper" way of doing it, it is per-C-state and
per-platform. The latter is for debugging purposes only.

The problem is that intel_idle prints the "forced intel_idle_irq"
message in both cases, even though the former case does not needed
this message, because nothing is forced there. This patch addresses the
problem.

Signed-off-by: default avatarArtem Bityutskiy <artem.bityutskiy@linux.intel.com>
Reviewed-by: default avatarZhang Rui <rui.zhang@intel.com>
Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
parent 00433eae
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -1912,8 +1912,9 @@ static void __init intel_idle_init_cstates_icpu(struct cpuidle_driver *drv)
			 */
			WARN_ON_ONCE(state->flags & CPUIDLE_FLAG_IRQ_ENABLE);
			state->enter = intel_idle_ibrs;
		} else if ((state->flags & CPUIDLE_FLAG_IRQ_ENABLE) ||
			   force_irq_on) {
		} else if (state->flags & CPUIDLE_FLAG_IRQ_ENABLE) {
			state->enter = intel_idle_irq;
		} else if (force_irq_on) {
			pr_info("forced intel_idle_irq for state %d\n", cstate);
			state->enter = intel_idle_irq;
		}