ACPI: processor: idle: Only flush cache on entering C3

According to ACPI 6.4, Section 8.2, CPU cache flushing required on
entering the C3 power state.

Avoid flushing the cache on entering other C-states.

Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
[ rjw: Changelog edits ]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
Kirill A. Shutemov 2021-12-06 15:29:51 +03:00 committed by Rafael J. Wysocki
parent 0e6078c3c6
commit 87ebbb8c61

View file

@ -565,7 +565,8 @@ static int acpi_idle_play_dead(struct cpuidle_device *dev, int index)
{
struct acpi_processor_cx *cx = per_cpu(acpi_cstate[index], dev->cpu);
ACPI_FLUSH_CPU_CACHE();
if (cx->type == ACPI_STATE_C3)
ACPI_FLUSH_CPU_CACHE();
while (1) {