* [Qemu-devel] [PATCH 1/2] acpi-test: signature endian-ness fixes
@ 2014-03-18 14:48 Michael S. Tsirkin
2014-03-18 14:48 ` [Qemu-devel] [PATCH 2/2] acpi: fix endian-ness for table ids Michael S. Tsirkin
2014-03-18 18:02 ` [Qemu-devel] [PATCH 1/2] acpi-test: signature endian-ness fixes Laszlo Ersek
0 siblings, 2 replies; 5+ messages in thread
From: Michael S. Tsirkin @ 2014-03-18 14:48 UTC (permalink / raw)
To: qemu-devel; +Cc: Marcel Apfelbaum
acpi table signature is really an ASCII string.
Treat it as such in tests.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
---
tests/acpi-test.c | 48 +++++++++++++++++++++++++++++++++---------------
1 file changed, 33 insertions(+), 15 deletions(-)
diff --git a/tests/acpi-test.c b/tests/acpi-test.c
index 185309a..249fe03 100644
--- a/tests/acpi-test.c
+++ b/tests/acpi-test.c
@@ -23,7 +23,6 @@
#define MACHINE_Q35 "q35"
#define ACPI_REBUILD_EXPECTED_AML "TEST_ACPI_REBUILD_AML"
-#define ACPI_SSDT_SIGNATURE 0x54445353 /* SSDT */
/* DSDT and SSDTs format */
typedef struct {
@@ -101,6 +100,20 @@ typedef struct {
ACPI_READ_FIELD((table)->asl_compiler_revision, addr); \
} while (0);
+#define ACPI_ASSERT_CMP(actual, expected) do { \
+ uint32_t ACPI_ASSERT_CMP_le = cpu_to_le32(actual); \
+ char ACPI_ASSERT_CMP_str[5] = {}; \
+ memcpy(ACPI_ASSERT_CMP_str, &ACPI_ASSERT_CMP_le, 4); \
+ g_assert_cmpstr(ACPI_ASSERT_CMP_str, ==, expected); \
+} while (0)
+
+#define ACPI_ASSERT_CMP64(actual, expected) do { \
+ uint64_t ACPI_ASSERT_CMP_le = cpu_to_le64(actual); \
+ char ACPI_ASSERT_CMP_str[9] = {}; \
+ memcpy(ACPI_ASSERT_CMP_str, &ACPI_ASSERT_CMP_le, 8); \
+ g_assert_cmpstr(ACPI_ASSERT_CMP_str, ==, expected); \
+} while (0)
+
/* Boot sector code: write SIGNATURE into memory,
* then halt.
* Q35 machine requires a minimum 0x7e000 bytes disk.
@@ -213,7 +226,7 @@ static void test_acpi_rsdp_table(test_data *data)
uint32_t addr = data->rsdp_addr;
ACPI_READ_FIELD(rsdp_table->signature, addr);
- g_assert_cmphex(rsdp_table->signature, ==, ACPI_RSDP_SIGNATURE);
+ ACPI_ASSERT_CMP64(rsdp_table->signature, "RSD PTR ");
ACPI_READ_FIELD(rsdp_table->checksum, addr);
ACPI_READ_ARRAY(rsdp_table->oem_id, addr);
@@ -235,7 +248,7 @@ static void test_acpi_rsdt_table(test_data *data)
/* read the header */
ACPI_READ_TABLE_HEADER(rsdt_table, addr);
- g_assert_cmphex(rsdt_table->signature, ==, ACPI_RSDT_SIGNATURE);
+ ACPI_ASSERT_CMP(rsdt_table->signature, "RSDT");
/* compute the table entries in rsdt */
tables_nr = (rsdt_table->length - sizeof(AcpiRsdtDescriptorRev1)) /
@@ -304,7 +317,7 @@ static void test_acpi_fadt_table(test_data *data)
ACPI_READ_FIELD(fadt_table->reserved4b, addr);
ACPI_READ_FIELD(fadt_table->flags, addr);
- g_assert_cmphex(fadt_table->signature, ==, ACPI_FACP_SIGNATURE);
+ ACPI_ASSERT_CMP(fadt_table->signature, "FACP");
g_assert(!acpi_checksum((uint8_t *)fadt_table, fadt_table->length));
}
@@ -321,7 +334,7 @@ static void test_acpi_facs_table(test_data *data)
ACPI_READ_FIELD(facs_table->flags, addr);
ACPI_READ_ARRAY(facs_table->resverved3, addr);
- g_assert_cmphex(facs_table->signature, ==, ACPI_FACS_SIGNATURE);
+ ACPI_ASSERT_CMP(facs_table->signature, "FACS");
}
static void test_dst_table(AcpiSdtTable *sdt_table, uint32_t addr)
@@ -348,7 +361,7 @@ static void test_acpi_dsdt_table(test_data *data)
data->tables = g_array_new(false, true, sizeof(AcpiSdtTable));
test_dst_table(&dsdt_table, addr);
- g_assert_cmphex(dsdt_table.header.signature, ==, ACPI_DSDT_SIGNATURE);
+ ACPI_ASSERT_CMP(dsdt_table.header.signature, "DSDT");
/* Place DSDT first */
g_array_append_val(data->tables, dsdt_table);
@@ -383,8 +396,9 @@ static void dump_aml_files(test_data *data, bool rebuild)
g_assert(sdt->aml);
if (rebuild) {
+ uint32_t signature = cpu_to_le32(sdt->header.signature);
aml_file = g_strdup_printf("%s/%s/%.4s", data_dir, data->machine,
- (gchar *)&sdt->header.signature);
+ (gchar *)&signature);
fd = g_open(aml_file, O_WRONLY|O_TRUNC|O_CREAT,
S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH);
} else {
@@ -406,9 +420,9 @@ static void dump_aml_files(test_data *data, bool rebuild)
}
}
-static bool compare_signature(AcpiSdtTable *sdt, uint32_t signature)
+static bool compare_signature(AcpiSdtTable *sdt, const char *signature)
{
- return sdt->header.signature == signature;
+ return !memcmp(&sdt->header.signature, signature, 4);
}
static bool load_asl(GArray *sdts, AcpiSdtTable *sdt)
@@ -427,12 +441,12 @@ static bool load_asl(GArray *sdts, AcpiSdtTable *sdt)
/* build command line */
g_string_append_printf(command_line, " -p %s ", sdt->asl_file);
- if (compare_signature(sdt, ACPI_DSDT_SIGNATURE) ||
- compare_signature(sdt, ACPI_SSDT_SIGNATURE)) {
+ if (compare_signature(sdt, "DSDT") ||
+ compare_signature(sdt, "SSDT")) {
for (i = 0; i < sdts->len; ++i) {
temp = &g_array_index(sdts, AcpiSdtTable, i);
- if (compare_signature(temp, ACPI_DSDT_SIGNATURE) ||
- compare_signature(temp, ACPI_SSDT_SIGNATURE)) {
+ if (compare_signature(temp, "DSDT") ||
+ compare_signature(temp, "SSDT")) {
g_string_append_printf(command_line, "-e %s ", temp->aml_file);
}
}
@@ -495,13 +509,16 @@ static GArray *load_expected_aml(test_data *data)
GArray *exp_tables = g_array_new(false, true, sizeof(AcpiSdtTable));
for (i = 0; i < data->tables->len; ++i) {
AcpiSdtTable exp_sdt;
+ uint32_t signature;
+
sdt = &g_array_index(data->tables, AcpiSdtTable, i);
memset(&exp_sdt, 0, sizeof(exp_sdt));
exp_sdt.header.signature = sdt->header.signature;
+ signature = cpu_to_le32(sdt->header.signature);
aml_file = g_strdup_printf("%s/%s/%.4s", data_dir, data->machine,
- (gchar *)&exp_sdt.header.signature);
+ (gchar *)&signature);
exp_sdt.aml_file = aml_file;
g_assert(g_file_test(aml_file, G_FILE_TEST_EXISTS));
ret = g_file_get_contents(aml_file, &exp_sdt.aml,
@@ -543,12 +560,13 @@ static void test_acpi_asl(test_data *data)
g_assert(!err || exp_err);
if (g_strcmp0(asl->str, exp_asl->str)) {
+ 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 *)&exp_sdt->header.signature,
+ (gchar *)&signature,
sdt->asl_file, sdt->aml_file,
exp_sdt->asl_file, exp_sdt->aml_file);
}
--
MST
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [Qemu-devel] [PATCH 2/2] acpi: fix endian-ness for table ids
2014-03-18 14:48 [Qemu-devel] [PATCH 1/2] acpi-test: signature endian-ness fixes Michael S. Tsirkin
@ 2014-03-18 14:48 ` Michael S. Tsirkin
2014-03-18 18:07 ` Laszlo Ersek
2014-03-18 18:02 ` [Qemu-devel] [PATCH 1/2] acpi-test: signature endian-ness fixes Laszlo Ersek
1 sibling, 1 reply; 5+ messages in thread
From: Michael S. Tsirkin @ 2014-03-18 14:48 UTC (permalink / raw)
To: qemu-devel; +Cc: Anthony Liguori, Marcel Apfelbaum
when using signature for table ID, we forgot to byte-swap it.
signatures are really ASCII strings, let's treat them as such.
While at it, get rid of most of _SIGNATURE macros.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
---
hw/i386/acpi-defs.h | 14 --------------
hw/i386/acpi-build.c | 31 ++++++++++++++++---------------
2 files changed, 16 insertions(+), 29 deletions(-)
diff --git a/hw/i386/acpi-defs.h b/hw/i386/acpi-defs.h
index 78ca204..e93babb 100644
--- a/hw/i386/acpi-defs.h
+++ b/hw/i386/acpi-defs.h
@@ -52,8 +52,6 @@ struct Acpi20GenericAddress {
} QEMU_PACKED;
typedef struct Acpi20GenericAddress Acpi20GenericAddress;
-#define ACPI_RSDP_SIGNATURE 0x2052545020445352LL // "RSD PTR "
-
struct AcpiRsdpDescriptor { /* Root System Descriptor Pointer */
uint64_t signature; /* ACPI signature, contains "RSD PTR " */
uint8_t checksum; /* To make sum of struct == 0 */
@@ -92,7 +90,6 @@ typedef struct AcpiTableHeader AcpiTableHeader;
/*
* ACPI 1.0 Fixed ACPI Description Table (FADT)
*/
-#define ACPI_FACP_SIGNATURE 0x50434146 // FACP
struct AcpiFadtDescriptorRev1
{
ACPI_TABLE_HEADER_DEF /* ACPI common table header */
@@ -141,7 +138,6 @@ typedef struct AcpiFadtDescriptorRev1 AcpiFadtDescriptorRev1;
/*
* ACPI 1.0 Root System Description Table (RSDT)
*/
-#define ACPI_RSDT_SIGNATURE 0x54445352 // RSDT
struct AcpiRsdtDescriptorRev1
{
ACPI_TABLE_HEADER_DEF /* ACPI common table header */
@@ -153,7 +149,6 @@ typedef struct AcpiRsdtDescriptorRev1 AcpiRsdtDescriptorRev1;
/*
* ACPI 1.0 Firmware ACPI Control Structure (FACS)
*/
-#define ACPI_FACS_SIGNATURE 0x53434146 // FACS
struct AcpiFacsDescriptorRev1
{
uint32_t signature; /* ACPI Signature */
@@ -169,7 +164,6 @@ typedef struct AcpiFacsDescriptorRev1 AcpiFacsDescriptorRev1;
/*
* Differentiated System Description Table (DSDT)
*/
-#define ACPI_DSDT_SIGNATURE 0x54445344 // DSDT
/*
* MADT values and structures
@@ -182,7 +176,6 @@ typedef struct AcpiFacsDescriptorRev1 AcpiFacsDescriptorRev1;
/* Master MADT */
-#define ACPI_APIC_SIGNATURE 0x43495041 // APIC
struct AcpiMultipleApicTable
{
ACPI_TABLE_HEADER_DEF /* ACPI common table header */
@@ -253,7 +246,6 @@ typedef struct AcpiMadtLocalNmi AcpiMadtLocalNmi;
/*
* HPET Description Table
*/
-#define ACPI_HPET_SIGNATURE 0x54455048 // HPET
struct Acpi20Hpet {
ACPI_TABLE_HEADER_DEF /* ACPI common table header */
uint32_t timer_block_id;
@@ -268,7 +260,6 @@ typedef struct Acpi20Hpet Acpi20Hpet;
* SRAT (NUMA topology description) table
*/
-#define ACPI_SRAT_SIGNATURE 0x54415253 // SRAT
struct AcpiSystemResourceAffinityTable
{
ACPI_TABLE_HEADER_DEF
@@ -316,11 +307,6 @@ struct AcpiMcfgAllocation {
} QEMU_PACKED;
typedef struct AcpiMcfgAllocation AcpiMcfgAllocation;
-#define ACPI_MCFG_SIGNATURE 0x4746434d // MCFG
-
-/* Reserved signature: ignored by OSPM */
-#define ACPI_RSRV_SIGNATURE 0x554d4551 // QEMU
-
struct AcpiTableMcfg {
ACPI_TABLE_HEADER_DEF;
uint8_t reserved[8];
diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c
index 1dcfb25..f1054dd 100644
--- a/hw/i386/acpi-build.c
+++ b/hw/i386/acpi-build.c
@@ -226,14 +226,14 @@ static void acpi_get_pci_info(PcPciInfo *info)
static void
build_header(GArray *linker, GArray *table_data,
- AcpiTableHeader *h, uint32_t sig, int len, uint8_t rev)
+ AcpiTableHeader *h, const char *sig, int len, uint8_t rev)
{
- h->signature = cpu_to_le32(sig);
+ memcpy(&h->signature, sig, 4);
h->length = cpu_to_le32(len);
h->revision = rev;
memcpy(h->oem_id, ACPI_BUILD_APPNAME6, 6);
memcpy(h->oem_table_id, ACPI_BUILD_APPNAME4, 4);
- memcpy(h->oem_table_id + 4, (void *)&sig, 4);
+ memcpy(h->oem_table_id + 4, sig, 4);
h->oem_revision = cpu_to_le32(1);
memcpy(h->asl_compiler_id, ACPI_BUILD_APPNAME4, 4);
h->asl_compiler_revision = cpu_to_le32(1);
@@ -495,7 +495,7 @@ static void
build_facs(GArray *table_data, GArray *linker, PcGuestInfo *guest_info)
{
AcpiFacsDescriptorRev1 *facs = acpi_data_push(table_data, sizeof *facs);
- facs->signature = cpu_to_le32(ACPI_FACS_SIGNATURE);
+ memcpy(&facs->signature, "FACS", 4);
facs->length = cpu_to_le32(sizeof(*facs));
}
@@ -552,7 +552,7 @@ build_fadt(GArray *table_data, GArray *linker, AcpiPmInfo *pm,
fadt_setup(fadt, pm);
build_header(linker, table_data,
- (void *)fadt, ACPI_FACP_SIGNATURE, sizeof(*fadt), 1);
+ (void *)fadt, "FACP", sizeof(*fadt), 1);
}
static void
@@ -621,7 +621,7 @@ build_madt(GArray *table_data, GArray *linker, AcpiCpuInfo *cpu,
local_nmi->lint = 1; /* ACPI_LINT1 */
build_header(linker, table_data,
- (void *)(table_data->data + madt_start), ACPI_APIC_SIGNATURE,
+ (void *)(table_data->data + madt_start), "APIC",
table_data->len - madt_start, 1);
}
@@ -1098,7 +1098,7 @@ build_ssdt(GArray *table_data, GArray *linker,
build_header(linker, table_data,
(void *)(table_data->data + ssdt_start),
- ACPI_SSDT_SIGNATURE, table_data->len - ssdt_start, 1);
+ "SSDT", table_data->len - ssdt_start, 1);
}
static void
@@ -1113,7 +1113,7 @@ build_hpet(GArray *table_data, GArray *linker)
hpet->timer_block_id = cpu_to_le32(0x8086a201);
hpet->addr.address = cpu_to_le64(HPET_BASE);
build_header(linker, table_data,
- (void *)hpet, ACPI_HPET_SIGNATURE, sizeof(*hpet), 1);
+ (void *)hpet, "HPET", sizeof(*hpet), 1);
}
static void
@@ -1205,7 +1205,7 @@ build_srat(GArray *table_data, GArray *linker,
build_header(linker, table_data,
(void *)(table_data->data + srat_start),
- ACPI_SRAT_SIGNATURE,
+ "SRAT",
table_data->len - srat_start, 1);
}
@@ -1213,7 +1213,7 @@ static void
build_mcfg_q35(GArray *table_data, GArray *linker, AcpiMcfgInfo *info)
{
AcpiTableMcfg *mcfg;
- uint32_t sig;
+ const char *sig;
int len = sizeof(*mcfg) + 1 * sizeof(mcfg->allocation[0]);
mcfg = acpi_data_push(table_data, len);
@@ -1230,9 +1230,10 @@ build_mcfg_q35(GArray *table_data, GArray *linker, AcpiMcfgInfo *info)
* ACPI spec requires OSPMs to ignore such tables.
*/
if (info->mcfg_base == PCIE_BASE_ADDR_UNMAPPED) {
- sig = ACPI_RSRV_SIGNATURE;
+ /* Reserved signature: ignored by OSPM */
+ sig = "QEMU";
} else {
- sig = ACPI_MCFG_SIGNATURE;
+ sig = "MCFG";
}
build_header(linker, table_data, (void *)mcfg, sig, len, 1);
}
@@ -1248,7 +1249,7 @@ build_dsdt(GArray *table_data, GArray *linker, AcpiMiscInfo *misc)
memcpy(dsdt, misc->dsdt_code, misc->dsdt_size);
memset(dsdt, 0, sizeof *dsdt);
- build_header(linker, table_data, dsdt, ACPI_DSDT_SIGNATURE,
+ build_header(linker, table_data, dsdt, "DSDT",
misc->dsdt_size, 1);
}
@@ -1273,7 +1274,7 @@ build_rsdt(GArray *table_data, GArray *linker, GArray *table_offsets)
sizeof(uint32_t));
}
build_header(linker, table_data,
- (void *)rsdt, ACPI_RSDT_SIGNATURE, rsdt_len, 1);
+ (void *)rsdt, "RSDT", rsdt_len, 1);
}
static GArray *
@@ -1284,7 +1285,7 @@ build_rsdp(GArray *rsdp_table, GArray *linker, unsigned rsdt)
bios_linker_loader_alloc(linker, ACPI_BUILD_RSDP_FILE, 1,
true /* fseg memory */);
- rsdp->signature = cpu_to_le64(ACPI_RSDP_SIGNATURE);
+ memcpy(&rsdp->signature, "RSD PTR ", 8);
memcpy(rsdp->oem_id, ACPI_BUILD_APPNAME6, 6);
rsdp->rsdt_physical_address = cpu_to_le32(rsdt);
/* Address to be filled by Guest linker */
--
MST
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [Qemu-devel] [PATCH 1/2] acpi-test: signature endian-ness fixes
2014-03-18 14:48 [Qemu-devel] [PATCH 1/2] acpi-test: signature endian-ness fixes Michael S. Tsirkin
2014-03-18 14:48 ` [Qemu-devel] [PATCH 2/2] acpi: fix endian-ness for table ids Michael S. Tsirkin
@ 2014-03-18 18:02 ` Laszlo Ersek
1 sibling, 0 replies; 5+ messages in thread
From: Laszlo Ersek @ 2014-03-18 18:02 UTC (permalink / raw)
To: Michael S. Tsirkin, qemu-devel; +Cc: Marcel Apfelbaum
On 03/18/14 15:48, Michael S. Tsirkin wrote:
> acpi table signature is really an ASCII string.
> Treat it as such in tests.
>
> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
> ---
> tests/acpi-test.c | 48 +++++++++++++++++++++++++++++++++---------------
> 1 file changed, 33 insertions(+), 15 deletions(-)
>
> diff --git a/tests/acpi-test.c b/tests/acpi-test.c
> index 185309a..249fe03 100644
> --- a/tests/acpi-test.c
> +++ b/tests/acpi-test.c
> @@ -23,7 +23,6 @@
> #define MACHINE_Q35 "q35"
>
> #define ACPI_REBUILD_EXPECTED_AML "TEST_ACPI_REBUILD_AML"
> -#define ACPI_SSDT_SIGNATURE 0x54445353 /* SSDT */
>
> /* DSDT and SSDTs format */
> typedef struct {
> @@ -101,6 +100,20 @@ typedef struct {
> ACPI_READ_FIELD((table)->asl_compiler_revision, addr); \
> } while (0);
>
> +#define ACPI_ASSERT_CMP(actual, expected) do { \
> + uint32_t ACPI_ASSERT_CMP_le = cpu_to_le32(actual); \
> + char ACPI_ASSERT_CMP_str[5] = {}; \
> + memcpy(ACPI_ASSERT_CMP_str, &ACPI_ASSERT_CMP_le, 4); \
> + g_assert_cmpstr(ACPI_ASSERT_CMP_str, ==, expected); \
> +} while (0)
> +
> +#define ACPI_ASSERT_CMP64(actual, expected) do { \
> + uint64_t ACPI_ASSERT_CMP_le = cpu_to_le64(actual); \
> + char ACPI_ASSERT_CMP_str[9] = {}; \
> + memcpy(ACPI_ASSERT_CMP_str, &ACPI_ASSERT_CMP_le, 8); \
> + g_assert_cmpstr(ACPI_ASSERT_CMP_str, ==, expected); \
> +} while (0)
> +
The {} initializers are GNUisms, { 0 } is the standard way to write them.
(For strings where you specify the size explicitly, = "" would work too
(in C99 explicitly, in C89 a bit more navel gazing would be required to
derive that).)
The patch seems reasonable to me.
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Qemu-devel] [PATCH 2/2] acpi: fix endian-ness for table ids
2014-03-18 14:48 ` [Qemu-devel] [PATCH 2/2] acpi: fix endian-ness for table ids Michael S. Tsirkin
@ 2014-03-18 18:07 ` Laszlo Ersek
2014-03-19 13:49 ` Marcel Apfelbaum
0 siblings, 1 reply; 5+ messages in thread
From: Laszlo Ersek @ 2014-03-18 18:07 UTC (permalink / raw)
To: Michael S. Tsirkin, qemu-devel; +Cc: Anthony Liguori, Marcel Apfelbaum
On 03/18/14 15:48, Michael S. Tsirkin wrote:
> when using signature for table ID, we forgot to byte-swap it.
> signatures are really ASCII strings, let's treat them as such.
> While at it, get rid of most of _SIGNATURE macros.
>
> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
> ---
> hw/i386/acpi-defs.h | 14 --------------
> hw/i386/acpi-build.c | 31 ++++++++++++++++---------------
> 2 files changed, 16 insertions(+), 29 deletions(-)
Looks reasonable. Of course you'll probably want Marcel's R-b.
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Qemu-devel] [PATCH 2/2] acpi: fix endian-ness for table ids
2014-03-18 18:07 ` Laszlo Ersek
@ 2014-03-19 13:49 ` Marcel Apfelbaum
0 siblings, 0 replies; 5+ messages in thread
From: Marcel Apfelbaum @ 2014-03-19 13:49 UTC (permalink / raw)
To: Laszlo Ersek; +Cc: qemu-devel, Anthony Liguori, Michael S. Tsirkin
On Tue, 2014-03-18 at 19:07 +0100, Laszlo Ersek wrote:
> On 03/18/14 15:48, Michael S. Tsirkin wrote:
> > when using signature for table ID, we forgot to byte-swap it.
> > signatures are really ASCII strings, let's treat them as such.
> > While at it, get rid of most of _SIGNATURE macros.
> >
> > Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
> > ---
> > hw/i386/acpi-defs.h | 14 --------------
> > hw/i386/acpi-build.c | 31 ++++++++++++++++---------------
> > 2 files changed, 16 insertions(+), 29 deletions(-)
>
> Looks reasonable. Of course you'll probably want Marcel's R-b.
I agree with the changes, but sadly it does not resolve the problem for ppc64 hosts.
Reviewed-by: Marcel Apfelbaum <marcel.a@redhat.com>
>
> Reviewed-by: Laszlo Ersek <lersek@redhat.com>
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2014-03-19 13:49 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-03-18 14:48 [Qemu-devel] [PATCH 1/2] acpi-test: signature endian-ness fixes Michael S. Tsirkin
2014-03-18 14:48 ` [Qemu-devel] [PATCH 2/2] acpi: fix endian-ness for table ids Michael S. Tsirkin
2014-03-18 18:07 ` Laszlo Ersek
2014-03-19 13:49 ` Marcel Apfelbaum
2014-03-18 18:02 ` [Qemu-devel] [PATCH 1/2] acpi-test: signature endian-ness fixes Laszlo Ersek
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.