From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 94F88C3279B for ; Fri, 6 Jul 2018 12:27:11 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 4E4FF23D22 for ; Fri, 6 Jul 2018 12:27:11 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 4E4FF23D22 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=suse.de Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932910AbeGFM1I (ORCPT ); Fri, 6 Jul 2018 08:27:08 -0400 Received: from mx2.suse.de ([195.135.220.15]:44102 "EHLO mx1.suse.de" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S932657AbeGFM1G (ORCPT ); Fri, 6 Jul 2018 08:27:06 -0400 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay1.suse.de (unknown [195.135.220.254]) by mx1.suse.de (Postfix) with ESMTP id 01501AD27; Fri, 6 Jul 2018 12:27:04 +0000 (UTC) Date: Fri, 06 Jul 2018 14:27:04 +0200 Message-ID: From: Takashi Iwai To: "Rafael J. Wysocki" Cc: Thomas =?UTF-8?B?SMOkbmln?= , Erik Schmauss , Linux PM , Linux Kernel Mailing List , Linux ACPI Subject: Re: [REGRESSION 4.17] Spurious wakeup / reboot with power button In-Reply-To: <1704080.gFTvVrrZA1@aspire.rjw.lan> References: <7049b672-859c-e049-a391-f66e4336d4a9@cosifan.de> <1704080.gFTvVrrZA1@aspire.rjw.lan> User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI/1.14.6 (Maruoka) FLIM/1.14.9 (=?UTF-8?B?R29qxY0=?=) APEL/10.8 Emacs/25.3 (x86_64-suse-linux-gnu) MULE/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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 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); >