Re: [PATCH] arm64/efi: Make strrchr() available to the EFI namespace
From: Ard Biesheuvel
Date: Thu Mar 01 2018 - 12:10:44 EST
On 1 March 2018 at 17:08, Will Deacon <will.deacon@xxxxxxx> wrote:
> On Thu, Mar 01, 2018 at 10:28:03AM -0600, Rob Herring wrote:
>> libfdt gained a new dependency on strrchr, so make it available to the
>> EFI namespace before we update libfdt.
>>
>> Thanks to Ard for providing this fix.
>>
>> Cc: Catalin Marinas <catalin.marinas@xxxxxxx>
>> Cc: Will Deacon <will.deacon@xxxxxxx>
>> Acked-by: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>
>> Signed-off-by: Rob Herring <robh@xxxxxxxxxx>
>> ---
>> Please ack. This is a dependency on a dtc upstream sync.
>
> Acked-by: Will Deacon <will.deacon@xxxxxxx>
>
> As an aside, I noticed that this __efistub prefixing is also being
> applied to mapping symbols, so we get crazy stuff like __efistub_$x. I
> didn't get round to working out whether that's going to be problematic,
> but maybe it's all fine...
>
Ugh. Those mapping symbols.
We can filter them explicitly in scripts/kallsyms, I guess, or even
better, get rid of all __efistub_ symbols entirely (since they are
either aliases or part of __init code)
>>
>> arch/arm64/kernel/image.h | 1 +
>> arch/arm64/lib/strrchr.S | 2 +-
>> 2 files changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/arch/arm64/kernel/image.h b/arch/arm64/kernel/image.h
>> index c7fcb232fe47..a820ed07fb80 100644
>> --- a/arch/arm64/kernel/image.h
>> +++ b/arch/arm64/kernel/image.h
>> @@ -103,6 +103,7 @@ __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_strrchr = KALLSYMS_HIDE(__pi_strrchr);
>> __efistub___flush_dcache_area = KALLSYMS_HIDE(__pi___flush_dcache_area);
>>
>> #ifdef CONFIG_KASAN
>> diff --git a/arch/arm64/lib/strrchr.S b/arch/arm64/lib/strrchr.S
>> index 61eabd9a289a..f8e2784d5752 100644
>> --- a/arch/arm64/lib/strrchr.S
>> +++ b/arch/arm64/lib/strrchr.S
>> @@ -40,4 +40,4 @@ ENTRY(strrchr)
>> b 1b
>> 2: mov x0, x3
>> ret
>> -ENDPROC(strrchr)
>> +ENDPIPROC(strrchr)
>> --
>> 2.14.1
>>