Commit ff615c98 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'locking-urgent-2020-12-06' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull intel_idle build fix from Thomas Gleixner:
 "A tiny build fix for a recent change in the intel_idle driver which
  missed a CONFIG dependency and broke the build for certain
  configurations"

* tag 'locking-urgent-2020-12-06' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  intel_idle: Build fix
parents e6585a49 4d916140
Loading
Loading
Loading
Loading
+14 −14
Original line number Diff line number Diff line
@@ -1140,6 +1140,20 @@ static bool __init intel_idle_max_cstate_reached(int cstate)
	return false;
}

static bool __init intel_idle_state_needs_timer_stop(struct cpuidle_state *state)
{
	unsigned long eax = flg2MWAIT(state->flags);

	if (boot_cpu_has(X86_FEATURE_ARAT))
		return false;

	/*
	 * Switch over to one-shot tick broadcast if the target C-state
	 * is deeper than C1.
	 */
	return !!((eax >> MWAIT_SUBSTATE_SIZE) & MWAIT_CSTATE_MASK);
}

#ifdef CONFIG_ACPI_PROCESSOR_CSTATE
#include <acpi/processor.h>

@@ -1210,20 +1224,6 @@ static bool __init intel_idle_acpi_cst_extract(void)
	return false;
}

static bool __init intel_idle_state_needs_timer_stop(struct cpuidle_state *state)
{
	unsigned long eax = flg2MWAIT(state->flags);

	if (boot_cpu_has(X86_FEATURE_ARAT))
		return false;

	/*
	 * Switch over to one-shot tick broadcast if the target C-state
	 * is deeper than C1.
	 */
	return !!((eax >> MWAIT_SUBSTATE_SIZE) & MWAIT_CSTATE_MASK);
}

static void __init intel_idle_init_cstates_acpi(struct cpuidle_driver *drv)
{
	int cstate, limit = min_t(int, CPUIDLE_STATE_MAX, acpi_state_table.count);