mirror of https://gitee.com/openkylin/linux.git
perfcounters: fix acpi_idle_do_entry() workaround
Fix merge error in drivers/acpi/processor_idle.c. This resulted in non-working perfcounters on certain Nehalem systems. Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
73ca2f8380
commit
37a2542425
|
@ -826,12 +826,9 @@ static inline void acpi_idle_do_entry(struct acpi_processor_cx *cx)
|
||||||
{
|
{
|
||||||
u64 perf_flags;
|
u64 perf_flags;
|
||||||
|
|
||||||
u64 pctrl;
|
|
||||||
|
|
||||||
/* Don't trace irqs off for idle */
|
/* Don't trace irqs off for idle */
|
||||||
stop_critical_timings();
|
stop_critical_timings();
|
||||||
perf_flags = hw_perf_save_disable();
|
perf_flags = hw_perf_save_disable();
|
||||||
pctrl = hw_perf_save_disable();
|
|
||||||
if (cx->entry_method == ACPI_CSTATE_FFH) {
|
if (cx->entry_method == ACPI_CSTATE_FFH) {
|
||||||
/* Call into architectural FFH based C-state */
|
/* Call into architectural FFH based C-state */
|
||||||
acpi_processor_ffh_cstate_enter(cx);
|
acpi_processor_ffh_cstate_enter(cx);
|
||||||
|
@ -847,7 +844,6 @@ static inline void acpi_idle_do_entry(struct acpi_processor_cx *cx)
|
||||||
unused = inl(acpi_gbl_FADT.xpm_timer_block.address);
|
unused = inl(acpi_gbl_FADT.xpm_timer_block.address);
|
||||||
}
|
}
|
||||||
hw_perf_restore(perf_flags);
|
hw_perf_restore(perf_flags);
|
||||||
hw_perf_restore(pctrl);
|
|
||||||
start_critical_timings();
|
start_critical_timings();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue