Build test on 32-bit failed because of forcing the bigger alignment on
the flexible array.

Removing the alignment in turn broke the CI tests for 64-bit, so
let's go back to using a packed struct, but have the alignment follow
the size of the pointer.

Fixes: 4fa3b9d2b64b ("acpi: fix compilation for 32-bit")
Signed-off-by: Ahmad Fatoum <[email protected]>
---
v2 -> v3:
  - make commit apply on top of v1, which has already been applied.
v1 -> v2:
  - fix CI x86_64 breakage, by keeping the packed/aligned specifiction
    as is, but changing it to 32-bit on 32-bit systems.
---
 include/acpi.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/include/acpi.h b/include/acpi.h
index 837476424664..fc0da30610a6 100644
--- a/include/acpi.h
+++ b/include/acpi.h
@@ -113,9 +113,9 @@ struct __packed acpi_sdt { /* system description table 
header */
        u32             creator_revision;
 };
 
-struct acpi_rsdt { /* system description table header */
+struct __packed acpi_rsdt { /* system description table header */
        struct acpi_sdt sdt;
-       struct acpi_sdt *entries[];
+       struct acpi_sdt *__aligned(sizeof(void *)) entries[];
 };
 
 struct acpi_driver {
-- 
2.39.2


Reply via email to