Messages in this thread | | | Date | Tue, 5 Apr 2022 03:59:30 +0900 | Subject | Re: [PATCH] Revert "ACPI: processor: idle: Only flush cache on entering C3" | From | Akihiko Odaki <> |
| |
On 2022/04/05 3:56, Rafael J. Wysocki wrote: > On Mon, Apr 4, 2022 at 8:25 PM Akihiko Odaki <akihiko.odaki@gmail.com> wrote: >> >> On 2022/04/05 3:13, Rafael J. Wysocki wrote: >>> On Sun, Apr 3, 2022 at 8:25 AM Akihiko Odaki <akihiko.odaki@gmail.com> wrote: >>>> >>>> This reverts commit 87ebbb8c612b1214f227ebb8f25442c6d163e802. >>>> >>>> ACPI processor power states can be transitioned in two distinct >>>> situations: 1. when CPU goes idle and 2. before CPU goes offline >>>> ("playing dead") to suspend or hibernate. Case 1 is handled by >>>> acpi_idle_enter or acpi_idle_enter_s2idle. Case 2 is handled by >>>> acpi_idle_play_dead. >>>> >>>> It is necessary to flush CPU caches in case 2 even if it is not >>>> required to transit ACPI processor power states as CPU will go >>>> offline soon. However, the reverted commit incorrectly removed CPU >>>> cache flushing in such a condition. >>> >>> I think what you mean is that the CPU cache must always be flushed in >>> acpi_idle_play_dead(), regardless of the target C-state that is going >>> to be requested, because this is likely to be part of a CPU offline >>> procedure or preparation for entering a system-wide sleep state and >>> the stale cache contents may lead to problems going forward, for >>> example when the CPU is taken back online. >>> >>> If so, I will put the above information into the patch changelog. >> >> I guess it is causing problems because the dirty caches will not get >> written back and the RAM becomes stale if they are not flushed. From my >> understanding, the CPU should have an empty cache and read back contents >> from RAM when it is taken back online. > > OK, please see if the changelog I've added to the patch is looking good: > > https://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git/commit/?h=bleeding-edge&id=dfbba2518aac4204203b0697a894d3b2f80134d3
It looks good for me.
Thanks, Akihiko Odaki
| |