[PATCH v2] arm64/efi: Make strnlen() available to the EFI namespace

Ard Biesheuvel ard.biesheuvel at linaro.org
Tue Feb 16 02:20:13 PST 2016


On 16 February 2016 at 11:16, Thierry Reding <thierry.reding at gmail.com> wrote:
> From: Thierry Reding <treding at nvidia.com>
>
> Changes introduced in the upstream version of libfdt pulled in by commit
> 91feabc2e224 ("scripts/dtc: Update to upstream commit b06e55c88b9b") use
> the strnlen() function, which isn't currently available to the EFI name-
> space. Add it to the EFI namespace to avoid a linker error.
>
> Cc: Ard Biesheuvel <ard.biesheuvel at linaro.org>
> Cc: Catalin Marinas <catalin.marinas at arm.com>
> Cc: Will Deacon <will.deacon at arm.com>
> Cc: Rob Herring <robh at kernel.org>
> Signed-off-by: Thierry Reding <treding at nvidia.com>

Reviewed-by: Ard Biesheuvel <ard.biesheuvel at linaro.org>

> ---
> Changes in v2:
> - mark strnlen() position independent and refer to __pi_strnlen
>
>  arch/arm64/kernel/image.h | 1 +
>  arch/arm64/lib/strnlen.S  | 2 +-
>  2 files changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/arch/arm64/kernel/image.h b/arch/arm64/kernel/image.h
> index 999633bd7294..352f7abd91c9 100644
> --- a/arch/arm64/kernel/image.h
> +++ b/arch/arm64/kernel/image.h
> @@ -89,6 +89,7 @@ __efistub_memcpy              = KALLSYMS_HIDE(__pi_memcpy);
>  __efistub_memmove              = KALLSYMS_HIDE(__pi_memmove);
>  __efistub_memset               = KALLSYMS_HIDE(__pi_memset);
>  __efistub_strlen               = KALLSYMS_HIDE(__pi_strlen);
> +__efistub_strnlen              = KALLSYMS_HIDE(__pi_strnlen);
>  __efistub_strcmp               = KALLSYMS_HIDE(__pi_strcmp);
>  __efistub_strncmp              = KALLSYMS_HIDE(__pi_strncmp);
>  __efistub___flush_dcache_area  = KALLSYMS_HIDE(__pi___flush_dcache_area);
> diff --git a/arch/arm64/lib/strnlen.S b/arch/arm64/lib/strnlen.S
> index 2ca665711bf2..eae38da6e0bb 100644
> --- a/arch/arm64/lib/strnlen.S
> +++ b/arch/arm64/lib/strnlen.S
> @@ -168,4 +168,4 @@ CPU_LE( lsr tmp2, tmp2, tmp4 )      /* Shift (tmp1 & 63).  */
>  .Lhit_limit:
>         mov     len, limit
>         ret
> -ENDPROC(strnlen)
> +ENDPIPROC(strnlen)
> --
> 2.7.1
>



More information about the linux-arm-kernel mailing list