Revert "ACPI: PM: s2idle: Cancel wakeup before dispatching EC GPE"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

This reverts commit 4287509b4d21e34dc49266c6239920811e189e40 which is
commit dc0075ba7f387fe4c48a8c674b11ab6f374a6acc upstream.

It's been reported to cause problems with a number of Fedora and Arch
Linux users, so drop it for now until that is resolved.

Link: https://lore.kernel.org/r/CAJZ5v0gE52NT=4kN4MkhV3Gx=M5CeMGVHOF0jgTXDb5WwAMs_Q@xxxxxxxxxxxxxx
Link: https://lore.kernel.org/r/31b9d1cd-6a67-218b-4ada-12f72e6f00dc@xxxxxxxxxx
Reported-by: Hans de Goede <hdegoede@xxxxxxxxxx>
Reported-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
Cc: Sasha Levin <sashal@xxxxxxxxxx>
Cc: Justin Forbes <jmforbes@xxxxxxxxxxx>
Cc: Mark Pearson <markpearson@xxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
---
 drivers/acpi/ec.c    |   10 ----------
 drivers/acpi/sleep.c |   14 ++++++++++----
 2 files changed, 10 insertions(+), 14 deletions(-)

--- a/drivers/acpi/ec.c
+++ b/drivers/acpi/ec.c
@@ -2052,16 +2052,6 @@ bool acpi_ec_dispatch_gpe(void)
 		return true;
 
 	/*
-	 * Cancel the SCI wakeup and process all pending events in case there
-	 * are any wakeup ones in there.
-	 *
-	 * Note that if any non-EC GPEs are active at this point, the SCI will
-	 * retrigger after the rearming in acpi_s2idle_wake(), so no events
-	 * should be missed by canceling the wakeup here.
-	 */
-	pm_system_cancel_wakeup();
-
-	/*
 	 * Dispatch the EC GPE in-band, but do not report wakeup in any case
 	 * to allow the caller to process events properly after that.
 	 */
--- a/drivers/acpi/sleep.c
+++ b/drivers/acpi/sleep.c
@@ -739,15 +739,21 @@ bool acpi_s2idle_wake(void)
 			return true;
 		}
 
-		/*
-		 * Check non-EC GPE wakeups and if there are none, cancel the
-		 * SCI-related wakeup and dispatch the EC GPE.
-		 */
+		/* Check non-EC GPE wakeups and dispatch the EC GPE. */
 		if (acpi_ec_dispatch_gpe()) {
 			pm_pr_dbg("ACPI non-EC GPE wakeup\n");
 			return true;
 		}
 
