From nobody Mon Jan 19 16:30:18 2026 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dvwt23xKDz6P26g for ; Mon, 19 Jan 2026 16:30:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dvwt21MYBz41gy for ; Mon, 19 Jan 2026 16:30:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768840218; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qo3HCuSQQw5aINDbk1SlPG/IlvwGmHkh1b/n3hZRNLI=; b=XTn+Z+ENo8LvKgDNOoTh15GZkihSKXptuHt5pT3sxOA1ECw55iZzLZfssLxekMqvMe8AkF VLdFSKJ9+76uyqFN6DM6ai3Xy/gKLsgNZ74kPrxqiUGQBW0ByNNpzR64oTs9rfAiJCWlja BetDAdgk/SoPwJYv0j/51B0WEPEl9CtcNA1xltD4nKGirZVgK1U8YH1PBDbmo3pL1jI6Ge TuWln8bIxFGGpAjpQhWWNOsbUBRpbrmBJOrR3RvvfrzVZUBaHZNMKrWIq21rJrHHdoZljU DqQT+l9b0QCCyKxdJf4ln4NJEDr1CF18OUkHQvf+0TUlwfQhciyX/HVOmwGM8w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768840218; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qo3HCuSQQw5aINDbk1SlPG/IlvwGmHkh1b/n3hZRNLI=; b=SH2s7f55EEpcMoOI6BRIJhI+IDMepnYjnfq+KAlSnoYPZL3YMU/U8EVVvQqRLjKx2aAua4 T4fdjRLrsCepEfPx4oo4ROwa/Dw0e9T/o/4s0onqOhst1byU7EP3chtU8gGYmiMHop3pSU pLb0dUdSoEgDQiT6xmwrH5VojYuLcxZee9z19sn7k3L5TDrMVdyi8mDKTnVc6v3b7UppG6 88D3CPCKZZ/Enu0lD31axzEz+w8noSyyXO1DdiG+ukhD6GcYTMUGA+bdfB6UfTMP7xSrmN wPEuDQFe65m/sErPgj6MIBmxEqfIvGM+tiQJvvwjxPM61UAhrmb/ahJ7/NSQ9g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768840218; a=rsa-sha256; cv=none; b=cYlYZ8Z2JIOofjdtmXEFuuFgsJTlunjTTbIup0URhIMjub9ucohlL2gz5n6WroiTFAZmGZ RjMWPFAmjg/lWYIzYuJFvfu0Iof4jiREvt0N1sCaRSeiskwpMrOhTKAtn4TcWgaheZcQ1U /SnCGRPEcMgdy0LO2FU6TmgXiK8X0TZL6oYXfq/UXF97l9yeTGt+R6QgEm1FDY9DaKvKQO 20LqZk5zJShPSyjGBMp0b5Yj3ALyz/6skaMJbeh01yIqZMoDMxlmIOq5qrRDckPi7RtBm/ onbFR12NqIObUv74ZYIYDK0mYRvVb6Q9lswuqceBumTSRh2bwj4mIOOg9qRY0w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dvwt20kJzzgMR for ; Mon, 19 Jan 2026 16:30:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 33bf8 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 19 Jan 2026 16:30:18 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Aymeric Wibo Subject: git: 4b534b814aa0 - main - acpi: Fix not calling AcpiLeaveSleepState() in S3 path List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: obiwac X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 4b534b814aa03b44660ede6d5f1a62cb33c24115 Auto-Submitted: auto-generated Date: Mon, 19 Jan 2026 16:30:18 +0000 Message-Id: <696e5c1a.33bf8.2bac138f@gitrepo.freebsd.org> The branch main has been updated by obiwac: URL: https://cgit.FreeBSD.org/src/commit/?id=4b534b814aa03b44660ede6d5f1a62cb33c24115 commit 4b534b814aa03b44660ede6d5f1a62cb33c24115 Author: Aymeric Wibo AuthorDate: 2026-01-19 13:19:52 +0000 Commit: Aymeric Wibo CommitDate: 2026-01-19 16:30:10 +0000 acpi: Fix not calling AcpiLeaveSleepState() in S3 path When resuming from ACPI suspend, the ACPI_SS_SLP_PREP bit in slp_state was being checked and subsequently unset when calling resumeclock(). This bit was also being checked for the AcpiLeaveSleepState() call in the non-s2idle path, but having just been unset, it was never actually being called. Change this so that resumeclock() is always being called (since we never goto breakout between suspendclock() and resumeclock() anyway) and ACPI_SS_SLP_PREP is purely used for AcpiEnterSleepStatePrep() and AcpiLeaveSleepState() in the non-s2idle paths. PR: 292568 Reported by: Marek Zarychta Reviewed by: olce Tested by: Marek Zarychta Approved by: olce Fixes: 7669cbd0f064 (“acpi: Suspend-to-idle support (s2idle)”) Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54777 --- sys/dev/acpica/acpi.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/sys/dev/acpica/acpi.c b/sys/dev/acpica/acpi.c index 518cbce19e33..c76bc8477537 100644 --- a/sys/dev/acpica/acpi.c +++ b/sys/dev/acpica/acpi.c @@ -3645,8 +3645,8 @@ acpi_EnterSleepState(struct acpi_softc *sc, enum power_stype stype) AcpiFormatException(status)); goto backout; } + slp_state |= ACPI_SS_SLP_PREP; } - slp_state |= ACPI_SS_SLP_PREP; if (sc->acpi_sleep_delay > 0) DELAY(sc->acpi_sleep_delay * 1000000); @@ -3672,16 +3672,13 @@ acpi_EnterSleepState(struct acpi_softc *sc, enum power_stype stype) case POWER_STYPE_UNKNOWN: __unreachable(); } + resumeclock(); /* * Back out state according to how far along we got in the suspend * process. This handles both the error and success cases. */ backout: - if ((slp_state & ACPI_SS_SLP_PREP) != 0) { - resumeclock(); - slp_state &= ~ACPI_SS_SLP_PREP; - } if ((slp_state & ACPI_SS_GPE_SET) != 0) { acpi_wake_prep_walk(sc, stype); sc->acpi_stype = POWER_STYPE_AWAKE; @@ -3691,7 +3688,7 @@ backout: DEVICE_RESUME(root_bus); slp_state &= ~ACPI_SS_DEV_SUSPEND; } - if (stype != POWER_STYPE_SUSPEND_TO_IDLE && (slp_state & ACPI_SS_SLP_PREP) != 0) { + if ((slp_state & ACPI_SS_SLP_PREP) != 0) { AcpiLeaveSleepState(acpi_sstate); slp_state &= ~ACPI_SS_SLP_PREP; }