Version 20180810

10 August 2018. Summary of changes for version 20180810:

This release is available at https://acpica.org/downloads

1) ACPICA kernel-resident subsystem:

Initial ACPI table loading: Attempt to continue loading ACPI tables regardless of malformed AML. Since migrating table initialization to the new module-level code support, the AML interpreter rejected tables upon any ACPI error encountered during table load. This is a problem because non-serious ACPI errors during table load do not necessarily mean that the entire definition block (DSDT or SSDT) is invalid. This change improves the table loading by ignoring some types of errors that can be generated by incorrect AML. This can range from object type errors, scope errors, and index errors.

Suspend/Resume support: Update to stop unconditionally clearing ACPI IRQs during suspend/resume. The status of ACPI events is no longer cleared when entering the ACPI S5 system state (power off) which caused some systems to power up immediately after turning off power in certain situations. This was a functional regression. It was fixed by clearing the status of all ACPI events again when entering S5 (for system-wide suspend or hibernation the clearing of the status of all events is not desirable, as it might cause the kernel to miss wakeup events sometimes). Rafael Wysocki.

2) iASL Compiler/Disassembler and Tools:

AcpiExec: Enhanced the -fi option (Namespace initialization file). Field elements listed in the initialization file were previously initialized after the table load and before executing module-level code blocks. Recent changes in the module-level code support means that the table load becomes a large control method execution. If fields are used within module-level code and we are executing with the -fi option, the initialization values were used to initialize the namespace object(s) only after the table was finished loading. This change Provides an early initialization of objects specified in the initialization file so that field unit values are populated during the table load (not after the load).

AcpiExec: Fixed a small memory leak regression that could result in warnings during exit of the utility. These warnings were similar to these:
0002D690 Length 0x0006 nsnames-0502 [Not a Descriptor - too small]
0002CD70 Length 0x002C utcache-0453 [Operand] Integer RefCount 0x0001

Date: 
10 August, 2018