stable

acpica-tools-20220331-3.fc36

FEDORA-2022-b94cbdbc54 created by ahs3 3 years ago for Fedora 36

31 March 2022. Summary of changes for version 20220331:

Global changes:

Update all copyright notices to the year 2022. This effects all source modules, as well as utility signons.

ACPICA kernel-resident subsystem:

  • For the ASL Sleep() operator, issue a warning if the sleep value is greater than 10 Milliseconds. Quick boottime is important, so warn about sleeps greater than 10 ms. Distribution Linux kernels reach initrd in 350 ms, so excessive delays should be called out. 10 ms is chosen randomly, but three of such delays would already make up ten percent of the boottime.
  • Namespace: Avoid attempting to walk the Namespace if the Namespace does not exist.
  • AML interpreter/iASL compiler: Add new Acpi 6.4 semantics for the LoadTable and Load operators. DDB_HANDLE is gone, now loadtable returns a pass/fail integer. Now load returns a pass/fail integer, as well as storing the return value in an optional 2nd argument.
  • Headers: Use uintptr_t and offsetof() in Linux kernel builds. To avoid "performing pointer subtraction with a null pointer has undefined behavior" compiler warnings, use uintptr_t and offsetof() that are always available during Linux kernel builds to define ACPI_UINTPTR_T and the ACPI_TO_INTEGER() and ACPI_OFFSET() macros when building the ACPICA code in the Linux kernel.
  • Added support for the Windows 11 _OSI string ("Windows 2021"). Submitted by superm1.
  • executer/exsystem: Inform users about ACPI spec violation for the Stall() operator. Values greater than 100 microseconds violate the ACPI specification, so warn users about it. From the ACPI Specification version 6.2 Errata A, 19.6.128 Stall (Stall for a Short Time):

    The implementation of Stall is OS-specific, but must not relinquish control of the processor. Because of this, delays longer than 100 microseconds must use Sleep instead of Stall.

iASL Compiler/Disassembler and ACPICA tools:

  • Data Table Compiler/Disassembler: Add support for the APMT table - ARM Performance Monitoring Unit table. Submitted by @bwicaksononv.
  • Data Table Compiler/Disassembler: For MADT, add support for the OEM-defined subtables (Types 0x80-0x7F).
  • Data Table Compiler: Fixed a problem with support for the SDEV table, where a subtable Length was not computed correctly.
  • Data Table Compiler/Disassembler: Add/fix the CFMWS subtable to the CEDT Acpi table support.
  • Data Table Compiler/Disassembler: Fix a compile issue with the CEDT and add template. Submitted by MasterDrogo.
  • Data Table Compiler/Disassembler: NHLT Changes provided by Piotr Maziarz: ** iASL/NHLT: Rename linux specific structures to DeviceInfo to improve readability of the code. ** iASL/NHLT: Fix parsing undocumented bytes at the end of Endpoint. ** Undocumented bytes at the end of Endpoint Descriptor can be present independently of Linux-specific structures. Their size can also vary. ** iASL/NHLT: Treat TableTerminator as SpecificConfig. SpecificConfig has 4 bytes of size and then an amount of bytes specified by size. All of the terminators that I've seen had a size equal to 4, but theoretically it can vary.
  • iASL/AcpiExec: Use _exit instead of exit in signal handers (ctrl-C).
  • iASL: Remove a remark due to excessive output. Removed a remark for duplicate Offset() operators, due to a user complaint.

17 December 2021. Summary of changes for version 20211217:

ACPICA kernel-resident subsystem:

  • Hardware: Do not flush CPU cache when entering S4 and S5. According to ACPI 6.4, Section 16.2, the CPU cache flushing is required on entering to S1, S2, and S3, but the ACPICA code flushes the CPU cache regardless of the sleep state. Blind cache flush on entering S5 causes problems for TDX.
  • Avoid subobject buffer overflow when validating RSDP signature. Since the Signature member is accessed through an ACPI_TABLE_HEADER, the pointer to it is only to a 4-char array, and so trying to read past the 4th character, as will be done when it is an RSDP, reads beyond the bounds of the accessed member. Contributed by jrtc27.
  • Add support for PCC Opregion special context data. PCC Opregion added in ACPIC 6.3 requires special context data similar to GPIO and Generic Serial Bus as it needs to know the internal PCC buffer and its length as well as the PCC channel index when the opregion handler is being executed by the OSPM. Adds support for the special context data needed by PCC Opregion. Submitted by Sudeep Holla sudeep.holla@arm.com

