Re: [PATCH] MIPS: fw: arc: add __weak to prom_meminit and prom_free_prom_memory

From: Masahiro Yamada
Date: Sun Apr 05 2020 - 21:45:50 EST


On Mon, Apr 6, 2020 at 2:16 AM Maciej W. Rozycki <macro@xxxxxxxxxxxxxx> wrote:
>
> On Mon, 6 Apr 2020, Masahiro Yamada wrote:
>
> > As far as I understood, prom_meminit() in arch/mips/fw/arc/memory.c
> > is overridden by the one in arch/mips/sgi-ip32/ip32-memory.c if
> > CONFIG_SGI_IP32 is enabled.
> >
> > The use of EXPORT_SYMBOL in static libraries potentially causes a
> > problem for the llvm linker [1]. So, I want to forcibly link lib-y
> > objects to vmlinux when CONFIG_MODULES=y.
>
> It looks to me like a bug in the linker in the handling of the EXTERN
> command. Why not fix the linker instead?
>
> Maciej


I am not sure if this is a bug.
Anyway, they decided to not change ld.lld


MIPS code is so confusing.
There are multiple definitions,
and lib.a is (ab)used to hide them.

I fixed another one for MIPS before, and
0-day bot reported this recently.


There are lots of prom_meminit() definitions
in arch/mips/.

Making the intention clearer is a good thing, IMHO.


--
Best Regards
Masahiro Yamada