summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorArd Biesheuvel <ard.biesheuvel@linaro.org>2018-03-01 17:19:01 +0000
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2019-01-13 10:01:06 +0100
commit28493b4147ea3f982e9cff269dc068ac0a98be74 (patch)
tree766ac0ad9479ce5203f8cebe04e3a6b8ad1b06d5 /scripts
parent01b79d20008d26d9e908551bd32f01ed0cbf6f53 (diff)
scripts/kallsyms: filter arm64's __efistub_ symbols
commit 1212f7a16af492d59304ba3abccbcc5b5e41423e upstream. On arm64, the EFI stub and the kernel proper are essentially the same binary, although the EFI stub executes at a different virtual address as the kernel. For this reason, the EFI stub is restricted in the symbols it can link to, which is ensured by prefixing all EFI stub symbols with __efistub_ (and emitting __efistub_ prefixed aliases for routines that may be shared between the core kernel and the stub) These symbols are leaking into kallsyms, polluting the namespace, so let's filter them explicitly. Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Signed-off-by: Will Deacon <will.deacon@arm.com> Cc: Nick Desaulniers <ndesaulniers@google.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'scripts')
-rw-r--r--scripts/kallsyms.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/scripts/kallsyms.c b/scripts/kallsyms.c
index 9ee9bf7fd1a2..1dd24c5b9b47 100644
--- a/scripts/kallsyms.c
+++ b/scripts/kallsyms.c
@@ -221,6 +221,7 @@ static int symbol_valid(struct sym_entry *s)
static char *special_prefixes[] = {
"__crc_", /* modversions */
+ "__efistub_", /* arm64 EFI stub namespace */
NULL };
static char *special_suffixes[] = {