diff options
author | AKASHI Takahiro <takahiro.akashi@linaro.org> | 2018-04-06 11:45:28 +0900 |
---|---|---|
committer | Simon Horman <horms@verge.net.au> | 2018-04-10 11:12:12 +0200 |
commit | 5c08af7a068d6d3abadbd8d8c41f78744daf258c (patch) | |
tree | f33ab5f09def336d85655968e1af7b4d77dda3ab /include | |
parent | b2b05352ae5e9b027fa9b166f47e97ae8fdf7db6 (diff) |
arm64: fix an issue with kaslr-enabled vmlinux
Normally vmlinux for arm64 is of ET_EXEC type, while if built with
CONFIG_RANDAMIZE_BASE (that is KASLR), it will be of ET_DYN type.
Meanwhile, physical address field of segments in vmlinux has actually
the same value as virtual address field.
Accordingly, in this case, it totally makes no sense to check for
validity of segments against physical memory ranges and, if necessary,
relocate them in elf_exec_load() on arm64.
This patch allows to unconditionally skip the check on arm64.
Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Signed-off-by: Simon Horman <horms@verge.net.au>
Diffstat (limited to 'include')
-rw-r--r-- | include/elf.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/include/elf.h b/include/elf.h index 5db637b..b7677a2 100644 --- a/include/elf.h +++ b/include/elf.h @@ -258,7 +258,8 @@ typedef struct #define EM_OPENRISC 92 /* OpenRISC 32-bit embedded processor */ #define EM_ARC_A5 93 /* ARC Cores Tangent-A5 */ #define EM_XTENSA 94 /* Tensilica Xtensa Architecture */ -#define EM_NUM 95 +#define EM_AARCH64 183 /* ARM AARCH64 */ +#define EM_NUM 184 /* If it is necessary to assign new unofficial EM_* values, please pick large random numbers (0x8523, 0xa7f2, etc.) to minimize the |