LoongArch: Align ACPI structures if ARCH_STRICT_ALIGN enabled

ARCH_STRICT_ALIGN is used for hardware without UAL, now it only control
the -mstrict-align flag. However, ACPI structures are packed by default
so will cause unaligned accesses.

To avoid this, define ACPI_MISALIGNMENT_NOT_SUPPORTED in asm/acenv.h to
align ACPI structures if ARCH_STRICT_ALIGN enabled.

Cc: stable@vger.kernel.org
Reported-by: Binbin Zhou <zhoubinbin@loongson.cn>
Suggested-by: Xi Ruoyao <xry111@xry111.site>
Suggested-by: Jiaxun Yang <jiaxun.yang@flygoat.com>
Signed-off-by: Huacai Chen <chenhuacai@loongson.cn>
This commit is contained in:
Huacai Chen 2025-09-18 19:44:01 +08:00
parent f5003098e2
commit a9d13433fe

View File

@ -10,9 +10,8 @@
#ifndef _ASM_LOONGARCH_ACENV_H #ifndef _ASM_LOONGARCH_ACENV_H
#define _ASM_LOONGARCH_ACENV_H #define _ASM_LOONGARCH_ACENV_H
/* #ifdef CONFIG_ARCH_STRICT_ALIGN
* This header is required by ACPI core, but we have nothing to fill in #define ACPI_MISALIGNMENT_NOT_SUPPORTED
* right now. Will be updated later when needed. #endif /* CONFIG_ARCH_STRICT_ALIGN */
*/
#endif /* _ASM_LOONGARCH_ACENV_H */ #endif /* _ASM_LOONGARCH_ACENV_H */