Commit 7f36f093 authored by Michael S. Tsirkin's avatar Michael S. Tsirkin
Browse files

bios-tables-test: ignore identical binaries



when binary of the tables is identical, there is no need to run iasl
to check that they are functionally equivalent.

Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
parent ab6b6a77
Loading
Loading
Loading
Loading
+14 −2
Original line number Diff line number Diff line
@@ -375,6 +375,20 @@ static void test_acpi_asl(test_data *data)
        sdt = &g_array_index(data->tables, AcpiSdtTable, i);
        exp_sdt = &g_array_index(exp_data.tables, AcpiSdtTable, i);

        if (sdt->aml_len == exp_sdt->aml_len &&
            !memcmp(sdt->aml, exp_sdt->aml, sdt->aml_len)) {
            /* Identical table binaries: no need to disassemble. */
            continue;
        }

        fprintf(stderr,
                "acpi-test: Warning! %.4s binary file mismatch. "
                "Actual [aml:%s], Expected [aml:%s].\n",
                exp_sdt->aml, sdt->aml_file, exp_sdt->aml_file);

        all_tables_match = all_tables_match &&
            test_acpi_find_diff_allowed(exp_sdt);

        err = load_asl(data->tables, sdt);
        asl = normalize_asl(sdt->asl);

@@ -413,8 +427,6 @@ static void test_acpi_asl(test_data *data)
                    }
                }
            }
            all_tables_match = all_tables_match &&
                test_acpi_find_diff_allowed(exp_sdt);
        }
        g_string_free(asl, true);
        g_string_free(exp_asl, true);