• Andy Grover's avatar
    ACPI: Interpreter update to 20030509 · 209a0fa0
    Andy Grover authored
    Changed the subsystem initialization sequence to hold off installation of
    address space handlers until the hardware has been initialized and the
    system has entered ACPI mode.  This is because the installation of space
    handlers can cause _REG methods to be run.  Previously, the _REG methods
    could potentially be run before ACPI mode was enabled.
    
    Fixed some memory leak issues related to address space handler and notify
    handler installation.  There were some problems with the reference count
    mechanism caused by the fact that the handler objects are shared across
    several namespace objects.
    
    Fixed a reported problem where reference counts within the namespace were
    not properly updated when named objects created by method execution were
    deleted.
    
    Fixed a reported problem where multiple SSDTs caused a deletion issue
    during subsystem termination.  Restructured the table data structures
    to simplify the linked lists and the related code.
    
    Fixed a problem where the table ID associated with secondary tables (SSDTs)
    was not being propagated into the namespace objects created by those
    tables.  This would only present a problem for tables that are unloaded
    at run-time, however.
    
    Updated AcpiOsReadable and AcpiOsWritable to use the ACPI_SIZE type as
    the length parameter (instead of UINT32).
    
    Solved a long-standing problem where an ALREADY_EXISTS error appears on
    various systems.  This problem could happen when there are multiple
    PCI_Config operation regions under a single PCI root bus.  This doesnt
    happen very frequently, but there are some systems that do this in the
    ASL.
    
    Fixed a reported problem where the internal DeleteNode function was
    incorrectly handling the case where a namespace node was the first in
    the parents child list, and had additional peers (not the only child,
    but first in the list of children.)
    209a0fa0
utdelete.c 16.3 KB