]> git.proxmox.com Git - mirror_ubuntu-focal-kernel.git/commitdiff
ACPICA: acpiexec: Add testability of deferred table verification
authorLv Zheng <lv.zheng@intel.com>
Wed, 20 Sep 2017 02:00:20 +0000 (10:00 +0800)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Tue, 3 Oct 2017 23:43:05 +0000 (01:43 +0200)
ACPICA commit 04c28c7549e694ea85f40bcc816039e5fbb4169c

This patch adds testability of deferred table verification mechanism. As
acpiexec uses dynamically allocated root table list from its very early
stage, a change to acpi_reallocate_root_table() is required to allow deferred
table verification mechanism to be triggered in such an environment. Note
that acpi_gbl_enable_table_validation is still TRUE by default, thus:
1. Developers need to manually set acpi_gbl_enable_table_validation to FALSE
   for acpiexec to enable this test.
2. For all other OSPMs (Linux, BSDs, etc.), this commit is a no-op.

Link: https://github.com/acpica/acpica/commit/04c28c7549e6
Signed-off-by: Lv Zheng <lv.zheng@intel.com>
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/acpi/acpica/tbxface.c

index 26ad596c973e9309d8fb961c26100eae2d650d1b..5ecb8d2e683479e3f0fe249f724818ee319991c5 100644 (file)
@@ -173,10 +173,13 @@ acpi_status ACPI_INIT_FUNCTION acpi_reallocate_root_table(void)
        ACPI_FUNCTION_TRACE(acpi_reallocate_root_table);
 
        /*
-        * Only reallocate the root table if the host provided a static buffer
-        * for the table array in the call to acpi_initialize_tables.
+        * If there are tables unverified, it is required to reallocate the
+        * root table list to clean up invalid table entries. Otherwise only
+        * reallocate the root table list if the host provided a static buffer
+        * for the table array in the call to acpi_initialize_tables().
         */
-       if (acpi_gbl_root_table_list.flags & ACPI_ROOT_ORIGIN_ALLOCATED) {
+       if ((acpi_gbl_root_table_list.flags & ACPI_ROOT_ORIGIN_ALLOCATED) &&
+           acpi_gbl_enable_table_validation) {
                return_ACPI_STATUS(AE_SUPPORT);
        }