[PATCH] scripts/kallsyms: filter arm64's __efistub_ symbols

Will Deacon will.deacon at arm.com
Mon Mar 5 04:43:27 PST 2018


On Thu, Mar 01, 2018 at 05:19:01PM +0000, Ard Biesheuvel wrote:
> 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 at linaro.org>
> ---
>  scripts/kallsyms.c | 1 +
>  1 file changed, 1 insertion(+)

Thanks, I'll take this via arm64.

Will

> 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[] = {
> -- 
> 2.11.0
> 



More information about the linux-arm-kernel mailing list