Message ID | 20211206122952.74139-4-kirill.shutemov@linux.intel.com |
---|---|
State | Accepted |
Commit | 87ebbb8c612b1214f227ebb8f25442c6d163e802 |
Headers | show |
Series | ACPI/ACPICA: Only flush caches on S1/S2/S3 and C3 | expand |
diff --git a/drivers/acpi/processor_idle.c b/drivers/acpi/processor_idle.c index 76ef1bcc8848..01495aca850e 100644 --- a/drivers/acpi/processor_idle.c +++ b/drivers/acpi/processor_idle.c @@ -567,7 +567,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) {
According to the ACPI spec v6.4, section 8.2, cache flushing required on entering C3 power state. Avoid flushing cache on entering other power states. Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com> --- drivers/acpi/processor_idle.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)