Commit 2a5e5d0c authored by Masahiro Yamada's avatar Masahiro Yamada

MIPS: fw: arc: add __weak to prom_meminit and prom_free_prom_memory

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.

As a groundwork, we must fix multiple definitions that have previously
been hidden by lib-y.

The prom_cleanup() in this file is already marked as __weak (because
it is overridden by the one in arch/mips/sgi-ip22/ip22-mc.c).
I think it should be OK to do the same for these two.

[1]: https://github.com/ClangBuiltLinux/linux/issues/515Reported-by: default avatarkbuild test robot <lkp@intel.com>
Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
Acked-By: default avatarThomas Bogendoerfer <tsbogend@alpha.franken.de>
parent c8bddf4f
...@@ -117,7 +117,7 @@ static int __init prom_memtype_classify(union linux_memtypes type) ...@@ -117,7 +117,7 @@ static int __init prom_memtype_classify(union linux_memtypes type)
return memtype_classify_arc(type); return memtype_classify_arc(type);
} }
void __init prom_meminit(void) void __weak __init prom_meminit(void)
{ {
struct linux_mdesc *p; struct linux_mdesc *p;
...@@ -162,7 +162,7 @@ void __weak __init prom_cleanup(void) ...@@ -162,7 +162,7 @@ void __weak __init prom_cleanup(void)
{ {
} }
void __init prom_free_prom_memory(void) void __weak __init prom_free_prom_memory(void)
{ {
int i; int i;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment