From nobody Fri Jan 9 14:47:15 2026 X-Original-To: dev-commits-src-main@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 4dnl461m8Rz62c6j; Fri, 09 Jan 2026 14:47:34 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (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 did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4dnl451s7Tz3f8V; Fri, 09 Jan 2026 14:47:33 +0000 (UTC) (envelope-from kostikbel@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=fail reason="No valid SPF, No valid DKIM" header.from=gmail.com (policy=none); spf=softfail (mx1.freebsd.org: 2001:470:d5e7:1::1 is neither permitted nor denied by domain of kostikbel@gmail.com) smtp.mailfrom=kostikbel@gmail.com Received: from tom.home (kib@localhost [127.0.0.1] (may be forged)) by kib.kiev.ua (8.18.1/8.18.1) with ESMTP id 609ElF8T007527; Fri, 9 Jan 2026 16:47:18 +0200 (EET) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua 609ElF8T007527 Received: (from kostik@localhost) by tom.home (8.18.1/8.18.1/Submit) id 609ElFSg007526; Fri, 9 Jan 2026 16:47:15 +0200 (EET) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Fri, 9 Jan 2026 16:47:15 +0200 From: Konstantin Belousov To: Aymeric Wibo Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: eeaa865edba6 - main - acpi: Fix setting sleep state sysctls to NONE Message-ID: References: <6929b55d.2b59a.8a970bd@gitrepo.freebsd.org> List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <6929b55d.2b59a.8a970bd@gitrepo.freebsd.org> X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FORGED_GMAIL_RCVD,FREEMAIL_FROM, NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=4.0.2 X-Spam-Checker-Version: SpamAssassin 4.0.2 (2025-08-27) on tom.home X-Spamd-Bar: / X-Spamd-Result: default: False [0.98 / 15.00]; NEURAL_SPAM_MEDIUM(1.00)[0.996]; NEURAL_HAM_LONG(-0.97)[-0.968]; NEURAL_SPAM_SHORT(0.95)[0.949]; MIME_GOOD(-0.10)[text/plain]; DMARC_POLICY_SOFTFAIL(0.10)[gmail.com : No valid SPF, No valid DKIM,none]; FREEMAIL_FROM(0.00)[gmail.com]; FREEMAIL_ENVFROM(0.00)[gmail.com]; ASN(0.00)[asn:6939, ipnet:2001:470::/32, country:US]; MIME_TRACE(0.00)[0:+]; ARC_NA(0.00)[]; TO_DN_SOME(0.00)[]; MISSING_XM_UA(0.00)[]; MLMMJ_DEST(0.00)[dev-commits-src-all@freebsd.org,dev-commits-src-main@freebsd.org]; RCPT_COUNT_THREE(0.00)[4]; FROM_EQ_ENVFROM(0.00)[]; FROM_HAS_DN(0.00)[]; R_DKIM_NA(0.00)[]; RCVD_COUNT_TWO(0.00)[2]; TO_MATCH_ENVRCPT_ALL(0.00)[]; R_SPF_SOFTFAIL(0.00)[~all]; RCVD_TLS_LAST(0.00)[]; HAS_XAW(0.00)[] X-Rspamd-Queue-Id: 4dnl451s7Tz3f8V On Fri, Nov 28, 2025 at 02:44:45PM +0000, Aymeric Wibo wrote: > The branch main has been updated by obiwac: > > URL: https://cgit.FreeBSD.org/src/commit/?id=eeaa865edba685545ac22c378b35552e09bf1b41 > > commit eeaa865edba685545ac22c378b35552e09bf1b41 > Author: Aymeric Wibo > AuthorDate: 2025-11-25 19:34:34 +0000 > Commit: Aymeric Wibo > CommitDate: 2025-11-28 14:42:54 +0000 > > acpi: Fix setting sleep state sysctls to NONE > > This restores the functionality as it was pre-97d152698f48. > > A stopgap was committed by glebius@ in 34dfccc64f47 ("acpi: in > acpi_stype_sysctl() use same logic as in acpi_sleep_state_sysctl()"). > > PR: 290651 > Reviewed by: thj, emaste > Approved by: thj > Fixes: 97d152698f48 ("acpi: Use sleep types defined in sys/power.h") > Sponsored by: The FreeBSD Foundation > Differential Revision: https://reviews.freebsd.org/D53909 > --- > sys/dev/acpica/acpi.c | 39 ++++++++++++++++++++++++--------------- > 1 file changed, 24 insertions(+), 15 deletions(-) > > diff --git a/sys/dev/acpica/acpi.c b/sys/dev/acpica/acpi.c > index e3ff4f6937d2..99dd817f9158 100644 > --- a/sys/dev/acpica/acpi.c > +++ b/sys/dev/acpica/acpi.c > @@ -4318,13 +4318,15 @@ acpi_sname_to_sstate(const char *sname) > { > int sstate; > > + if (strcasecmp(sname, "NONE") == 0) > + return (ACPI_STATE_UNKNOWN); > + > if (toupper(sname[0]) == 'S') { > sstate = sname[1] - '0'; > if (sstate >= ACPI_STATE_S0 && sstate <= ACPI_STATE_S5 && > sname[2] == '\0') > return (sstate); > - } else if (strcasecmp(sname, "NONE") == 0) > - return (ACPI_STATE_UNKNOWN); > + } > return (-1); > } > > @@ -4379,8 +4381,10 @@ acpi_suspend_state_sysctl(SYSCTL_HANDLER_ARGS) > if (new_sstate < 0) > return (EINVAL); > new_stype = acpi_sstate_to_stype(new_sstate); > - if (acpi_supported_stypes[new_stype] == false) > + if (new_sstate != ACPI_STATE_UNKNOWN && > + acpi_supported_stypes[new_stype] == false) > return (EOPNOTSUPP); > + > if (new_stype != old_stype) > power_suspend_stype = new_stype; > return (err); > @@ -4423,21 +4427,26 @@ acpi_stype_sysctl(SYSCTL_HANDLER_ARGS) > if (err != 0 || req->newptr == NULL) > return (err); > > - new_stype = power_name_to_stype(name); > - if (new_stype == POWER_STYPE_UNKNOWN) { > - sstate = acpi_sname_to_sstate(name); > - if (sstate < 0) > - return (EINVAL); > - printf("warning: this sysctl expects a sleep type, but an ACPI S-state has " > - "been passed to it. This functionality is deprecated; see acpi(4).\n"); > - if (sstate < ACPI_S_STATE_COUNT && > - !acpi_supported_sstates[sstate]) > + if (strcasecmp(name, "NONE") == 0) { > + new_stype = POWER_STYPE_UNKNOWN; > + } else { > + new_stype = power_name_to_stype(name); > + if (new_stype == POWER_STYPE_UNKNOWN) { > + sstate = acpi_sname_to_sstate(name); > + if (sstate < 0) > + return (EINVAL); > + printf("warning: this sysctl expects a sleep type, but an ACPI " > + "S-state has been passed to it. This functionality is " > + "deprecated; see acpi(4).\n"); Can we please avoid spending kernel memory for lecturing users? This is man page material. Also, if you want some specifics from the EINVAL to be presented to users, perhaps utilize exterror(9), with a terse description. > + MPASS(sstate < ACPI_S_STATE_COUNT); > + if (acpi_supported_sstates[sstate] == false) > + return (EOPNOTSUPP); > + new_stype = acpi_sstate_to_stype(sstate); > + } > + if (acpi_supported_stypes[new_stype] == false) > return (EOPNOTSUPP); > - new_stype = acpi_sstate_to_stype(sstate); > } > > - if (acpi_supported_stypes[new_stype] == false) > - return (EOPNOTSUPP); > if (new_stype != old_stype) > *(enum power_stype *)oidp->oid_arg1 = new_stype; > return (0);