The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=d19f2af2b7f9c964622fd2eba7d077c6f221b652
commit d19f2af2b7f9c964622fd2eba7d077c6f221b652 Author: John Baldwin <[email protected]> AuthorDate: 2026-03-05 19:07:09 +0000 Commit: John Baldwin <[email protected]> CommitDate: 2026-03-05 19:07:09 +0000 acpi: Don't attach a "wake" sysctl node to devices without the ACPI flags IVAR Not all bus drivers for ACPI-aware devices implement the ACPI flags IVAR used by the acpi_wake_set_sysctl handler. In some cases this may be a feature as some new-bus devices share the same ACPI handle (e.g. a pcibX device and its child pciY device) which can lead to confusing results (e.g. setting the sysctl on pciY changes the behavior of the parent pcibX device, but the "wake" sysctl for pcibX won't reflect the new behavior, or reflect the device's state). Reviewed by: obiwac, ngie, imp Differential Revision: https://reviews.freebsd.org/D55562 --- sys/dev/acpica/acpi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/acpica/acpi.c b/sys/dev/acpica/acpi.c index 3a664523c27e..01b584ec30aa 100644 --- a/sys/dev/acpica/acpi.c +++ b/sys/dev/acpica/acpi.c @@ -3951,7 +3951,7 @@ acpi_wake_sysctl_walk(device_t dev) for (i = 0; i < numdevs; i++) { child = devlist[i]; acpi_wake_sysctl_walk(child); - if (!device_is_attached(child)) + if (!device_is_attached(child) || !acpi_has_flags(child)) continue; status = AcpiEvaluateObject(acpi_get_handle(child), "_PRW", NULL, NULL); if (ACPI_SUCCESS(status)) {
