[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v2 8/8] tests: acpi: use AcpiSdtTable::aml instead o
From: |
Igor Mammedov |
Subject: |
[Qemu-devel] [PATCH v2 8/8] tests: acpi: use AcpiSdtTable::aml instead of AcpiSdtTable::header::signature |
Date: |
Thu, 27 Dec 2018 15:13:34 +0100 |
AcpiSdtTable::header::signature is the only remained field from
AcpiTableHeader structure used by tests. Instead of using packed
structure to access signature, just read it directly from table
blob and remove no longer used AcpiSdtTable::header / union and
keep only AcpiSdtTable::aml byte array.
Signed-off-by: Igor Mammedov <address@hidden>
---
tests/acpi-utils.h | 6 +-----
tests/bios-tables-test.c | 20 +++++++++-----------
2 files changed, 10 insertions(+), 16 deletions(-)
diff --git a/tests/acpi-utils.h b/tests/acpi-utils.h
index cb7183e..ef388bb 100644
--- a/tests/acpi-utils.h
+++ b/tests/acpi-utils.h
@@ -13,15 +13,11 @@
#ifndef TEST_ACPI_UTILS_H
#define TEST_ACPI_UTILS_H
-#include "hw/acpi/acpi-defs.h"
#include "libqtest.h"
/* DSDT and SSDTs format */
typedef struct {
- union {
- AcpiTableHeader *header;
- uint8_t *aml; /* aml bytecode from guest */
- };
+ uint8_t *aml; /* aml bytecode from guest */
uint32_t aml_len;
gchar *aml_file;
gchar *asl; /* asl code generated from aml */
diff --git a/tests/bios-tables-test.c b/tests/bios-tables-test.c
index 9139dec..0bf7164 100644
--- a/tests/bios-tables-test.c
+++ b/tests/bios-tables-test.c
@@ -44,6 +44,11 @@ static const char *iasl = stringify(CONFIG_IASL);
static const char *iasl;
#endif
+static bool compare_signature(const AcpiSdtTable *sdt, const char *signature)
+{
+ return !memcmp(sdt->aml, signature, 4);
+}
+
static void cleanup_table_descriptor(AcpiSdtTable *table)
{
g_free(table->aml);
@@ -130,7 +135,7 @@ static void test_acpi_fadt_table(test_data *data)
uint8_t *fadt_aml = table.aml;
uint32_t fadt_len = table.aml_len;
- ACPI_ASSERT_CMP(table.header->signature, "FACP");
+ g_assert(compare_signature(&table, "FACP"));
/* Since DSDT/FACS isn't in RSDT, add them to ASL test list manually */
acpi_fetch_table(data->qts, &table.aml, &table.aml_len,
@@ -169,7 +174,7 @@ static void dump_aml_files(test_data *data, bool rebuild)
if (rebuild) {
aml_file = g_strdup_printf("%s/%s/%.4s%s", data_dir, data->machine,
- (gchar *)&sdt->header->signature, ext);
+ sdt->aml, ext);
fd = g_open(aml_file, O_WRONLY|O_TRUNC|O_CREAT,
S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH);
} else {
@@ -187,11 +192,6 @@ static void dump_aml_files(test_data *data, bool rebuild)
}
}
-static bool compare_signature(AcpiSdtTable *sdt, const char *signature)
-{
- return !memcmp(&sdt->header->signature, signature, 4);
-}
-
static bool load_asl(GArray *sdts, AcpiSdtTable *sdt)
{
AcpiSdtTable *temp;
@@ -290,7 +290,7 @@ static GArray *load_expected_aml(test_data *data)
try_again:
aml_file = g_strdup_printf("%s/%s/%.4s%s", data_dir, data->machine,
- (gchar *)&sdt->header->signature, ext);
+ sdt->aml, ext);
if (getenv("V")) {
fprintf(stderr, "Looking for expected file '%s'\n", aml_file);
}
@@ -350,14 +350,12 @@ static void test_acpi_asl(test_data *data)
fprintf(stderr,
"Warning! iasl couldn't parse the expected aml\n");
} else {
- uint32_t signature = cpu_to_le32(exp_sdt->header->signature);
sdt->tmp_files_retain = true;
exp_sdt->tmp_files_retain = true;
fprintf(stderr,
"acpi-test: Warning! %.4s mismatch. "
"Actual [asl:%s, aml:%s], Expected [asl:%s,
aml:%s].\n",
- (gchar *)&signature,
- sdt->asl_file, sdt->aml_file,
+ exp_sdt->aml, sdt->asl_file, sdt->aml_file,
exp_sdt->asl_file, exp_sdt->aml_file);
if (getenv("V")) {
const char *diff_cmd = getenv("DIFF");
--
2.7.4
- [Qemu-devel] [PATCH v2 0/8] tests: apci: consolidate and cleanup ACPI test code, Igor Mammedov, 2018/12/27
- [Qemu-devel] [PATCH v2 2/8] tests: acpi: make sure FADT is fetched only once, Igor Mammedov, 2018/12/27
- [Qemu-devel] [PATCH v2 1/8] tests: acpi: use AcpiSdtTable::aml in consistent way, Igor Mammedov, 2018/12/27
- [Qemu-devel] [PATCH v2 3/8] tests: acpi: simplify rsdt handling, Igor Mammedov, 2018/12/27
- [Qemu-devel] [PATCH v2 4/8] tests: acpi: reuse fetch_table() for fetching FACS and DSDT, Igor Mammedov, 2018/12/27
- [Qemu-devel] [PATCH v2 7/8] tests: acpi: squash sanitize_fadt_ptrs() into test_acpi_fadt_table(), Igor Mammedov, 2018/12/27
- [Qemu-devel] [PATCH v2 6/8] tests: smbios: fetch whole table in one step instead of reading it step by step, Igor Mammedov, 2018/12/27
- [Qemu-devel] [PATCH v2 8/8] tests: acpi: use AcpiSdtTable::aml instead of AcpiSdtTable::header::signature,
Igor Mammedov <=
- [Qemu-devel] [PATCH v2 5/8] tests: acpi: reuse fetch_table() in vmgenid-test, Igor Mammedov, 2018/12/27