[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAJZ5v0ipP8JP01L7E4FwL1K6woda4oBKMxgLRfOiNYujzoY37w@mail.gmail.com>
Date: Sun, 8 Jul 2018 10:18:22 +0200
From: "Rafael J. Wysocki" <rafael@...nel.org>
To: Thomas Hänig <haenig@...ifan.de>
Cc: Takashi Iwai <tiwai@...e.de>,
"Rafael J. Wysocki" <rjw@...ysocki.net>,
Erik Schmauss <erik.schmauss@...el.com>,
Linux PM <linux-pm@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Linux ACPI <linux-acpi@...r.kernel.org>
Subject: Re: [REGRESSION 4.17] Spurious wakeup / reboot with power button
On Fri, Jul 6, 2018 at 7:57 PM, Thomas Hänig <haenig@...ifan.de> wrote:
>
>
> Am 06.07.2018 um 14:27 schrieb Takashi Iwai:
>> On Fri, 06 Jul 2018 14:13:04 +0200,
>> Rafael J. Wysocki wrote:
>>>
>>> On Friday, July 6, 2018 1:21:50 PM CEST Rafael J. Wysocki wrote:
>>>> On Fri, Jul 6, 2018 at 1:12 PM, Thomas Hänig <haenig@...ifan.de> wrote:
>>>
>>> [cut]
>>>
>>>> So the latest patch:
>>>>
>>>> https://patchwork.kernel.org/patch/10511211/
>>>>
>>>> should work for you (please verify) and the change in
>>>> drivers/acpi/sleep.c in it most likely is not necessary.
>>>>
>>>> If you can confirm that this one works for you, I'll send a smaller
>>>> one with the acpi_hw_legacy_sleep() part alone.
>>>
>>> Well, scratch this, sorry.
>>>
>>> The power button probably is a fixed event and it won't be effected by
>>> that patch.
>>>
>>> Instead, please test the patch below.
>>
>> FWIW, the test kernel on OBS home:tiwai:bsc1099930-3 was refreshed
>> with this one. The release number will be *.g2351e2d.
>>
>>
>> Takashi
>>
>>>
>>> ---
>>> drivers/acpi/acpica/hwsleep.c | 15 +++++++++++----
>>> 1 file changed, 11 insertions(+), 4 deletions(-)
>>>
>>> Index: linux-pm/drivers/acpi/acpica/hwsleep.c
>>> ===================================================================
>>> --- linux-pm.orig/drivers/acpi/acpica/hwsleep.c
>>> +++ linux-pm/drivers/acpi/acpica/hwsleep.c
>>> @@ -51,16 +51,23 @@ acpi_status acpi_hw_legacy_sleep(u8 slee
>>> return_ACPI_STATUS(status);
>>> }
>>>
>>> - /*
>>> - * 1) Disable all GPEs
>>> - * 2) Enable all wakeup GPEs
>>> - */
>>> + /* Disable all GPEs */
>>> status = acpi_hw_disable_all_gpes();
>>> if (ACPI_FAILURE(status)) {
>>> return_ACPI_STATUS(status);
>>> }
>>> + /*
>>> + * If the target sleep state is S5, clear all GPEs and fixed events too
>>> + */
>>> + if (sleep_state == ACPI_STATE_S5) {
>>> + status = acpi_hw_clear_acpi_status();
>>> + if (ACPI_FAILURE(status)) {
>>> + return_ACPI_STATUS(status);
>>> + }
>>> + }
>>> acpi_gbl_system_awake_and_running = FALSE;
>>>
>>> + /* Enable all wakeup GPEs */
>>> status = acpi_hw_enable_all_wakeup_gpes();
>>> if (ACPI_FAILURE(status)) {
>>> return_ACPI_STATUS(status);
>>>
> Hello Takashi,
> with the kernel built by you the system shuts down when pressing the
> power button and stays off too! :-)
>
> So the above mentioned patch to hwsleep.c seems to do the trick.
OK, thanks for verifying!
> Regards and thanks a lot @all!
Cheers,
Rafael
Powered by blists - more mailing lists