[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v2 2/2] acpi unit-test: extract iasl executable from
From: |
Marcel Apfelbaum |
Subject: |
[Qemu-devel] [PATCH v2 2/2] acpi unit-test: extract iasl executable from configuration |
Date: |
Wed, 25 Dec 2013 17:38:23 +0200 |
The test checked if iasl is installed by running "iasl"
and checking the error output.
It is better to use the iasl executable as appears
in configuration.
Signed-off-by: Marcel Apfelbaum <address@hidden>
---
v1 -> v2:
Addressed Michael S. Tsirkin's comments:
- Stringified iasl value
tests/acpi-test.c | 35 ++++++++++++-----------------------
1 file changed, 12 insertions(+), 23 deletions(-)
diff --git a/tests/acpi-test.c b/tests/acpi-test.c
index 4f0cca6..5e83df0 100644
--- a/tests/acpi-test.c
+++ b/tests/acpi-test.c
@@ -127,6 +127,15 @@ static uint8_t boot_sector[0x7e000] = {
static const char *disk = "tests/acpi-test-disk.raw";
static const char *data_dir = "tests/acpi-test-data";
+#ifdef CONFIG_IASL
+
+#define IASL_STRINGIFY_(x) #x
+#define IASL_STRINGIFY(x) IASL_STRINGIFY_(x)
+
+static const char *iasl = IASL_STRINGIFY(CONFIG_IASL);
+#else
+static const char *iasl;
+#endif
static void free_test_data(test_data *data)
{
@@ -358,26 +367,6 @@ static void test_acpi_ssdt_tables(test_data *data)
}
}
-static bool iasl_installed(void)
-{
- gchar *out = NULL, *out_err = NULL;
- bool ret;
-
- /* pass 'out' and 'out_err' in order to be redirected */
- ret = g_spawn_command_line_sync("iasl", &out, &out_err, NULL, NULL);
-
- if (out_err) {
- ret = ret && (out_err[0] == '\0');
- g_free(out_err);
- }
-
- if (out) {
- g_free(out);
- }
-
- return ret;
-}
-
static void dump_aml_files(test_data *data)
{
AcpiSdtTable *sdt;
@@ -402,7 +391,7 @@ static void load_asl(GArray *sdts, AcpiSdtTable *sdt)
{
AcpiSdtTable *temp;
GError *error = NULL;
- GString *command_line = g_string_new("'iasl' ");
+ GString *command_line = g_string_new(iasl);
gint fd;
gchar *out, *out_err;
gboolean ret;
@@ -413,7 +402,7 @@ static void load_asl(GArray *sdts, AcpiSdtTable *sdt)
close(fd);
/* build command line */
- g_string_append_printf(command_line, "-p %s ", sdt->asl_file);
+ g_string_append_printf(command_line, " -p %s ", sdt->asl_file);
for (i = 0; i < 2; ++i) { /* reference DSDT and SSDT */
temp = &g_array_index(sdts, AcpiSdtTable, i);
g_string_append_printf(command_line, "-e %s ", temp->aml_file);
@@ -567,7 +556,7 @@ static void test_acpi_one(const char *params, test_data
*data)
test_acpi_dsdt_table(data);
test_acpi_ssdt_tables(data);
- if (iasl_installed()) {
+ if (iasl) {
test_acpi_asl(data);
}
--
1.8.3.1