From: Igor Mammedov <imammedo@redhat.com>
To: qemu-devel@nongnu.org
Cc: "Michael S. Tsirkin" <mst@redhat.com>,
Thomas Huth <thuth@redhat.com>,
Laurent Vivier <lvivier@redhat.com>,
Samuel Ortiz <sameo@linux.intel.com>
Subject: [Qemu-devel] [PATCH 9/9] tests: acpi: use AcpiSdtTable::aml instead of AcpiSdtTable::header::signature
Date: Mon, 10 Dec 2018 19:10:15 +0100 [thread overview]
Message-ID: <1544465415-207855-10-git-send-email-imammedo@redhat.com> (raw)
In-Reply-To: <1544465415-207855-1-git-send-email-imammedo@redhat.com>
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 <imammedo@redhat.com>
---
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 bc0cd19..8d04f76 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 40b224f..1a4e3b3 100644
--- a/tests/bios-tables-test.c
+++ b/tests/bios-tables-test.c
@@ -43,6 +43,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);
@@ -128,7 +133,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(&table.aml, &table.aml_len,
@@ -167,7 +172,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 {
@@ -185,11 +190,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;
@@ -285,7 +285,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, "\nLooking for expected file '%s'\n", aml_file);
}
@@ -345,14 +345,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
next prev parent reply other threads:[~2018-12-10 18:21 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-12-10 18:10 [Qemu-devel] [PATCH 0/9] tests: apci: consolidate and cleanup ACPI test code Igor Mammedov
2018-12-10 18:10 ` [Qemu-devel] [PATCH 1/9] tests: acpi: remove not used ACPI_READ_GENERIC_ADDRESS macro Igor Mammedov
2018-12-10 18:26 ` Philippe Mathieu-Daudé
2018-12-10 18:10 ` [Qemu-devel] [PATCH 2/9] tests: acpi: use AcpiSdtTable::aml in consistent way Igor Mammedov
2018-12-19 19:02 ` Wainer dos Santos Moschetta
2018-12-20 12:09 ` Igor Mammedov
2018-12-10 18:10 ` [Qemu-devel] [PATCH 3/9] tests: acpi: make sure FADT is fetched only once Igor Mammedov
2018-12-10 18:10 ` [Qemu-devel] [PATCH 4/9] tests: acpi: simplify rsdt handling Igor Mammedov
2018-12-10 18:10 ` [Qemu-devel] [PATCH 5/9] tests: acpi: reuse fetch_table() for fetching FACS and DSDT Igor Mammedov
2018-12-10 18:10 ` [Qemu-devel] [PATCH 6/9] tests: acpi: reuse fetch_table() in vmgenid-test Igor Mammedov
2018-12-10 18:10 ` [Qemu-devel] [PATCH 7/9] tests: smbios: fetch whole table in one step instead of reading it step by step Igor Mammedov
2018-12-10 18:10 ` [Qemu-devel] [PATCH 8/9] tests: acpi: squash sanitize_fadt_ptrs() into test_acpi_fadt_table() Igor Mammedov
2018-12-10 18:10 ` Igor Mammedov [this message]
2018-12-19 16:38 ` [Qemu-devel] [PATCH 0/9] tests: apci: consolidate and cleanup ACPI test code Michael S. Tsirkin
2018-12-19 16:45 ` Daniel P. Berrangé
2018-12-19 16:56 ` Michael S. Tsirkin
2018-12-20 12:14 ` Igor Mammedov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1544465415-207855-10-git-send-email-imammedo@redhat.com \
--to=imammedo@redhat.com \
--cc=lvivier@redhat.com \
--cc=mst@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=sameo@linux.intel.com \
--cc=thuth@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).