Aarch64 instructions must be word aligned. The current 16 byte alignment is more than enough. Relax it into 4 byte alignment.
Signed-off-by: Masahiro Yamada <yamada.masah...@socionext.com> --- I do not know why arm64 Linux requires 16 byte alignment. I dug git-history of arch/arm64/include/asm/linkage.h and the only commit I see is: commit aeed41a9371ee02257b608eb06a9058507a7d0f4 Author: Marc Zyngier <marc.zyng...@arm.com> Date: Fri Oct 19 17:33:27 2012 +0100 arm64: fix alignment padding in assembly code It just opt out of the asm-generic variant to remove 0x90. So, the amount of alignment might not be not optimized yet. Please correct me if I am missing something. arch/arm64/include/asm/linkage.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/arm64/include/asm/linkage.h b/arch/arm64/include/asm/linkage.h index 636c1bc..1b26629 100644 --- a/arch/arm64/include/asm/linkage.h +++ b/arch/arm64/include/asm/linkage.h @@ -1,7 +1,7 @@ #ifndef __ASM_LINKAGE_H #define __ASM_LINKAGE_H -#define __ALIGN .align 4 -#define __ALIGN_STR ".align 4" +#define __ALIGN .align 2 +#define __ALIGN_STR ".align 2" #endif -- 2.7.4