The branch main has been updated by olivier:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=4d876fc5fc427f9e4a110da5cc2ce62a21998b6c

commit 4d876fc5fc427f9e4a110da5cc2ce62a21998b6c
Author:     Olivier Cochard <[email protected]>
AuthorDate: 2026-03-03 23:05:04 +0000
Commit:     Olivier Cochard <[email protected]>
CommitDate: 2026-03-03 23:08:23 +0000

    acpi_spmc: fix revision check reading name as integer
    
    In acpi_spmc_get_constraints_spec(), the revision of the device
    constraint detail package was mistakenly read from
    constraint_obj->Package.Elements[0], which is the device name
    (a string), instead of from the detail sub-package's first element.
    
    Move the initialisation of 'detail' before the revision check and
    read the revision from detail->Package.Elements[0] as the comment
    already states
    
    Approved by:    obiwac
    Differential Revision:  https://reviews.freebsd.org/D55639
    Sponsored by:   Netflix
---
 sys/dev/acpica/acpi_spmc.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/sys/dev/acpica/acpi_spmc.c b/sys/dev/acpica/acpi_spmc.c
index e8ed14fdcb1b..6b4363bb364d 100644
--- a/sys/dev/acpica/acpi_spmc.c
+++ b/sys/dev/acpica/acpi_spmc.c
@@ -322,11 +322,12 @@ acpi_spmc_get_constraints_spec(struct acpi_spmc_softc 
*sc, ACPI_OBJECT *object)
                        return (ENOMEM);
                }
 
+               detail = &constraint_obj->Package.Elements[2];
                /*
                 * The first element in the device constraint detail package is
                 * the revision, and should always be zero.
                 */
-               revision = constraint_obj->Package.Elements[0].Integer.Value;
+               revision = detail->Package.Elements[0].Integer.Value;
                if (revision != 0) {
                        device_printf(sc->dev, "Unknown revision %d for "
                            "device constraint detail package\n", revision);
@@ -334,7 +335,6 @@ acpi_spmc_get_constraints_spec(struct acpi_spmc_softc *sc, 
ACPI_OBJECT *object)
                        continue;
                }
 
-               detail = &constraint_obj->Package.Elements[2];
                constraint_package = &detail->Package.Elements[1];
 
                constraint->lpi_uid =

Reply via email to