[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 03/10] tests: report errors when iasl exits with non-
From: |
Michael S. Tsirkin |
Subject: |
[Qemu-devel] [PULL 03/10] tests: report errors when iasl exits with non-zero status |
Date: |
Wed, 15 Nov 2017 20:18:05 +0200 |
From: "Daniel P. Berrange" <address@hidden>
If iasl exits with non-zero status, the test unhelpfully just reports
that the AML did not match, because the data files it thought iasl
generated do not exist. This adds an explicit check for the exit status
of iasl and prints stderr if it was non-zero. Thus gives us a fighting
chance of diagnosing why iasl failed.
Signed-off-by: Daniel P. Berrange <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
---
tests/bios-tables-test.c | 24 ++++++++++++++++++------
1 file changed, 18 insertions(+), 6 deletions(-)
diff --git a/tests/bios-tables-test.c b/tests/bios-tables-test.c
index 564da45..ee441f1 100644
--- a/tests/bios-tables-test.c
+++ b/tests/bios-tables-test.c
@@ -304,6 +304,7 @@ static bool load_asl(GArray *sdts, AcpiSdtTable *sdt)
gchar *out, *out_err;
gboolean ret;
int i;
+ int status;
fd = g_file_open_tmp("asl-XXXXXX.dsl", &sdt->asl_file, &error);
g_assert_no_error(error);
@@ -324,14 +325,25 @@ static bool load_asl(GArray *sdts, AcpiSdtTable *sdt)
g_string_append_printf(command_line, "-d %s", sdt->aml_file);
/* pass 'out' and 'out_err' in order to be redirected */
- ret = g_spawn_command_line_sync(command_line->str, &out, &out_err, NULL,
&error);
+ ret = g_spawn_command_line_sync(command_line->str, &out, &out_err,
&status, &error);
g_assert_no_error(error);
if (ret) {
- ret = g_file_get_contents(sdt->asl_file, (gchar **)&sdt->asl,
- &sdt->asl_len, &error);
- g_assert(ret);
- g_assert_no_error(error);
- ret = (sdt->asl_len > 0);
+ if (status != 0) {
+ g_printerr("'%s' exited with status %d", command_line->str,
status);
+ if (!g_str_equal(out, "")) {
+ g_printerr("%s", out);
+ }
+ if (!g_str_equal(out_err, "")) {
+ g_printerr("%s", out_err);
+ }
+ ret = FALSE;
+ } else {
+ ret = g_file_get_contents(sdt->asl_file, (gchar **)&sdt->asl,
+ &sdt->asl_len, &error);
+ g_assert(ret);
+ g_assert_no_error(error);
+ ret = (sdt->asl_len > 0);
+ }
}
g_free(out);
--
MST
- [Qemu-devel] [PULL 00/10] pc, pci, virtio: fixes for rc1, Michael S. Tsirkin, 2017/11/15
- [Qemu-devel] [PULL 01/10] fix: unrealize virtio device if we fail to hotplug it, Michael S. Tsirkin, 2017/11/15
- [Qemu-devel] [PULL 02/10] pci: Initialize pci_dev->name before use, Michael S. Tsirkin, 2017/11/15
- [Qemu-devel] [PULL 03/10] tests: report errors when iasl exits with non-zero status,
Michael S. Tsirkin <=
- [Qemu-devel] [PULL 04/10] test: fix detection of errors from iasl, Michael S. Tsirkin, 2017/11/15
- [Qemu-devel] [PULL 05/10] hw/pci-host: Fix x86 Host Bridges 64bit PCI hole, Michael S. Tsirkin, 2017/11/15
- [Qemu-devel] [PULL 06/10] hw/pcie-pci-bridge: restrict to X86 and ARM, Michael S. Tsirkin, 2017/11/15
- [Qemu-devel] [PULL 07/10] tests/acpi-test-data: update _CRS in DSDT, Michael S. Tsirkin, 2017/11/15
- [Qemu-devel] [PULL 08/10] NUMA: Enable adding NUMA node implicitly, Michael S. Tsirkin, 2017/11/15
- [Qemu-devel] [PULL 09/10] vmcoreinfo: put it in the 'misc' device category, Michael S. Tsirkin, 2017/11/15
- [Qemu-devel] [PULL 10/10] build-sys: restrict vmcoreinfo to fw_cfg+dma capable targets, Michael S. Tsirkin, 2017/11/15
- Re: [Qemu-devel] [PULL 00/10] pc, pci, virtio: fixes for rc1, Peter Maydell, 2017/11/16