iASL Compiler/Disassembler and ACPICA tools:

  • iASL: Completed compiler support for the NHLT ACPI table.
  • iASL/NHLT table: Fixed a reported problem where a fault would occur during disassembly of a "Linux-Specific" section if the "Specific Data" part was not present.
  • iASL: Added full support (compiler and disassembler) for the AGDI ACPI table. Contributed by: Ilkka Koskinen ilkka@os.amperecomputing.com.
  • iASL: Added full support for the TDEL ACPI table.
  • iASL table compiler: FADT support updates: ** Allow the 32-bit DSDT address to be zero. ** Issue error if both the 32-bit and 64-bit DSDT addresses are zero.
  • iASL: Fix unaligned accesses to local cache allocations. Contributed by jrtc27.
  • iASL: Open binary input files in binary mode, not text mode Affects binary input AML files, as well as binary data table files, for disassembly.

30 September 2021. Summary of changes for version 20210930:

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

ACPICA kernel-resident subsystem:

  • Hardware: Avoid evaluating methods too early during system resume. During wakeup from system-wide sleep states, AcpiGetSleepTypeData() is called and it tries to get memory from the OS in order to evaluate a control method, but if KFENCE is enabled in the Linux kernel, the memory allocation attempt causes an IRQ work to be queued and a self-IPI to be sent to the CPU running the code which requires the memory controller to be ready, so if that happens too early in the wakeup path, it doesn't work.
  • Prevent that from taking place by calling AcpiGetSleepTypeData() for S0 upfront, when preparing to enter a given sleep state, and saving the data obtained by it for later use during system wakeup.
  • Added a new _OSI string, "Windows 2020". Posted by superm1.

iASL Compiler/Disassembler and ACPICA tools:

  • iASL compiler: Updated the check for usage of _CRS, _DIS, _PRS, and _SRS objects:
  • New/latest rules: Under a Device Object: ** If _PRS is present, must have _CRS and _SRS ** If _SRS is present, must have _PRS (_PRS requires _CRS and _SRS) ** If _DIS is present, must have _SRS (_SRS requires _PRS, _PRSrequires _CRS and _SRS) ** If _SRS is present, probably should have a _DIS (Remark only)
  • iASL table disassembler: Added disassembly support for the NHLT ACPI table. Note: support for Vendor-defined microphone arrays and SNR extensions are not supported at this time -- mostly due to a lack of example tables. Actual compiler support for NHLT is forthcoming.
  • Added a new subtable type for ACPI 6.4 SRAT Generic Port Affinity. It uses the same subtable structure as the existing Generic Initiator Affinity type.
  • Added the flag for online capable in the MADT, introduced in ACPI 6.3. Posted by superm1.

ACPICA documentation: Updated the legal info (that appears at the start of the Documents) to clarify distribution rights that are granted.

30 July 2021. Summary of changes for version 20210730:

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

ACPICA kernel-resident subsystem:

iASL Compiler/Disassembler and ACPICA tools:

  • iasl: Check usage of _CRS, _DIS, _PRS, and _SRS objects (July 2021).
  • Under the Device Object: ** If _DIS is present, must have a _CRS and _SRS ** If _PRS is present, must have a _CRS, _DIS, and _SRS ** If _SRS is present, must have a _CRS and _DIS ** A warning will be issued for each of these cases. ** Note: For existing ASL/projects, these warnings may be disabled by specifying this on the command line: "-vw 3141"
  • iASL Table Disassembler/Table compiler: Fix for WPBT table with nocommand-line arguments. Handle the case where the Command-line Arguments table field does not exist (zero).
  • Headers: Add new DBG2 Serial Port Subtypes: The Microsoft Debug Port Table 2 (DBG2) specification revision September 21, 2020 comprises additional Serial Port Subtypes [1]. Reflect that in the actbl1.h header file. Submitted by: semihalf-wojtas-marcin
  • iASL: Add full support for the AEST table (data compiler) Includes support in the table compiler and the disassembler.
  • Add PRMT module header to facilitate parsing. This structure is used in to parse PRMT in other Operating Systems that relies on using subtable headers in order to parse ACPI tables. Although the PRMT doesn't have "subtables" it has a list of module information structures that act as subtables.
  • iASL: Table disassembler: Add missing strings to decode subtable types. Includes the MADT and CEDT tables.

How to install

Updates may require up to 24 hours to propagate to mirrors. If the following command doesn't work, please retry later:

sudo dnf upgrade --refresh --advisory=FEDORA-2022-b94cbdbc54

This update has been submitted for testing by ahs3.

3 years ago

This update's test gating status has been changed to 'ignored'.

3 years ago

ahs3 edited this update.

3 years ago

This update has been pushed to testing.

3 years ago

This update has been submitted for stable by bodhi.

3 years ago

This update has been pushed to stable.

3 years ago

Please log in to add feedback.

Metadata
Type
enhancement
Severity
medium
Karma
0
Signed
Content Type
RPM
Test Gating
Autopush Settings
Unstable by Karma
-3
Stable by Karma
3
Stable by Time
7 days
Dates
submitted
3 years ago
in testing
3 years ago
in stable
3 years ago
modified
3 years ago
BZ#1988490 acpica-tools-20220331 is available
0
0
BZ#2045187 acpica-tools: FTBFS in Fedora rawhide/f36
0
0

Automated Test Results