+		/*
+		 * Cancel the SCI wakeup and process all pending events in case
+		 * there are any wakeup ones in there.
+		 *
+		 * Note that if any non-EC GPEs are active at this point, the
+		 * SCI will retrigger after the rearming below, so no events
+		 * should be missed by canceling the wakeup here.
+		 */
+		pm_system_cancel_wakeup();
 		acpi_os_wait_events_complete();
 
 		/*


Patches currently in stable-queue which might be from gregkh@xxxxxxxxxxxxxxxxxxx are

queue-5.16/arm-report-spectre-v2-status-through-sysfs.patch
queue-5.16/arm64-entry-add-macro-for-reading-symbol-addresses-from-the-trampoline.patch
queue-5.16/arm-do-not-use-nocrossrefs-directive-with-ld.lld.patch
queue-5.16/arm64-use-the-clearbhb-instruction-in-mitigations.patch
queue-5.16/arm64-add-percpu-vectors-for-el1.patch
queue-5.16/arm-fix-build-error-when-bpf_syscall-is-disabled.patch
queue-5.16/arm-fix-build-warning-in-proc-v7-bugs.c.patch
queue-5.16/x86-speculation-use-generic-retpoline-by-default-on-amd.patch
queue-5.16/xen-remove-gnttab_query_foreign_access.patch
queue-5.16/xen-netfront-don-t-use-gnttab_query_foreign_access-for-mapped-status.patch
queue-5.16/arm64-entry-free-up-another-register-on-kpti-s-tramp_exit-path.patch
queue-5.16/documentation-hw-vuln-update-spectre-doc.patch
queue-5.16/arm-fix-co-processor-register-typo.patch
queue-5.16/arm64-entry-don-t-assume-tramp_vectors-is-the-start-of-the-vectors.patch
queue-5.16/arm-spectre-bhb-workaround.patch
queue-5.16/arm64-entry-make-the-trampoline-cleanup-optional.patch
queue-5.16/arm64-proton-pack-include-unprivileged-ebpf-status-in-spectre-v2-mitigation-reporting.patch
queue-5.16/revert-acpi-pm-s2idle-cancel-wakeup-before-dispatching-ec-gpe.patch
queue-5.16/arm64-entry-add-non-kpti-__bp_harden_el1_vectors-for-mitigations.patch
queue-5.16/arm64-add-id_aa64isar2_el1-sys-register.patch
queue-5.16/xen-scsifront-don-t-use-gnttab_query_foreign_access-for-mapped-status.patch
queue-5.16/kvm-arm64-allow-smccc_arch_workaround_3-to-be-discovered-and-migrated.patch
queue-5.16/xen-gnttab-fix-gnttab_end_foreign_access-without-page-specified.patch
queue-5.16/xen-netfront-react-properly-to-failing-gnttab_end_foreign_access_ref.patch
queue-5.16/x86-speculation-include-unprivileged-ebpf-status-in-spectre-v2-mitigation-reporting.patch
queue-5.16/x86-speculation-add-eibrs-retpoline-options.patch
queue-5.16/xen-gntalloc-don-t-use-gnttab_query_foreign_access.patch
queue-5.16/xen-xenbus-don-t-let-xenbus_grant_ring-remove-grants-in-error-case.patch
queue-5.16/x86-speculation-warn-about-eibrs-lfence-unprivileged-ebpf-smt.patch
queue-5.16/arm64-spectre-rename-spectre_v4_patch_fw_mitigation_conduit.patch
queue-5.16/arm64-cpufeature-add-hwcap-for-feat_afp.patch
queue-5.16/arm-include-unprivileged-bpf-status-in-spectre-v2-reporting.patch
queue-5.16/arm64-entry-move-trampoline-macros-out-of-ifdef-d-section.patch
queue-5.16/arm64-entry-allow-tramp_alias-to-access-symbols-after-the-4k-boundary.patch
queue-5.16/xen-grant-table-add-gnttab_try_end_foreign_access.patch
queue-5.16/x86-speculation-update-link-to-amd-speculation-whitepaper.patch
queue-5.16/arm64-entry-move-the-trampoline-data-page-before-the-text-page.patch
queue-5.16/xen-9p-use-alloc-free_pages_exact.patch
queue-5.16/arm64-entry.s-add-ventry-overflow-sanity-checks.patch
queue-5.16/arm64-cpufeature-add-hwcap-for-feat_rpres.patch
queue-5.16/x86-speculation-warn-about-spectre-v2-lfence-mitigation.patch
queue-5.16/x86-speculation-rename-retpoline_amd-to-retpoline_lfence.patch
queue-5.16/arm64-entry-add-vectors-that-have-the-bhb-mitigation-sequences.patch
queue-5.16/arm-early-traps-initialisation.patch
queue-5.16/arm64-mitigate-spectre-style-branch-history-side-channels.patch
queue-5.16/arm64-entry-allow-the-trampoline-text-to-occupy-multiple-pages.patch
queue-5.16/arm64-proton-pack-report-spectre-bhb-vulnerabilities-as-part-of-spectre-v2.patch
queue-5.16/arm64-do-not-include-__read_once-block-in-assembly-files.patch
queue-5.16/xen-blkfront-don-t-use-gnttab_query_foreign_access-for-mapped-status.patch
queue-5.16/arm-use-loadaddr-to-get-load-address-of-sections.patch
queue-5.16/kvm-arm64-allow-indirect-vectors-to-be-used-without-spectre_v3a.patch
queue-5.16/xen-pvcalls-use-alloc-free_pages_exact.patch
queue-5.16/arm64-entry-make-the-kpti-trampoline-s-kpti-sequence-optional.patch



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux