There's no reason to pack structures where we don't care about size or padding, this applies to AcpiStdTable in tests/acpi-utils.h.
OTOH bios-tables-test happens to be passing the address of a field in this struct to a function that expects a pointer to normally aligned data which results in a SIGBUS on architectures like SPARC that have strict alignment requirements. Fixes: 9e8458c02 ("acpi unit-test: compare DSDT and SSDT tables against expected values") Reported-by: Peter Maydell <peter.mayd...@linaro.org> Signed-off-by: Michael S. Tsirkin <m...@redhat.com> Tested-by: Peter Maydell <peter.mayd...@linaro.org> --- tests/acpi-utils.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/acpi-utils.h b/tests/acpi-utils.h index 9f9a2d5..348e4d7 100644 --- a/tests/acpi-utils.h +++ b/tests/acpi-utils.h @@ -26,7 +26,7 @@ typedef struct { gsize asl_len; gchar *asl_file; bool tmp_files_retain; /* do not delete the temp asl/aml */ -} QEMU_PACKED AcpiSdtTable; +} AcpiSdtTable; #define ACPI_READ_FIELD(field, addr) \ do { \ -- MST